很难说出这里问的是什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或言辞激烈,无法以目前的形式合理回答。如需帮助澄清此问题以便重新打开,访问帮助中心 。
我正在构建一个注册页面,该页面使用 JQuery 的验证器插件来验证表单。对于用户名,我使用了remote 方法。这是我的 jquery+html 代码:fiddle
这是Available.php:
<?php
$usr = $_POST['username'];
$link = new PDO('mysql:host=***;dbname=***;charset=UTF-8','***','***');
$usr_check = $link->prepare("SELECT * FROM Conference WHERE Username = :usr");
$usr_check->bindParam(':usr', $usr);
$usr_check->execute();
if($usr_check->rowCount()>0)
echo false;
else
echo true;
?>
所以我的数据库中有一个测试帐户,用户名是:user。当我尝试使用相同的用户名提交表单时,它没有显示“用户名已被占用”的错误,这意味着 php 不正确。有什么想法我错在哪里吗?谢谢
Edit: Ran the website with chrome's inspector open. When the user name is entered it DOES try to get Available.php but it says "500 internal server error". Here's what it looks like:
好吧,在和你聊了一段时间之后,我们发现了以下几点:
1- $_POST 应该是 $_GET,因为您使用的是 jQuery.validate 的远程方法。
2-您的代码在 $link 而不是 $usr_check 上调用 bindParam() ,这在您的问题中是正确的。
另一件事,您的代码还需要打印出 true 和 false 的字符串。将它们用引号引起来。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)