- この関数を呼び出すたびに接続するのはひどい考えです。適切に計画されたアプリケーションには、そのような奇妙な制限はありません。
-
次のような置換を使用できます
myquery("SELECT * FROM table WHERE id = %s","My string");
-
別の置換方法、最新の方法、つまりプリペアドステートメントを使用できます。他の多くの回答で説明されます。
まだ誰も投稿していないので、ここに大まかな例を示します
function fetchAll(){
$args = func_get_args();
$query = array_shift($args);
$stmt = $pdo->prepare($query);
$stmt->execute($args);
return $stmt->fetchAll();
}
$a=$db->fetchAll("SELECT * FROM users WHERE status=? LIMIT ?,?",$status,$start,$num);
- シングルバイトエンコーディングまたはutf-8を使用している限り、mysql_real_escape_stringを使用する必要はないため、
mysql_escape_string(非推奨)またはaddslashesで十分です