Как передать значение из php в html через js
Доброго времени суток.
Как можно передать сообщение об ошибке из обработчика php на страницу использую javascript. <div id="errors" class="error"></div> <form action="handler.php" target="rFrame" method="POST" enctype="multipart/form-data"> <input class="text" name="title" id="title"> Далее в handler.php вытаскиваю все необходимы значения и обрабатываю. К примеру, $title = $_POST['title']; if (empty($title)) { ... То необходимо вывести ошибку $('#errors').empty(), $('#errors').append('Please check <b>Title*</b> field'), } |
Или проще использовать ajax запрос и функцию success?
|
|
Если использовать ajax, то как "выбрать" всю необходимую информацию для загрузки файла из формы:
<input type="file" name="loadfile"> |
Mateus,
Для файлов имхо геморройно сделать aякс запрос кроссбраузерно поэтому проще отправлять форму и возвращать ошибку во фрейме, используя target в форме <form target="Имя фрейма" .... |
ну если запрос не аяксовы й. то данные передать можно в DOM
//можешь сделать для errorBlock display:hidden если нехочешь чтобы он отображался // так как $error это массив, то в него может засовывать множество ошибок а не только одну. // возможно будет удобно иметь массив ошибок в суперглобальной области видимости, дабы собирать ошибки отовсюду <? $errors=Array(); $title = $_POST['title']; if (empty($title)) {?> $errors[]="Совсем нехорошо, пользователя забыла указать тайтл. Это ошибка однако"; <?} ?> <!-- бла бла бла какойто html --!> <!-- в этом блоке отрендерим все накопленные ошибки(блок надо расположить в конце сгенерированной страницы) --> <div class="errorBloc"> <? foreach ($errors as $item){ echo "<div class='error' >".$item."</div>" ; } ?> </div> <script> //ну и тут мона чонибудь с инфой об ошибке сделать однако jQuery(function($){ $(".error").each(function(){ alert( $(this).html() ) ; }) }); </script> |
Часовой пояс GMT +3, время: 09:10. |