2012-01-10 54 views
-2

好的。所以這就是我想要做的。MySQL編輯特定列

我願讓這個一段代碼,抓住內容形成變

$_SESSION['user'] 

,並找到行的MySQL表中包含的變量。

然後我想它從另一個變量抓取信息,如

$_POST['country'] 

我不知道如何做到這一點編輯已經在它有一行信息。有一個簡單的方法。

MySQL的信息是:

host: 'localhost' 
user: 'root' 
pass: '' 
    db: 'database' 
table: 'accounts' 
+2

獲得一本關於SQL – 2012-01-10 05:07:28

+1

所以,你喜歡浪費時間,因爲你太懶惰學習? – 2012-01-10 05:34:56

+0

@SteppingHat,對你來說這可能更容易,但對SO社區來說可能更容易。你有沒有試圖研究谷歌?你會發現許多基本的教程解釋瞭如何使用PHP腳本來讀寫MySQL。嘗試閱讀MySQL中的SELECT和UPDATE查詢,這些是你將需要的唯一東西 – Abhay 2012-01-10 06:03:53

回答

1

你可以做這樣的事情:

mysql_query(sprintf("UPDATE accounts SET country='%s' WHERE user_id='%s'", 
    mysql_real_escape_string($_SESSION['country']), 
    mysql_real_escape_string($_SESSION['user']) 
)); 

只是各自的名稱替換該字段/表。

你在這裏學習的實際的SQL是:

UPDATE table SET field='value', field2='value2', ... WHERE field3='value3', ... 

確保始終消毒與mysql_real_escape_string進行輸入;不這樣做會在系統中留下一個很容易被利用的漏洞 - 並且最壞的情況是你的數據庫被丟棄,敏感數據被暴露或黑客成功授權自己作爲另一個用戶。

如果你沒有帶連接到數據庫,你這樣做(運行查詢之前):

mysql_connect("localhost", "root", ""); 
mysql_select_db("database");