Finalmente dopo tanto posso riscrivere nel forum, come avrete notato non posso connettermi quasi mai, visto che non ho tempo.

Cmq, sto realizzando una classe per gestire un database sql, contenente, per ora, le seguenti funzioni:

  • Apertura / chiusura database.
  • Conteggio record tabella, con o senza filtro.
  • Esequzione query con l'insermento della funzione sqlite_escape_string().


Per ora la mia classe è questa qui:

Codice PHP:
class Connect 
{
  var 
$sq null;
  var 
$sqerror null;
  var 
$lastquery null;

  function 
__construct($path)
  {
    
$this->sq sqlite_open($path0666$this->sqerror)or die("Errore.");
  }

  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);
     }
  }    

  function 
query($args)
  {
     if (
func_num_args() > 1) {
        
$args func_get_args();
        
        for (
$i 0$i count($args); $i++)
        {
           if (
$i 0) {
              
$args[$i] = sqlite_escape_string($args[$i]);
           }
        }   
       
        
$this->lastquery call_user_func_array("sprintf"$args);
        
        return 
sqlite_query($this->sq$this->lastquery);
     }
  }  

  function 
records_count($args)
  {
     
$args func_get_args();
     
     if (
func_num_args() == 1) {
        
$query "SELECT * FROM " $args[0];
     }elseif (
func_num_args() == 2) {
        
$query "SELECT * FROM " $args[0] . " WHERE " $args[1]; 
     }
     
     if (
func_num_args() > && func_num_args() < 3) {
        
$rows sqlite_query($this->sq$query);
        return 
sqlite_num_rows($rows);
     }
  }

  function 
close()
  {
    
sqlite_close($this->sq);
  }

Tutte le funzioni vanno correttamente, eccetto la funzione query(), quest'ultima funziona per alcune query, tipo quella di inserimento, ma no in altre, tipo quella di selezione, per farvi un'esempio:

Io inizializzo la classe nella variabile $conn, per poi eseguire questo codice:

Codice PHP:
$query $conn->query("SELECT * FR0M %s"$_GET["category"]);

while (
$rs sqlite_fetch_array($query))
{
   
print_r($rs);

Ma non mi restituisce nessun risultato, e come se non mi eseguisse, anche se sono corrette, alcune query, come mai?