- È un'idea terribile connettersi ogni volta che chiami questa funzione. Una buona applicazione pianificata non avrebbe limiti così strani.
-
puoi usare sostituzioni, come questa
myquery("SELECT * FROM table WHERE id = %s","My string");
-
Puoi usare un altro modo di sostituzioni, moderno:le dichiarazioni preparate. sarà descritto in numerose altre risposte.
poiché nessuno l'ha ancora pubblicato, ecco un esempio approssimativo
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);
- Finché utilizzi la codifica a byte singolo o utf-8, non è necessario utilizzare mysql_real_escape_string, quindi
mysql_escape_string(obsoleto) o aggiungerelashes sarebbero sufficienti