-4
自從昨晚我就陷入了這個問題,所以最後我決定問你們這件事。PHP登錄頁面無法正常工作
我該怎麼做才能解決這個問題?有沒有錯誤?請幫忙;我是PHP新手。
<?php
$connection = mysql_connect($HOST,$USER,$PASS) Or Die ("Could not connect to the server");
mysql_select_db($DBNAME, $connection)Or Die ("Could not connect to the server");
error_reporting(0);
if ($_POST['Register']);{
if($_POST['Username'] && $_POST['Password']);
$username = mysql_real_escape_string($_POST['Username']);
$password = mysql_real_escape_string(hash("sha512",$_POST['Password']));
$name ='';
if($_POST['Name']){
$name = mysql_real_escape_string(strip_tags($_POST[name]));
}
$check = mysql_fetch_array(mysql_query("SELECT * FROM 'users' WHERE 'Username'='$username'"));
if ($check != '0'){
die("Uh Oh! That Username has already taken! Try <i>$username" . rand (1,50) . "</i> instead! <a href='register.php'>← Back </a>");
}
if (!ctype_alnum($username)){
die("Uh hum ! Your username conatins special characters unfortunately they are not permitted ! Only letters and numbers are allowed! <a href='register.php'>← Back </a>");
}
if (strlen($username) >20){
die("Username Cannot contain more than 20 characters <a href='register.php'>← Back </a>");
}
$salt = hash("sha512", rand() .rand(). rand());
mysql_query("INSERT INTO 'users' ('Username','Password','Name','Salt') VALUES('$username','$password','$name','$salt')");
set_cookie("c_user", hash("sha512",$username),time() + 24 * 60 * 60, "/");
set_cookie("c_salt", $salt, $time() + 24 * 60 * 60, "/");
die ("Congrts ! you are now ready to use Hack With Nick! You are now logged in !");
}
?>
<body style='font-family: sans-serif,verdana;'>
<div style='width: 80%; padding: 5px 15px 5px ; border: 1px solid #e3e3e3; background-color: #fff; color:000 ; margin-left:auto; margin-right:auto;'>
<h1>Register</h1>
<br />
<form action='' method='post' >
<table>
<tr>
<td>
<b>Username:</b>
</td>
<td>
<input type='text' name='username' style='padding: 4px;' />
</td>
</tr>
<tr>
<td>
<b>Password:</b>
</td>
<td>
<input type='password' name='password' style='padding:4px;' />
</td>
</tr>
<tr>
<td>
<b>Name:</b>
</td>
<td>
<input type='text' name='name' style='padding:4px;' />
</td>
</tr>
<tr>
<td>
<input type='submit' name='register' value='Register' />
<td>
</tr>
</table>
</form>
</div>
</body>
對你的代碼!什麼行導致錯誤?什麼是錯誤? – Cfreak
您可能會發現這對查找PHP錯誤非常有用:[PHP Lint Online](http://www.icosaedro.it/phplint/phplint-on-line.html) – showdev
只需開始:**不要禁用錯誤報告**調試時; **不要使用mysql_ *函數,使用PDO **;和**不依賴於被設置的索引:使用array_key_exists **(或'empty()')。最後,你的SQL代碼包含錯誤;例如它是'用戶',而不是'用戶'。 – LSerni