2011-04-01 52 views
0

我是php語言的新手,我試圖做一個簡單的登錄頁面,索引頁面和註銷頁面,現在我試圖改變登錄密碼頁面,但它不能在mysql中工作,我的編碼沒有任何錯誤但在MySQL數據中,它不會更改我更新的php表單中的內容。爲什麼我不能更新mysql數據庫的用戶名和密碼?

這裏是我的代碼,

<?php 
//including the database connection file 
$host="localhost"; // Host name 
$username="paapuu_user"; // Mysql username 
$password="mn78k1a2"; // Mysql password 
$db_name="paapuu"; // Database name 
$tbl_name="admin"; // Table name 

// Connect to server and select database. 
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB"); 


if(isset($_POST['update'])) 
{ 
    //here the id that we post is the same id that we get from url 
    //id indicates the id of this data which we are editing 
    //id is unique and a particular id is associated with particular data 
    $id1 = $_POST['id'];  
    $username1=$_POST['username']; 
    $password1=$_POST['password']; 
    //updating the table 
     $result=mysql_query("UPDATE admin SET username='$username1', password='$password1' WHERE id=$id1"); 
     echo "<script language='javascript' type='text/javascript'>"; 
     $error1="<p>Update successfully!</p>";   
     echo "alert($error1); window.location ='viewpassword.php'"; 
     echo "</script>"; 
} 
+0

作爲一個純粹的技術問題,這屬於StackOverflow(請不要在此處重新發布,如果有足夠的人投票結束,它將被自動化)。 – 2011-04-01 07:25:06

+0

這不是發佈這個問題的正確的地方。 – 2011-04-01 07:54:48

回答

0

這將是很高興看到您的實際形式以及。

您確定需要您進入isset($_POST['update']);的內部嗎?你 也可以嘗試

$result = mysql_query("UPDATE admin 
         SET username='$username1', password='$password1' 
         WHERE id=$id1") 
     or die(mysql_error()); 

要查看是否確實有一個與你的那個查詢的任何問題。

0

嘗試周邊變量$ ID1用單引號:

$結果= mysql_query(「更新管理員設置的用戶名= '$ USERNAME1', 密碼= $密碼1'WHERE ID = '$ ID1' 「);

它會阻止你的查詢從被供給沒有ID,就這樣有一個錯誤:

UPDATE管理員設置的用戶名= '$ USERNAME1', 密碼= $密碼1「WHERE ID ='';

當不使用單引號,它會以這種方式工作:

UPDATE管理員設置的用戶名= '$ USERNAME1', 密碼= $密碼1'WHERE ID =;

而且我建議你用你的變量$ tbl_name或剛從變量聲明中刪除它,如果你不會在查詢中使用它。 希望這個作品!

0

看起來你忘了周圍的WHERE ID = $ ID1單引號$ ID1

此外,如果不解決這個問題,嘗試在你的變量替換單引號

像」 「。$ username1。」'

相關問題