0

我在“index.php”中有一个表单,我将使用“submit.php”验证一些文本字段,如果一切正常,它应该使用“submit.php”将字段插入我的数据库。现在,如果“submit.php”检测到错误,它应该回显我存储在“index.php”表单下的数组中的错误:

索引.php:

<form action="submit.php" method="POST">
<input type="text" name="email" />
<input type="text" name="url" />
<input type="submit" name="Submit" value="Continue"/>
</form>
<div class="errorsgohere"><?php //WHAT TO ADD HERE? ?></div>

提交.php:

if(isset($_POST['Submit'])) {
  //I validate everything... etc..
  if(!empty($errors)) {
     echo "<div class='errors'>";
     foreach($errors as $error) {
         echo $error;
     }
     echo "</div>";
    } else { SubmitDatabase(); //If there are no errors it will proceed }
}

如何在不刷新整个页面的情况下回显我在 INDEX.php 中的 $error BUT 中的内容,如果可能的话?提前致谢!

4

1 回答 1

0

您可以使用 AJAX 发送任何值,然后通过结果更新您的元素:

...在 HTML 上

<form id="formid" action="submit.php" method="POST">

...在 javascript 上

...
$("#formid").submit(function() {
    var r = $.ajax({url:"submit.php",type:"POST",async:false,data:$("#formid").serialize()}); 
    var result = JSON.parse( r.responseText );
    // result["error"] should have the 1 you set in PHP
    // now update your elements
});

...关于 PHP(最后)

...
// process your $_POST values you sent via AJAX and decide the result
...
echo json_encode( array("error"=>1, ...) );
于 2013-04-28T23:55:53.040 回答