Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18

Discussione: Query con fantasmi

  1. #1
    Utente di HTML.it L'avatar di Think
    Registrato dal
    Jun 2005
    Messaggi
    1,008

    Query con fantasmi

    Ragazzi.. AUITO! me la cavo abbastanza con PHP e ho anche fatto delle belle cose.. ma con questa query credo di aver perso una mattinata.

    Praticamente l'utente inserisce il nome, mail e commento in un form e questi campi più altri (ora, ip, giorno..) vengono inseriti nel database.

    Ma non va!!!!! aiuto! o meglio va solo in certi casi che sto cercando di capire quali sono (credo dipenda dal textarea..)


    Ecco il form:
    codice:
    <form action='<?php echo($_SERVER["PHP_SELF"]); ?>' method='post'>
    
    <?php if ($nomeERR == 1) echo ('<font color="#FF0000">Nome</font>');
    else echo ('Nome'); ?>
    <input type="text" size="30" name="nome" class="testo" value="<?php echo $nome; ?>">
    				
    
    
    <?php if ($emailERR == 1) echo ('<font color="#FF0000">Email</font>'); 
    else echo ('Email'); ?>
    
    <input type="text" size="30" name="email" class="testo" value="<?php echo $email; ?>"> 
    
    
    
    <?php if ($commERR == 1) echo ('<font color="#FF0000">Commento</font>'); 
    else echo ('Commento'); ?>
    <textarea name="comme" rows="5" class="testo" ></textarea>
    					   
    
    <input type="hidden" name="idn" value="<?php echo $idn; ?>">
    
    <input type="reset" name="reset" class="testo"
    value="Reset">
    <input type="submit" name="submit" class="testo" value="Inserisci">
    					  
    
    </form>

    Recupero campi

    codice:
    if (isset($_POST["submit"]))
      {
        $nome = $_POST['nome'];
        $email = $_POST['email'];
        $comm = $_POST['comme'];
        $idn = $_POST['idn'];
       }

    Poi c'è tutta una parte di controllo dei campi.. ma funziona l'ho provata bene. E infine la query maledetta!

    codice:
    $insert = mysql_query("INSERT INTO commenti (id_com, id_post, commento, dataCOMM, oraCOMM, nome, mail, ip) 
    VALUES ('', '$idn', '$comm', '$data', '$ora', '$nome', '$email', '$ip')" ,$db);
    Grazie
    Ciao

  2. #2
    non va che significa?

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Utente di HTML.it L'avatar di Think
    Registrato dal
    Jun 2005
    Messaggi
    1,008
    Originariamente inviato da piero.mac
    non va che significa?
    Che non inserisce i dati nel database...

  4. #4
    metti la segnalazione di errore alla query.

    mysql_error()

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Stampa la query e postala...
    Non è che nella textarea hai scritto parole con '?
    Io stavo impazzendo l'altro giorno...


  6. #6
    Utente di HTML.it L'avatar di Think
    Registrato dal
    Jun 2005
    Messaggi
    1,008
    Originariamente inviato da pezzo
    Stampa la query e postala...
    è sopra...

    Originariamente inviato da pezzo
    Non è che nella textarea hai scritto parole con '?
    Io stavo impazzendo l'altro giorno...
    Scusa spiega meglio.. cos'è sta storiaccia??


    Ho fatto una prova:
    -inserendo del casualissimo testo tipo:"sdjiv vvdfvnd us di fr "(chiari..) FUNZIONA!!!

    -mentre mettendo del testo sensato tipo:"Ciao Losco...vedo che il mio commento non lo hai messo,ne hai risposto...sono tornato a casa però...e finalmente mi funzione l'ADSL... " (CHE è UN COMMENTO VERO...) NON VA!


    Sono giunto all'idea che è il campo textarea che rompe.. ma non capisco perchè con certe cose va e con altre no!

    AIUTO!!

  7. #7
    Utente di HTML.it L'avatar di Think
    Registrato dal
    Jun 2005
    Messaggi
    1,008
    Originariamente inviato da piero.mac
    metti la segnalazione di errore alla query.

    mysql_error()
    ù


    Non da nulla.....
    Solo quando ha funzionato (cioè ha inserito nel database i dati) ha dato "1".

  8. #8
    Originariamente inviato da Think
    è sopra...



    Scusa spiega meglio.. cos'è sta storiaccia??


    Ho fatto una prova:
    -inserendo del casualissimo testo tipo:"sdjiv vvdfvnd us di fr "(chiari..) FUNZIONA!!!

    -mentre mettendo del testo sensato tipo:"Ciao Losco...vedo che il mio commento non lo hai messo,ne hai risposto...sono tornato a casa però...e finalmente mi funzione l'ADSL... " (CHE è UN COMMENTO VERO...) NON VA!


    Sono giunto all'idea che è il campo textarea che rompe.. ma non capisco perchè con certe cose va e con altre no!

    AIUTO!!
    Hai messo or die(mysql_error()); ??
    PER CASO ti serve un guestbook, completamente personalizzabile?e PER CASO lo vuoi anche gratis e senza pop-up o dialer?E allora prova il nuovo NewAge GuestBook..Niente per caso, tutto perfetto

  9. #9
    Utente di HTML.it L'avatar di Think
    Registrato dal
    Jun 2005
    Messaggi
    1,008
    You have an error in your SQL syntax near 'ADSL...', '25', '7', '2005', '12:37', 'federico', 'email', '82.5' at line 2

  10. #10
    Il problema è l'apice che nell'inserimento confonde SQL.
    Sostituisci tutti i caratteri sospetti (come "', ad esempio) attraverso strreplace() con i caratteri di escape (ovvero \' e così via) e vedrai che funzionerà...

    Ciao ciao

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.