Как передать значение из 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, время: 20:38. |