Ho da poco realizzato una classe contenente delle funzione utili al mio scopo, quali.
- Apertura / chiusura connessione al db sqlite
- Conteggio record in una tabella, con o senza clausolo WHERE
- Eseguzione query sqlite, con parametri passati attraverso funzione addslashes
Per ogni opzione ho realizzato una funzione, tutte queste funzionano perfettamente, eccetto l'ultima, per eseguire una query:
Codice PHP:
function query($args)
{
if (func_num_args() > 1) {
$args = func_get_args();
$this->lastquery = call_user_func_array("sprintf", addslashes($args));
return sqlite_query($this->sq, $this->lastquery);
}
}
$sq, e la variabile contenente la connessione. Quando richiamo questa funzione, nel mio codice, tutto ciò non mi funziona.
Provando a levale l'addslashes() mi funziona per tutte le query tranne per quella di selezione:
Codice PHP:
$query = $conn->query("SELECT * FR0M %s", "tabella");
while ($rs = sqlite_fetch_array($query))
{
echo "risultato<p />";
}
$conn e la variabile che inizializza la classe contenente la funzione query(), provando a stampare la query mi viene stampata correttamente, ma quest'ultimo codice non mi funziona, come mai?