2016-11-18 27 views
1

所以我使用登錄系統創建網站,但我的PHP不會將任何內容導入MySQL。爲什麼PHP不會寫入MySQL服務器?

這裏是我的代碼:

報名:

<?php require_once './template/header.php'; ?> 
<? 
    $reg = @$_POST['reg']; 

    //registration form 
    $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) { 
    // Check username 
    $u_check = mysql_query("SELECT username FROM users WHERE username='$un'"); 
    $check = mysql_num_rows($u_check); 
    // Check email 
    $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) { 
    // are rows filled in 
    if ($fn&&$ln&&$un&&$em&&$em2&&$pswd&&$pswd2) { 
    // passwords match? 
    if ($pswd==$pswd2) { 
    // how long are names 
    if (strlen($un)>25||strlen($fn)>25||strlen($ln)>25) { 
    echo "Your names are too long!"; 
    } 
    else 
    { 
    // check the maximum length of password does not exceed 25 characters and is not less than 5 characters 
    if (strlen($pswd)>16||strlen($pswd)<6) { 
    echo "Passwords must be between 6 and 16 characters!"; 
    } 
    else 
    { 
    //encrypt password 
    $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("<h2>Welcome to our community!</h2>Login to your account to begin your journy..."); 
    } 
    } 
    } 
    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!"; 
    } 
    } 
?> 
<div class="container" style="width:1000px; margin:0 auto; padding-top:25px;"> 
    <div id="home"> 
    <table> 
     <tr> 
     <td width="50%" valign="top"> 
      <h2>Welcome back! Login here!</h2> 
      <input type="text" name="email" size="25" placeholder="E-Mail Address" /><br /><br /> 
      <input type="password" name="pass" size="25" placeholder="Password" /><br /><br /> 
     </td> 
     <td width="50%" valign="top"> 
      <h2>Welcome! Register for free!</h2> 
      <form action="#" method="post"> 
       <input type="text" size="40" name="fname" class="auto-clear" title="First Name" placeholder="First Name" value="<? echo $fn; ?>"><p /> 
       <input type="text" size="40" name="lname" class="auto-clear" title="Last Name" placeholder="Last Name" value="<? echo $ln; ?>"><p /> 
       <input type="text" size="40" name="username" class="auto-clear" title="Username" placeholder="Username" value="<? echo $un; ?>"><p /> 
       <input type="text" size="40" name="email" class="auto-clear" title="Email" placeholder="Email Address" value="<? echo $em; ?>"><p /> 
       <input type="text" size="40" name="email2" class="auto-clear" title="Repeat Email" placeholder="Email Address" value="<? echo $em2; ?>"><p /> 
       <input type="password" size="40" name="password" value="Password ..."><p /> 
       <input type="password" size="40" name="password2" value="Password ..."><p /> 
       <input type="submit" name="reg" value="Sign Up!"> 
      </form> 
      <!-- <select name="gender"> 
       <option value="" disabled selected>Gender</option> 
       <option value="male">Male</option> 
       <option value="female">Female</option> 
      </select><br /><br /> --> 
     </td> 
     </tr> 
    </table> 
    </div> 
</div> 

<?php require_once './template/footer.php'; ?> 

連接:

<?php 
mysql_connect("localhost","root",""); 
mysql_select_db("HBN") or die("Couldn't connect to database!") 
?> 

謝謝你們提前!

+4

你可能想隱藏自己的登錄憑據。 – k97513

+0

另外,您可能想要開始使用密碼散列。 – k97513

+1

mysql插入調試101 - 'mysql_error()',即'$ query = mysql_query(「INSERT INTO users ...」)或die(mysql_error());' – Sean

回答

0

您需要告訴SQL將值添加到哪些表列。因此,而不是寫

"INSERT INTO users VALUES ('','$un','$fn','$ln','$em','$pswd','$d','0','Write something about yourself.','','','no')" 

你想寫

"INSERT INTO users (col1,col2,col3,col4,col5...) VALUES ('','$un','$fn','$ln','$em','$pswd','$d','0','Write something about yourself.','','','no')" 
+0

'INSERT INTO users(table VALUES(...)'無效的語法 – Sean

+0

我的網絡現在真的很慢,我不知道爲什麼,但是當我發佈它時它會變形,現在修好了 – k97513

+0

仍然不起作用。 .. – HoogleyBoogley

相關問題