我創建了一個HTML表單,然後是一個表單,該表單應該將信息發送到mySQL數據庫。該信息不會顯示在數據庫中。我究竟做錯了什麼?PHP註冊表格不顯示數據庫中的用戶
這是我的HTML:
<form action="#" method="post">
<input type="text" name="fname" placeholder="First Name" class="sign-up-input" value="<?php echo $fn; ?>"><br>
<input type="text" name="lname" placeholder="Last Name" class="sign-up-input" value="<?php echo $ln; ?>"><br>
<input type="text" name="username" placeholder="Username" class="sign-up-input" value="<?php echo $un; ?>"><br>
<input type="text" name="email" placeholder="E-mail" class="sign-up-input" value="<?php echo $em; ?>"><br>
<input type="text" name="email2" placeholder="Repeat E-mail" class="sign-up-input" value="<?php echo $em2; ?>"><br>
<input type="password" name="password" placeholder="Password" class="sign-up-input"><br>
<input type="password" name="password2" placeholder="Repeat Password" class="sign-up-input"><br>
<input type="submit" name="reg" value="Sign Up">
</form>
這是我的PHP:
<?php include ("inc/scripts/mysql_connect.inc.php");
$reg = @$_POST['reg'];
//declaring variable to prevent errors
$fn = ""; //first name
$ln = ""; //last name
$un = ""; //username
$em = ""; //email
$em2 = ""; // email repeated
$pswd = ""; //password
$pswd2 = ""; //pasword repeated
$u_check = ""; //check username
$fn = strip_tags(@$_POST['fname']);
$ln = strip_tags(@$_POST['lname']);
$un = strip_tags(@$_POST['username']);
$em = strip_tags(@$_POST['email']);
$em2 = strip_tags(@$_POST['email2']);
$pswd = strip_tags(@$_POST['password']);
$pswd2 = strip_tags(@$_POST['password2']);
$d = date("Y-m-d"); //year month day
if ($reg) {
if ($em==$em2) {
$u_check = mysql_query("SELECT username FROM users WHERE username='$un'");
$check = mysql_num_rows($u_check);
$e_check = mysql_query("SELECT email FROM users WHERE email='$em'");
$email_check = mysql_num_rows($e_check);
if ($check == 0) {
if ($email_check == 0) {
if ($fn && $ln && $un && $em && $em2 && $pswd && $pswd2) {
if ($pswd == $pswd2) {
if (strlen($un)>25||strlen($fn)>25||strlen($ln)>25) {
echo "<br><br><br><br>The maximum limit for username/first name/last name is 25 characters!";
} else {
if (strlen($pswd)>30||strlen($pswd)<5) {
echo "<br><br><br><br>Your password must be between 5 and 30 characters long!";
} else {
$pswd = md5($pswd);
$pswd2 = md5($pswd2);
$query = mysql_query("INSERT INTO users VALUES ('','$un','$fn','$ln','$em','$pswd','$d','0','Write something about yourself.','','','no')");
die("Welcome to findFriends Login to your account to get started...");
}
}
} else {
echo "Your passwords don't match!";
}
} else {
echo "Please fill in all of the fields";
}
} else {
echo "Sorry, but it looks like someone has already used that email!";
}
} else {
echo "Username already taken ...";
}
} else {
echo "Your E-mails don't match!";
}
}
?>
這是我的MySQL連接代碼:
<?php
mysql_connect("localhost","root","", "socialnetwork") or die("no such user exists!");
mysql_select_db("socialnetwork") or die("no such database exists!");
echo "Connected to database";
?>
我的網站不顯示任何錯誤但數據庫不顯示任何用戶。我做錯了什麼?
*免責聲明 - 我在YouTube教程中發現此代碼。當他做到了這一點,它的工作。繼承人視頻:http://www.youtube.com/watch?v=cCr9TthDtxk
這裏的東西不是在YouTube視頻'回聲mysql_error();'。那傢伙做了很多錯事,這甚至不好笑。發佈您的數據庫錯誤,我們可以從那裏去。 – Machavity
這是迄今爲止我見過的最差的註冊表格。你爲什麼不使用anothere引用而不是這樣的錯誤教程 – RazorHead
我是PHP和mySQL的新手,所以我不能自己調試它。 :(我沒有收到任何錯誤,它只是沒有發送任何輸入到我的數據庫,我的數據庫顯示爲空白,它顯示成功頁面(歡迎查找朋友登錄到您的帳戶以開始...)但沒有出現在數據庫 – zsam