1

SQLselectステートメントで列の特殊文字をエスケープする方法。

そのsqlselectステートメントがあり、列account_nameに特殊文字を含む値があります。これらの特殊文字をエスケープしないため、エラーが発生します。

select * from account where account_name ='$account_name'  
4

2 に答える 2

2

MySQL拡張コマンドは使用しないでください。これらは廃止されており、推奨されなくなりました。

PDOと準備されたアタテメントを使用します。

http://php.net/pdo

$name = '$somethingHere';
$stmt = $db->prepare("Select * from account where account_name = :name");
$stmt->bindValue(':name', $name, PDO::PARAM_STR);
$stmt->execute();
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
于 2013-02-21T13:28:33.373 に答える
1

関数を使用mysql_real_escape_string($account_name)します。

于 2013-02-21T13:17:13.100 に答える