- Home
- Categorie
- Coding e Sistemistica
- PHP
- Avvertimento query
-
Avvertimento query
Ciao a tutti!
Ho provato a fare la mia seconda query ma purtroppo mi dà questo avvertimento...[php]
" . mysql_error() );
<?php
mysql_connect("62","Sql","pass");
mysql_select_db("S_2");
//creo l'array con il giorno/mese/anno
$arr_data = explode ( "/", $_POST['data_di_nascita3'] );
//converto quella data in unix timestamp, così da poterlo ordinare (risulterà un numero intero di 12 cifre)
$data_di_nascita = mktime( 0 , 0 , 0 , $arr_data[1] , $arr_data[0] , $arr_data[2] );
//inserimento del nuovo cliente
$query = "INSERT INTO elenco_clienti VALUES (" .
" ''" .
", '" . addslashes ( $_POST['s'] ) . "'" .
", '" . addslashes ( $_POST['so'] ) . "'" .
", '" . addslashes ( $_POST['cognome'] ) . "'" .
", '" . addslashes ( $_POST['nome'] ) . "'" .
", '" . addslashes ( $_POST['sesso'] ) . "'" .
", " . $data_di_nascita . "" .
", '" . addslashes ( $_POST['citta_di_nascita'] ) . "'" .
", '" . addslashes ( $_POST['residenza'] ) . "'" .
", '" . addslashes ( $_POST['stato_civile'] ) . "'" .
", " . $figli . "" .
", '" . addslashes ( $_POST['telefono_abitazione'] ) . "'" .
", '" . addslashes ( $_POST['telefono_cellulare'] ) . "'" .
", '" . addslashes ( $_POST['utente_da_contattare'] ) . "'" .
", '" . addslashes ( $_POST['telefono_abitazione2'] ) . "'" .
", '" . addslashes ( $_POST['telefono_cellulare2'] ) . "'" .
", '" . addslashes ( $_POST['istruzione'] ) . "'" .
", '" . addslashes ( $_POST['professione'] ) . "'" .
", '" . addslashes ( $_POST['religione'] ) . "'" .
", '" . addslashes ( $POST['tipo_di'] ) . "'" .
", '" . addslashes ( $_POST['ingresso'] ) . "'" .
", '" . addslashes ( $_POST['a'] ) . "'" .
", '" . addslashes ( $_POST['precedenti'] ) . "'" .
", '" . addslashes ( $_POST['altri_problemi'] ) . "'" .
", '" . addslashes ( $_POST['a_domiciliare'] ) . "'" .
", " . time() . "" .
")";
$risultato = mysql_query( $query ) or die ( "query '$query' fallita
while ( $cliente = mysql_fetch_array( $risultato ) )
{echo '<a href="">'.stripslashes ( $cliente['cognome'] ) . ' ' . stripslashes ( $cliente['nome'] ) . '</a>, ' .
stripslashes ( $cliente['s'] ) . ''.stripslashes ( $cliente['so'] ) .
stripslashes ( $cliente['sesso'] ) .
' nato il ' . date( 'd/m/Y' , $cliente['data_di_nascita'] ) . ', ' .
' a ' . stripslashes ( $cliente['citta_di_nascita'] ) . '
'.stripslashes ( $cliente['residenza'] ) . '
'.stripslashes ( $cliente['stato_civile'] ) . '
'.stripslashes ( $cliente['figli'] ) . '
'.stripslashes ( $cliente['telefono_abitazione'] ) . '
'.stripslashes ( $cliente['telefono_cellulare'] ) . '
'.stripslashes ( $cliente['utente_da_contattare'] ) . '
'.stripslashes ( $cliente['telefono_abitazione2'] ) . '
'.stripslashes ( $cliente['telefono_cellulare2'] ) . '
'.stripslashes ( $cliente['istruzione'] ) . '
'.stripslashes ( $cliente['professione'] ) . '
'.stripslashes ( $cliente['religione'] ) . '
'.stripslashes ( $cliente['tipo_di_'] ) . '
'.stripslashes ( $cliente['ingresso'] ) . '
'.stripslashes ( $cliente['a'] ) . '
'.stripslashes ( $cliente['precedenti'] ) . '
'.stripslashes ( $cliente['altri_'] ) . '
'.stripslashes ( $cliente['domiciliare'] ) .
'accettato il ' . date( 'd/m/Y', $cliente['registrazione'] ) .
'alle ' . date( 'H:i' , $cliente['registrazione'] ) .
'<br>';
}
?>
[/php]
mi dà questo avvertimento...
Warning: mktime() expects parameter 5 to be long, string given in D:\Inetpub\webs\areacriticapediacom\public\clienti\form.php on line 8
query 'INSERT INTO elenco_clienti VALUES ( '', 'Traumatologia', 'Medicina', 'Pippolo', 'Mario', 'M', , 'Verona', 'Verona Via Bologna 11/23 ', 'Coniugato', , '010/4567543', '347/2123456', 'Figlio Antonio', '', '', 'Media superiore', 'Falegname in pensione', 'cattolica', 'Ordinario', '', 'Captopril', '', '', '', 1226758889)' fallita :::: 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 ' 'Verona', 'Verona Via Bologna 11/23 ', 'Coniugato', , '010/4567543', '347/2123' at line 1Potete aiutarmi per favore? Grazie tantissime!
-
Prova così:
$data_di_nascita =date ("M-d-Y",mktime( 0 , 0 , 0 , $arr_data[1] , $arr_data[0] , $arr_data[2] ));
Comunque, ti conviene creare 3 select per inserire la data di nascita, e non un unico campo di testo...
E poi, credo che l'errore sia anche qui:
"INSERT INTO elenco_clienti VALUES (" .
prova con "INSERT INTO elenco_clienti (campo1, campo2, campo3...campoN)VALUES (" .
-
Grazie, con la mia prima query avevo fatto la stessa sintassi e mi funzionava, ora non capisco perchè non funzioni...ho cambiato solo dei campi niente di più, piccole cose...
-
Cosa hai cambiato?
-
Ho aggiunto un pò di campi...
", '" . addslashes ( $_POST['nome'] ) . "'" .
e basta...