- Het is een slecht idee om elke keer verbinding te maken als je deze functie aanroept. Een goed geplande toepassing zou niet zo'n vreemde beperking hebben.
-
je kunt vervangingen gebruiken, zoals deze
myquery("SELECT * FROM table WHERE id = %s","My string");
-
U kunt een andere manier van vervanging gebruiken, een moderne:voorbereide verklaringen. het zal in tal van andere antwoorden worden beschreven.
aangezien niemand het nog heeft gepost, hier is een ruw voorbeeld
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);
- Zolang je single-byte-codering of utf-8 gebruikt, hoef je mysql_real_escape_string niet te gebruiken, dus
mysql_escape_string(verouderd) of het toevoegen van wimpers zou voldoende zijn