Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [PHP] Errore nella query

    Questo è l'errore che mi viene segnalato:
    Errore nella queryYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mod,admin) VALUES ('Giovanni','Pili','sytry82','sytry82@gmail.com',' 123456'' at line 1
    Proprio non capisco dove sia l'errore visto che mi sto basando su listati che avevo usato per un altro blog, senza problemi.

    Codice PHP:
    <?php
    if(!isset($_POST['submit'])){
        echo(
    '
    <form method="post" action="#">
    <table width="600px;">
    <tr>
    <td>Nome</td>
    <td>Cognome</td>
    <td>Nikname</td>
    <td>eMail</td>
    <td>Password</td>
    </tr>
    <tr>
    <td><input type="text" name="nome"/></td>
    <td><input type="text" name="cognome"/></td>
    <td><input type="text" name="nikname"/></td>
    <td><input type="text" name="email"/></td>
    <td><input type="password" name="password"/></td>
    </tr>
    <tr>
    <td colspan="5"><input type="submit" name="submit"/></td>
    </tr>
    </table>
    </form>
    '
    );
    }else{
        include(
    'blog/config.php');
        
        
    $nome=mysql_real_escape_string($_POST['nome']);
        
    $cognome=mysql_real_escape_string($_POST['cognome']);
        
    $nikname=mysql_real_escape_string($_POST['nikname']);
        
    $email=mysql_real_escape_string($_POST['email']);
        
    $password=mysql_real_escape_string($_POST['password']);
        
        
    $query="INSERT INTO utenti (nome,cognome,nikname,email,password,mod,admin) VALUES ('{$nome}','{$cognome}','{$nikname}','{$email}','{$password}','0','0')";
        
    $result=@mysql_query($query$conn->conn);
        
        if(!
    $result)
        {
            die (
    "Errore nella query".mysql_error());
        }else
        {
            
    header("Location:login_utente.php");
        }
    }
    ?>
    Così, su due piedi, sospetto che il problema sia nel modo in cui ho realizzato la tabella; vi inserisco direttamente uno screenshot di phpmyadmin, relativo alla tabella "utenti":



    Le colonne mod e admin le popolo con valore "0" in modo da poter fare una moderazione degli utenti che commentano e concedere l'accesso all'editor solo a certi utenti.

    Cosa sto sbagliando?

  2. #2
    Se i campi mod e admin sono di tipo int perchè metti gli apici in fase di insert?
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Originariamente inviato da satifal
    Se i campi mod e admin sono di tipo int perchè metti gli apici in fase di insert?
    Ho corretto, ma mi da il medesimo errore. Ho anche svuotato la cache per sicurezza.

    PS
    Dubito c'entri ma non si sa mai: dentro la cartella 'blog' dove si trova il file di configurazione ho messo anche un file .htaccess con il comando 'deny from all'; spero non dipenda da questo.

    No, infatti, ho controllato.

  4. #4
    Originariamente inviato da Giovanni Pili
    Ho corretto, ma mi da il medesimo errore.
    Non è possibile che ti dia lo stesso identico errore sui campi mod ed admin se hai corretto la query:

    codice:
    Errore nella queryYou have an error in your SQL syntax; 
    check the manual that corresponds to your MySQL server version 
    for the right syntax to use near 'mod,admin) VALUES ('Giovanni','Pili','sytry82','sytry82@gmail.com','123456'' at line 1
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  5. #5
    Originariamente inviato da satifal
    Non è possibile che ti dia lo stesso identico errore sui campi mod ed admin se hai corretto la query:

    codice:
    Errore nella queryYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mod,admin) VALUES ('Giovanni','Pili','sytry82','sytry82@gmail.com','123456'' at line 1
    Ti incollo il messaggio:

    Errore nella queryYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mod,admin) VALUES ('Giovanni','Pili','sytry82','sytry82@gmail.com',' 123456'' at line 1

    Codice PHP:
    $query="INSERT INTO utenti (nome,cognome,nikname,email,password,mod,admin) VALUES ('{$nome}','{$cognome}','{$nikname}','{$email}','{$password}',0,0)"

  6. #6
    Ho provato anche in questo modo, ma da sempre lo stesso messaggio:

    Codice PHP:
    $nome=mysql_real_escape_string($_POST['nome']);
        
    $cognome=mysql_real_escape_string($_POST['cognome']);
        
    $nikname=mysql_real_escape_string($_POST['nikname']);
        
    $email=mysql_real_escape_string($_POST['email']);
        
    $password=mysql_real_escape_string($_POST['password']);
        
    $mod='no';
        
    $admin='ok';
        
        
    $query="INSERT INTO utenti (nome,cognome,nikname,email,password,mod,admin) VALUES ('{$nome}','{$cognome}','{$nikname}','{$email}','{$password}','{$mod}','{$admin}')";
        
    $result=@mysql_query($query$conn->conn); 

  7. #7
    PROBLEMA RISOLTO

    Scusate se "uppo".
    Allora, pare che "mod" sia una parola riservata e non la si può usare; infatti mi è bastato modificare il nome della colonna per non riscontrare più problemi. Grazie comunque per l'interessamento.

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.