Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2011
    Messaggi
    15

    You have an error in your SQL syntax; check the manual that corresponds to your MySQL

    Salve a tutti. Chiedo scusa perchè probabilmente facciio riferimento ad un argomento già trattato in altri post, ma nessuno di quelli che ho trovato mi ha aiutato a capire dove sbaglio.
    Non ho molta esperienza di php ed seguito la guida pratica per php e mysql che ho trovato su html.it. Il problema è che quando faccio la query al database per inserire un nuovo campo mi da questo 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 ')' at line 1

    codice:
     
    include "MysqlClass.php";
    include "posiziona.php";
    // istanza della classe
    $data = new MysqlClass();
    // chiamata alla funzione di connessione
    $data->connetti();
     
        $t = "archivio_film"; # nome della tabella
        $v = array ($titolo,$genere,$recensione,$didascalia,$regia,$interpreti); # valori da inserire
        $r =  "titolo, genere, recensione, didascalia, regia, interpreti"; # campi da popolare
     
       // chiamata alla funzione per l'inserimento dei dati
        $data->inserisci($t,$v,$r);

    il codice in MysqlClass è il seguente:

    codice:
    public function inserisci($t,$v,$r = null)
        {
             if(isset($this->attiva))
              {
                            $istruzione = 'INSERT INTO '.$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;
                }
            }
    vi prego: aiuto!

    grazie in anticipo!

  2. #2
    Bisogna vedere com'è la query...
    Aggiungi al die (mysql_error());
    qualcosa del tipo
    Codice PHP:
    die (mysql_error() . "\r\n{istruzione}"); 
    e vedi che query esegue..

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2011
    Messaggi
    15
    Grazie è un ottimo metodo di controllo, mi ha aiutato a capire dove avevo sbagliato (errore di distrazione, una maiuscola al posto della minuscola )

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.