2013-04-04 38 views
0

在谷歌和搜索後,我決定把這裏.. 我試着改變單引號和反色列,但它也沒有幫助.. 任何幫助感激!在'where子句'中的未知列'member1'

$a=mysql_query("UPDATE exercisemember SET reps='$reps' WHERE memid='$memid1'")  or die(mysql_error()); 

    $b=mysql_query("UPDATE exercisemember SET sets1='$sets1' WHERE memid='$memid1'")  or die(mysql_error()); 

感謝進步.. 更新1 的member1中實際上是$ memid1

+0

你確定你談論這個查詢?由於我在查詢中的任何地方都看不到'member1'。 – Rikesh 2013-04-04 10:01:21

+0

member1實際上是$ memid的值,php變量.. – user2234992 2013-04-04 10:03:56

+1

不要再使用mysql_ *函數了:http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in- php – DessDess 2013-04-04 10:09:23

回答

0

值作爲你的標題所說,沒有colimn的member1。問題可能在於你在$ memid中輸入了密碼。

請在$ memid上做一個回聲以查看變量中的內容。

你也可以更好地使用PDO或mysqli的

它會是這樣的有PDO:

//database connection 
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass); 

$sql = 'UPDATE exercisemember SET reps=:reps WHERE memid=:memid'; 
$update = $dbh->prepare($sql); 
$update->bindParam(':reps', $reps, PDO::PARAM_STR); //if it is a integer use PDO::PARAM_INT 
$update->bindParam(':memid', $memid, PDO::PARAM_STR); 
$update->execute(); 

這將阻止它sql注入。

0
$a=mysql_query("UPDATE exercisemember SET reps='".$reps."' WHERE memid='".$memid1."'") 

您可以使用echo查詢發現差異