我想使用PHP更新數據庫中的字段。我寫了這段代碼並且工作正常。 var2
的值爲0,更新後其值爲1. 我想將字段var2
用作PHP變量,因此我可以將它用作if條件。 如果有條件,我想更新var2
,如果它的值是0
,並且重定向到其他php文件,如果var2
的值是1
。如何正確更新PHP文件中的MySQL數據?
<?php
session_start();
$con=mysql_connect("localhost","root","");
mysql_select_db("database",$con);
$sql = "SET SQL_MODE = ''";
mysql_query($sql,$con);
$sql = "UPDATE table SET var2=1 WHERE var1 = '".$_SESSION['user']."'";
if(){}
mysql_query($sql,$con);
if(mysql_error() != ""){
echo $sql." ".mysql_error();
}
mysql_close($con);
?>
我試圖與
$abc = $_POST['var2'];
$sql = "UPDATE table SET "$abc"=1 WHERE var1 = '".$_SESSION['user']."'";
,但它不爲我工作,我得到了一條消息「解析錯誤:語法錯誤,在C意想不到T_VARIABLE:\ XAMPP \ htdocs中\ egresadoslunes \ finalizar.php on line 10「
首先你[停止使用'mysql_ *'功能(http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php)。他們不再被維護,並[正式棄用](https://wiki.php.net/rfc/mysql_deprecation)。瞭解[準備的陳述](http://en.wikipedia.org/wiki/Prepared_statement),並使用[PDO](http://jayblanchard.net/demystifying_php_pdo.html)。您正在嘗試在實際編寫查詢之前執行查詢。你有一個空的if語句。 –
你對'if(){}'做什麼? –
檢查你的引用方法,加上這個應該做什麼'$ sql =「SET SQL_MODE =''」;'和'if(){}'什麼都不做;去掉它。 –