2013-01-19 52 views
0

我已經創建了php,form和mysql數據庫。密碼使用表單寫入數據庫,但是用戶名沒有。我一直難倒這幾個小時(和可能是一個非常簡單的修復,有人能提供洞察力?謝謝!PHP到MYSQL,問題

<?php 

    echo "connected "; 
    //get form data 

    if(!isset($user)) { 
     $user = strtolower(mysql_real_escape_string($_POST['user'])); 
    } 

    if(!isset($user)) { 
     $pass = md5(mysql_real_escape_string($_POST['password'])); 
    } 

    //connect to MySQL 
    $connect = mysql_connect($dbhost, $dbuser, $dbpass) 
    or die ("connection error"); 
    echo "connected "; 

    //select databse 
    mysql_select_db($dbdb) or die ("database selection error"); 

    //insert data 
    $insert = mysql_query("INSERT INTO androidlogin (user, pass) VALUES   ('$user','$pass')"); 
    if($insert) { 
     $arr2 = array("user" => $user, "pass" => $pass); 
     echo json_encode($arr2); 
    } 

?> 

<html> 
    <head> 
    </head> 
    <body> 
    <title>PHP Register</title> 
     <form action="registerBBD.php" method="POST"> 
     User: <input type="text" name="user" id="user" /><br /> 
     Pass: <input type="text" name="pass" id="pass" /><br /> 
       <input type="submit" name="submit" value="submit" /> 
     </form> 
    </body> 
</html> 
+0

你得到的錯誤是什麼? – Ibu

+0

您是否可以確認$ user isset並在執行查詢時有值? – Neeko

+3

[**請不要在新代碼中使用'mysql_ *'函數**](http://bit.ly/phpmsql)。他們不再被維護[並被正式棄用](https://wiki.php.net/rfc/mysql_deprecation)。看到[**紅框**](http://j.mp/Te9zIL)?學習[*準備的語句*](http://j.mp/T9hLWi),並使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/ mysqli) - [這篇文章](http://j.mp/QEx8IB)將幫助你決定哪個。 – Kermit

回答

1

你只值賦給$pass如果$user沒有設置...但你這樣做,馬上後的值設置爲$user

當你寫if(!isset($user)){第二次,你可能是指if(!isset($pass)){

我不明白,如果$user設爲我爲什麼要檢查無論如何。測試表單數據是否已提交併用於確定是否應處理數據或是否應顯示錶單是正常的。

+0

@ Quentin,thx for!isset修復。我清理它,甚至試圖刪除!isset完全爲用戶和傳遞,仍然只更新數據庫的密碼...仍然難倒了這一點。 – user1720683

+0

@昆汀 - 我修好了。 Thx爲您的輸入。這是關鍵://獲取表單數據 $ user = $ _POST ['user']; 如果(!isset($通)){$ 通= MD5(mysql_real_escape_string($ _POST [ '密碼'])); – user1720683