[英]MySQL PHP Query Invalid - Can't find column
更新:''圍繞$ username工作的建議。 謝謝! 但現在,該表實際上並沒有從$ lastLoginTime更新。
我的查詢存在一些問題,我似乎無法弄清楚我的生活,我處於停頓狀態。
我們來看看代碼吧。
function checkTOS($preusergrab){
include("includes/opendb.php");
$query = "SELECT * FROM users WHERE username='".$preusergrab."'";
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_assoc($result)){
$resultset[] = $row;
$TOS = $row['acceptTOS'];
}
mysql_free_result($result);
if($TOS == 1){
// return to processor
$lastLoginTime = time();
$query = mysql_query("UPDATE users
SET lastLoginTime = '$lastLoginTime'
WHERE username = $username");
if (!$query) {
die('<br>Invalid query: ' . mysql_error());
}
}elseif($TOS == 0 || $TOS = ''){
header("Location: http://partner.domain.com/terms.php?action=show");
die();
}else{
echo 'Internal Application Error:';
echo 'Value unrecognizable.';
echo '<br>Please alert someone at user@domain.com';
die();
}
}
現在,問題出現在這一部分:
$lastLoginTime = time();
$query = mysql_query("UPDATE users
SET lastLoginTime = '$lastLoginTime'
WHERE username = $username");
if (!$query) {
die('<br>Invalid query: ' . mysql_error());
}
它說如下:
Invalid query: Unknown column 'theuser' in 'where clause'
在這種情況下,'theuser'是$ preusergrab表示的用戶。
在我的表中,用戶名是主鍵,第0行。
如果我知道行在那里而其他一切都有效,那么什么可能是無效的?
嘗試
$query = mysql_query("UPDATE users
SET lastLoginTime = '$lastLoginTime'
WHERE username = '$username'");
它應該是:
WHERE username = '$username'");
請注意我在$ username'變量周圍添加的撇號。
我相信你忘記引用$ username,引用如此'$ username'
$query = mysql_query("UPDATE users
SET lastLoginTime = '$lastLoginTime'
WHERE username = '$username'");
if (!$query) {
die('<br>Invalid query: ' . mysql_error());
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.