更新: '' の提案は $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 です。
行が存在し、他のすべてが機能することがわかっている場合、何が無効になる可能性がありますか?