-2

警告: SQL 構文にエラーがあります。near 'color:red'> を使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。

そして、この私のコード:

$db->query("UPDATE members set id='{$this->test['id']}', 
     lvl='{$this->userlvl}', ip='{$this->test['IP']}', 
     time='{$this->test['time']}', 
     linechat='{$this->test['msg']}' 
     WHERE user='{$this->test['name']}'");

初心者なので教えてください(^^)

私はこれを試しました

$fixchat = mysql_real_escape_string($this->test['msg']);
$fixname = mysql_real_escape_string($this->test['name']);

$db->query("UPDATE members set id='{$this->test['id']}',
     lvl='{$this->userlvl}', ip='{$this->test['IP']}', 
     time='{$this->test['time']}', linechat='{$fixchat}' 
     WHERE user='{$fixname}'");

しかし、私はこのエラーが発生しました:

警告: SQL 構文にエラーがあります。1行目の「\wellington\」付近で使用する正しい構文については、MySQLサーバーのバージョンに対応するマニュアルを確認してください...

4

2 に答える 2

0

解決方法 : ラッシュ関数を追加

$fixchat = addslashes($this->test['msg']);
$fixname = addslashes($this->test['name']);

$db->query("UPDATE members set id='{$this->test['id']}',
     lvl='{$this->userlvl}', ip='{$this->test['IP']}', 
     time='{$this->test['time']}', linechat='{$fixchat}' 
     WHERE user='{$fixname}'");
于 2013-07-26T09:04:10.607 に答える