我遇到以下代码时出现问题:
# Connection:
require('config.php');
$MyConnection = new PDO('mysql:host=x;dbname=x', $dbusername, $dbpassword);
$MyConnection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
# Collecting:
$username = htmlspecialchars($_POST['username']);
$password = htmlspecialchars($_POST['password']);
$lastname = htmlspecialchars($_POST['lastname']);
$email = htmlspecialchars($_POST['email']);
# Checking:
$findUser = $MyConnection->prepare("SELECT * FROM Users WHERE
Username = :username OR Email = :email LIMIT 2");
$findUser->bindParam(':username', $username);
$findUser->bindParam(':email', $email);
$findUser->execute();
$foundUser = $findUser->fetch(PDO::FETCH_OBJ);
if($foundUser->Username == $username) {
echo '
<div id="pop-up" class="error">
This username is already in use. Please choose another one.
</div>
';
}
elseif ($foundUser->Email == $email) {
echo '
<div id="pop-up" class="error">
This email address is already in use. Please choose another one. <br />
If you think this is impossible, please
<a href="http://www.askmephilosophy.co.nf/contact.php">contact us</a>.
</div>
';
每当我尝试注册一个新帐户时,我都会收到一个由主机预设的错误页面。所以我得到了404错误。我非常肯定这个问题存在于
中$findUser = $MyConnection->prepare("SELECT * FROM Users WHERE Username = :username OR Email = :email LIMIT 2");
我在那段代码中做错了什么?
答案 0 :(得分:1)
404错误来自找不到文件。
如
<a href="http://www.askmephilosophy.co.nf/contact.php">contact us</a>.
档案http://www.askmephilosophy.co.nf/contact.php
不存在。
在你没有显示的代码的某些部分中必须存在一些其他文件(在elseif之后的else中?)。如果用户名和电子邮件都是免费的,可以调用。
由于http://www.askmephilosophy.co.nf
中的大多数链接都会导致404错误,因此您会为自己带来麻烦。
所有链接都应该是真实文件。在内容可用之前,这些 Stub 文件应该有一条消息,例如“正在建设中”和文件名等。