Ciao,
sto provando a creare la prima applicazione che si collega al database. Sto seguendo la guida postata qua sul sito html.it (php + mysql)

Quando accedo alla pagina che riceve i dati tramite POST e dovrebbe inserirli nel database, mi restituice il seguente errore:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TO libreria (autore,titolo,pagine,genere) VALUES ("coelho","paulo","1' at line 1
Una cosa che ho notato, è che la query sembra troncata. Finisce con un 1 (quando il numero aveva più cifre), manca il resto della query (l'altro campo chiuse virgolette e parentesi).

copio il codice copiato dalla guida, che sto usando io


Questo è il file che descrive la classe, al cui interno ci sono le funzioni (io per ora chiamo la funzione "inserisci")

Codice PHP:
<?php

class MysqlClass
{
    
// parametri per la connessione al database
    
private $nomehost "localhost";
    private 
$nomeuser "***";
    private 
$password "***";
    private 
$nomedb "***";

    
// controllo sulle connessioni attive
    
private $attiva false;

    
// funzione per la connessione a MySQL
    
public function connetti()
    {
        if(!
$this->attiva)
        {
            if(
$connessione mysql_connect($this->nomehost$this->nomeuser$this->password) or die (mysql_error()))
            {
                
// selezione del database
                
$selezione mysql_select_db($this->nomedb,$connessione) or die (mysql_error());
            }
        }
        else {
            return 
true;
        }
    }
    
    
    
// funzione per la chiusura della connessione
    
public function disconnetti()
    {
        if(
$this->attiva)
        {
            if(
mysql_close())
            {
                
$this->attiva false;
                return 
true;
            }
            else {
                return 
false;
            }
        }
    }
    
    
    
    
// funzione per l'esecuzione delle query
    
public function query($sql)
    {
        if(isset(
$this->attiva))
        {
            
$sql mysql_query($sql) or die (mysql_error());
            return 
$sql;
        }
        else {
            return 
false;
        }
    }
    
    
    
    
// funzione per l'inserimento dei dati in una tabella
    // $t: il nome della tabella in cui effettuare l'inserimento
    // $v: i valori da inserire
    // $r: i campi da popolare tramite i valori specificati dall'argomento precedente
    
public function inserisci($t,$v,$r null)
    {
        if(isset(
$this->attiva))
        {
            
$istruzione 'INSERT TO '.$t;
            
            if(
$r != null)
            {
                
$istruzione .= ' ('.$r.')';
            }
            
            for(
$i 0$i count($v); $i++)
            {
                if(
is_string($v[$i]))
                {
                    
$v[$i] = '"'.$v[$i].'"';
                }
            }
            
            
$v implode(',',$v);
            
$istruzione .= ' VALUES ('.$v.')';
            
            
$query mysql_query($istruzione) or die (mysql_error());
        }
        else {
            return 
false;
        }
    }
    
    
    
    
    
// funzione per l'estrazione dei record
    
public function estrai($risultato)
    {
        if(isset(
$this->attiva))
        {
            
$r mysql_fetch_object($risultato);
            return 
$r;
        }
        else {
            return 
false;
        }
    }
    
}

?>

In una pagina php, utilizzo tale funzione della classe

Codice PHP:
<?php
// inclusione del file contenente la classe
include "funzioni_mysql.php";

// istanza della classe
$data = new MysqlClass();

// connessione a MySQL
$data->connetti();

// definizione delle variabili da passare alla funzione per l'inserimento dei dati
$t "libreria";    // nome della tabella
$v = array ($_POST['autore'], $_POST['titolo'], $_POST['pagine'], $_POST['genere']);    // valori da inserire
$r "autore,titolo,pagine,genere";    // campi da riempire

// chiamata alla funzione per l'inserimento dei dati
$data->inserisci($t,$v,$r);

// disconnessione
$data->disconnetti;
?>

Da cosa può essere dovuto?

Grazie!