grigio60 Inviato 7 Settembre 2006 Segnala Condividi Inviato 7 Settembre 2006 strano che tu debba ricorrere al concatenamento delle stringhe per impostare la query, io nel mio codice ho sempre definito la query come stringa (definita cioè tra virgolette " e non tra apici ' come nel tuo caso) e inserendo dentro direttamente le variabili php e ha sempre funzionato. comunque se hai risolto il problema, ottimo così. credo di aver capito che forse il tuo problema con la tabella era legato anche al "case" maiuscolo o minuscolo per il nome delle colonne, in teoria dovrebbe essere ininfluente ma apparentemente così non è. la sintassi di insert che hai usato tu non è del tutto corretta, io avrei scritto qualche riga in più per memorizzare i valori $_POST in variabili a se (per evitare problemi di parsing con troppi apici in giro), tipo $nome=$_POST['nome'] ecc. e poi $query = "insert into $classe values ('$nome','$tesserafiv', eccetera, con l'avvertenza importante che l'ordine con cui vengono elencati i parametri deve essere esattamente lo stesso con cui sono definite le colonne nella tabella di destinazione. in alternativa puoi usare anche come sintassi $query = "insert into $classe ('NOME', 'CIRCOLO', ... ) values ('$nome', '$circolo', ....);"; che ha il vantaggio di non vincolarti a elencare nella prima parentesi le colonne nell'ordine in cui son definite nella tabella mysql, ovviamente però i valori indicati nella seconda parentesi, dopo values, devono essere in ordine rispetto alla sequenza usata nella prima parentesi. Ricordati che tutte le stringhe di query vanno terminate con il ; Serve aiuto? Posso darti una mano in Webmasters - Aiuto Software - Da Windows a Mac Mappa Utenti ItaliaMac [[miao]] Link al commento Condividi su altri siti Altre opzioni di condivisione...
magomac Inviato 7 Settembre 2006 Autore Segnala Condividi Inviato 7 Settembre 2006 grazie, provo e ti faccio sapere Link al commento Condividi su altri siti Altre opzioni di condivisione...
magomac Inviato 7 Settembre 2006 Autore Segnala Condividi Inviato 7 Settembre 2006 Allora questo è il codice della terza pagin <?php $tabelladatabase = $_POST[classe]; $host = 'localhost'; $user = 'root'; $password = 'root'; $database = 'cnc_gestioneregate'; $db = mysql_connect($host, $user, $password) or die ("Impossibile connettersi al server specificato, inserimento record non riuscito"); mysql_select_db($database, $db) or die ("Impossibile connettersi al database, inserimento record non riuscito"); $classe = $_POST[classe]; $velico = $_POST[velico]; $nome = $_POST[nome]; $fiv = $_POST[tesserafiv]; $circolo = $_POST[circolo]; $query = "insert into $classe values ('$velico','$nome','$fiv','$circolo')"; ?> risultato: VIENE UNA PAGINCOMPLETA (con l'intestazione e lo sfondo) ma non inserisce niente nel database! Link al commento Condividi su altri siti Altre opzioni di condivisione...
grigio60 Inviato 7 Settembre 2006 Segnala Condividi Inviato 7 Settembre 2006 beh, ha ragione pure il php: se definisci la query e poi non gliela fai eseguire è un pochino difficile che inserisca qualcosa nel database in altre parole manca l'ultima riga: $risultato = mysql_query($query) or die "Errore in fase di inserimento dei dati"; Serve aiuto? Posso darti una mano in Webmasters - Aiuto Software - Da Windows a Mac Mappa Utenti ItaliaMac [[miao]] Link al commento Condividi su altri siti Altre opzioni di condivisione...
magomac Inviato 7 Settembre 2006 Autore Segnala Condividi Inviato 7 Settembre 2006 vero!!!! mi sembrava che mancasse qualcosa! devo essere un po' stanco Link al commento Condividi su altri siti Altre opzioni di condivisione...
magomac Inviato 7 Settembre 2006 Autore Segnala Condividi Inviato 7 Settembre 2006 Allora aggiungendo semplicemente quell riga mi dava pagina bianca!!!!! Provando a modificare il codice in questo modo invece la pagina viene con l'errore che riporto in seguito: <?php $tabelladatabase = $_POST[classe]; $host = 'localhost'; $user = 'root'; $password = 'root'; $database = 'cnc_gestioneregate'; $db = mysql_connect($host, $user, $password) or die ("Impossibile connettersi al server specificato, inserimento record non riuscito"); mysql_select_db($database, $db) or die ("Impossibile connettersi al database, inserimento record non riuscito"); $classe = $_POST[classe]; $velico = $_POST[velico]; $nome = $_POST[nome]; $fiv = $_POST[tesserafiv]; $circolo = $_POST[circolo]; $query = 'INSERT INTO `'.$classe.'` ("velico, nome, fiv, circolo") VALUES (`'.$velico.'`,`'.$nome.'`,`'.$fiv.'`,`'.$circolo.'`)'; $risultato = mysql_query($query)OR die(mysql_error()); ?> L'ERRORE E': 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 '"velico, nome, fiv, circolo") VALUES (`ITA`,`NOMEXXXXX COGNOM`,`624796`,`024-01-' at line 1 Soprattutto ho notato una cosa: nel testo dell'errore non ci sta tutto!!!!! Ad esempio il nome del circolo non è solo 024-01 ma è molto più lungo e più ci sono caratteri prima (nel nome e nel numero velico) più se ne visualizza, come se ci fosse un limite massimo di caratteri!!! Idee?? Link al commento Condividi su altri siti Altre opzioni di condivisione...
grigio60 Inviato 7 Settembre 2006 Segnala Condividi Inviato 7 Settembre 2006 i nomi delle colonne vanno messi singolarmente tra apici e non tutti insieme tra virgolette: insert into $classe ('velico','nome','fiv','circolo') il testo del messaggio di errore tronca la sintassi di ingresso in modo da darti l'indicazione di dove cercare l'errore, questo è normale Serve aiuto? Posso darti una mano in Webmasters - Aiuto Software - Da Windows a Mac Mappa Utenti ItaliaMac [[miao]] Link al commento Condividi su altri siti Altre opzioni di condivisione...
magomac Inviato 7 Settembre 2006 Autore Segnala Condividi Inviato 7 Settembre 2006 Così' non va proprio! Viene una pagina bianca! Link al commento Condividi su altri siti Altre opzioni di condivisione...
grigio60 Inviato 7 Settembre 2006 Segnala Condividi Inviato 7 Settembre 2006 hai provato a usare il carattere maiuscolo per i nomi delle colonne? Serve aiuto? Posso darti una mano in Webmasters - Aiuto Software - Da Windows a Mac Mappa Utenti ItaliaMac [[miao]] Link al commento Condividi su altri siti Altre opzioni di condivisione...
magomac Inviato 7 Settembre 2006 Autore Segnala Condividi Inviato 7 Settembre 2006 adesso provo ma sul database sono minuscole Link al commento Condividi su altri siti Altre opzioni di condivisione...
magomac Inviato 7 Settembre 2006 Autore Segnala Condividi Inviato 7 Settembre 2006 era solo nella tabella tesserati che erano maiuscoli Link al commento Condividi su altri siti Altre opzioni di condivisione...
magomac Inviato 7 Settembre 2006 Autore Segnala Condividi Inviato 7 Settembre 2006 Non cambia niente Link al commento Condividi su altri siti Altre opzioni di condivisione...
grigio60 Inviato 7 Settembre 2006 Segnala Condividi Inviato 7 Settembre 2006 oltre all'errore che ti ho segnalato hai dimenticato il ; di chiusura della query: da: $query = 'INSERT INTO `'.$classe.'` ("velico, nome, fiv, circolo") VALUES (`'.$velico.'`,`'.$nome.'`,`'.$fiv.'`,`'.$circolo. '`)'; prova a modificare a: $query = 'INSERT INTO `'.$classe.'` (`velico`, `nome`, `fiv`, `circolo`) VALUES (`'.$velico.'`,`'.$nome.'`,`'.$fiv.'`,`'.$circolo. '`);'; Serve aiuto? Posso darti una mano in Webmasters - Aiuto Software - Da Windows a Mac Mappa Utenti ItaliaMac [[miao]] Link al commento Condividi su altri siti Altre opzioni di condivisione...
magomac Inviato 7 Settembre 2006 Autore Segnala Condividi Inviato 7 Settembre 2006 Stesso errore di prima! 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 '"velico, nome, fiv, circolo") VALUES (`625744`,`BENEDETTI ANDREA`,`624796`,`024-' at line 1 Codice della pagina: <?php $tabelladatabase = $_POST[classe]; $host = 'localhost'; $user = 'root'; $password = 'root'; $database = 'cnc_gestioneregate'; $db = mysql_connect($host, $user, $password) or die ("Impossibile connettersi al server specificato, inserimento record non riuscito"); mysql_select_db($database, $db) or die ("Impossibile connettersi al database, inserimento record non riuscito"); $classe = $_POST[classe]; $velico = $_POST[velico]; $nome = $_POST[nome]; $fiv = $_POST[tesserafiv]; $circolo = $_POST[circolo]; $query = 'INSERT INTO `'.$classe.'` ("velico, nome, fiv, circolo") VALUES (`'.$velico.'`,`'.$nome.'`,`'.$fiv.'`,`'.$circolo. '`);'; $risultato = mysql_query($query)OR die(mysql_error()); ?> Link al commento Condividi su altri siti Altre opzioni di condivisione...
grigio60 Inviato 7 Settembre 2006 Segnala Condividi Inviato 7 Settembre 2006 scusa ma mi sa che ti è sfuggita la mia nota sulla sintassi che hai usato visto che hai ripetuto lo stesso errore di prima. non devi scrivere INSERT INTO $class ("velico,nome,fiv,circolo") ma: INSERT INTO $class (`velico`, `nome`, `fiv`, `circolo`) ossia: via le virgolette "" e racchiudi ogni nome di colonna tra apici `` Serve aiuto? Posso darti una mano in Webmasters - Aiuto Software - Da Windows a Mac Mappa Utenti ItaliaMac [[miao]] Link al commento Condividi su altri siti Altre opzioni di condivisione...
magomac Inviato 7 Settembre 2006 Autore Segnala Condividi Inviato 7 Settembre 2006 Allora adx con il codice così <?php $tabelladatabase = $_POST[classe]; $host = 'localhost'; $user = 'root'; $password = 'root'; $database = 'cnc_gestioneregate'; $db = mysql_connect($host, $user, $password) or die ("Impossibile connettersi al server specificato, inserimento record non riuscito"); mysql_select_db($database, $db) or die ("Impossibile connettersi al database, inserimento record non riuscito"); $classe = $_POST[classe]; $velico = $_POST[velico]; $nome = $_POST[nome]; $fiv = $_POST[tesserafiv]; $circolo = $_POST[circolo]; $query = 'INSERT INTO `'.$tabelladatabase.'` (`velico`, `nome`, `fiv`, `circolo`) VALUES (`'.$velico.'`,`'.$nome.'`,`'.$fiv.'`,`'.$circolo. '`)'; $risultato = mysql_query($query)OR die(mysql_error()); ?> (Se la variabile non la scrivevo tra gli apici e i punti mi dava errore) mi da questo errore Unknown column 'ITA5656' in 'field list' ITA5656 l'avevo messo come numero velico nel form! Non capisco perchè diavolo lo cerca come colonna! Link al commento Condividi su altri siti Altre opzioni di condivisione...
grigio60 Inviato 7 Settembre 2006 Segnala Condividi Inviato 7 Settembre 2006 a me sembrava che la variabile fosse già tra apici e punti negli esempi precedenti, forse mi era andata insieme la vista mi sfugge comunque ancora un particolare: nel codice precedente usavi $classe come variabile che contiene il nome della tabella su cui scrivere nel codice di questo ultimo esempio usi $tabelladatabase come variabile che contiene il nome della tabella su cui scrivere e $classe non viene di fatto utlizzata non è che ti dà l'errore perché stai puntando a una tabella che non c'entra nulla? Serve aiuto? Posso darti una mano in Webmasters - Aiuto Software - Da Windows a Mac Mappa Utenti ItaliaMac [[miao]] Link al commento Condividi su altri siti Altre opzioni di condivisione...
magomac Inviato 7 Settembre 2006 Autore Segnala Condividi Inviato 7 Settembre 2006 se guardi all'inizio del codice anche prima era tabelladatabase . Solo che nella parte che copiavo per mandartela avevo fatto un po di casini e veniva $classe. La tabella giusta è $tabelladatabase Link al commento Condividi su altri siti Altre opzioni di condivisione...
grigio60 Inviato 7 Settembre 2006 Segnala Condividi Inviato 7 Settembre 2006 ok ma allora il codice che hai usato davvero alla fine è: $tabelladatabase = $_POST [classe]; oppure $classe = $_POST [classe]; ? Serve aiuto? Posso darti una mano in Webmasters - Aiuto Software - Da Windows a Mac Mappa Utenti ItaliaMac [[miao]] Link al commento Condividi su altri siti Altre opzioni di condivisione...
magomac Inviato 7 Settembre 2006 Autore Segnala Condividi Inviato 7 Settembre 2006 $tabelladatabase = $_POST [classe]; Link al commento Condividi su altri siti Altre opzioni di condivisione...
magomac Inviato 7 Settembre 2006 Autore Segnala Condividi Inviato 7 Settembre 2006 e come errore mi dice che non trova una colonna chiamata come il numero velico che ho inserito (e mi sembra ovvio che nn la trovi, nn capisco perchè la cerchi) Link al commento Condividi su altri siti Altre opzioni di condivisione...
grigio60 Inviato 7 Settembre 2006 Segnala Condividi Inviato 7 Settembre 2006 fai una cosa, fai uno zip e mandami il codice originario, forse vado meglio se leggo direttamente quello che hai scritto e poi te lo rispedisco eventualmente corretto Serve aiuto? Posso darti una mano in Webmasters - Aiuto Software - Da Windows a Mac Mappa Utenti ItaliaMac [[miao]] Link al commento Condividi su altri siti Altre opzioni di condivisione...
magomac Inviato 7 Settembre 2006 Autore Segnala Condividi Inviato 7 Settembre 2006 Vuoi solo l'ultima pagina o tutte e tre? Link al commento Condividi su altri siti Altre opzioni di condivisione...
grigio60 Inviato 7 Settembre 2006 Segnala Condividi Inviato 7 Settembre 2006 per ora basta solo l'ultima Serve aiuto? Posso darti una mano in Webmasters - Aiuto Software - Da Windows a Mac Mappa Utenti ItaliaMac [[miao]] Link al commento Condividi su altri siti Altre opzioni di condivisione...
magomac Inviato 7 Settembre 2006 Autore Segnala Condividi Inviato 7 Settembre 2006 Ecco, avevo già zippato i tre file, faccio che mandarti tutto, tanto non pesano niente. http://www.percorsipsi.com/altro/andrea/grazie_di_tutto.zip Grazie Link al commento Condividi su altri siti Altre opzioni di condivisione...
grigio60 Inviato 7 Settembre 2006 Segnala Condividi Inviato 7 Settembre 2006 http://digilander.libero.it/grigio60/modificati.zip ho modificato solo il terzo file, fai una copia del tuo file originale per sicurezza Serve aiuto? Posso darti una mano in Webmasters - Aiuto Software - Da Windows a Mac Mappa Utenti ItaliaMac [[miao]] Link al commento Condividi su altri siti Altre opzioni di condivisione...
magomac Inviato 7 Settembre 2006 Autore Segnala Condividi Inviato 7 Settembre 2006 Ti ringrazio ma ho provato con entrambe le righe ed il risultato è sempre questo: Column count doesn't match value count at row 1 Link al commento Condividi su altri siti Altre opzioni di condivisione...
magomac Inviato 7 Settembre 2006 Autore Segnala Condividi Inviato 7 Settembre 2006 ah forse è per questo: il database oltre alle colonne che andiamo a riempire ha altre 7 colonne, che andranno riempite con una altra parte del programma (dovranno contenere i punteggi). Pensi che possa centrare, che dobbiamo dirgli di non riempirle? Link al commento Condividi su altri siti Altre opzioni di condivisione...
grigio60 Inviato 7 Settembre 2006 Segnala Condividi Inviato 7 Settembre 2006 sì è proprio quello che fa casino allora, il codice modificato che ti ho mandato presuppone che le prime quattro colonne della tabella siano (in ordine) "velico", "nome", "tesserafiv" e "circolo" per far tornare i conti modifica la query in questo modo: $query="INSERT INTO $tabelladatabase VALUES ('$numeroVelico', '$nomeAtleta', '$numeroFiv','$circoloVelico','','','','','','','');"; dove '', sono tre caratteri apice apice virgola (non virgolette virgola) Serve aiuto? Posso darti una mano in Webmasters - Aiuto Software - Da Windows a Mac Mappa Utenti ItaliaMac [[miao]] Link al commento Condividi su altri siti Altre opzioni di condivisione...
magomac Inviato 7 Settembre 2006 Autore Segnala Condividi Inviato 7 Settembre 2006 perfetto provo subito e ti faccio sapere Link al commento Condividi su altri siti Altre opzioni di condivisione...
Messaggi raccomandati
Archiviato
Questa discussione è archiviata e chiusa a future risposte.