errore in inserimento dati in Data Base

asevenx

Utente Attivo
7 Nov 2009
312
0
16
salve, ho creato un form per l'inserimento di alcuni dati, e rispettivo file per l'inserimento nel db. Sicuramente c'è un errore perché i dati non vengono registrati nel db, e talaltro non ho a video nessun tipo di errore ma bensì una pagina tutta bianca.

la pagina php è la seguente
PHP:
//dati form
$squadra = $_POST['squadra'];
$tel1 = $_POST['tel1'];
$tel2 = $_POST['tel2'];
$email = $_POST['email'];
$nome1 = $_POST['nome1'];
$cognome1 = $_POST['cognome1'];
$nome2 = $_POST['nome2'];
$cognome2 = $_POST['cognome2'];
$nome3 = $_POST['nome3'];
$cognome3 = $_POST['cognome3'];
$nome4 = $_POST['nome4'];
$cognome4 = $_POST['cognome4'];
$nome5 = $_POST['nome5'];
$cognome5 = $_POST['cognome5'];
$nome6 = $_POST['nome6'];
$cognome6 = $_POST['cognome6'];
$nome7 = $_POST['nome7'];
$cognome7 = $_POST['cognome7'];
$nome8 = $_POST['nome8'];
$cognome8 = $_POST['cognome8'];
$nome9 = $_POST['nome9'];
$cognome9 = $_POST['cognome9'];
$nome10 = $_POST['nome10'];
$cognome10 = $_POST['cognome10'];
$nome11 = $_POST['nome11'];
$cognome11 = $_POST['cognome11'];
$nome12 = $_POST['nome12'];
$cognome12 = $_POST['cognome12'];
$nome13 = $_POST['nome13'];
$cognome13 = $_POST['cognome13'];
$nome14 = $_POST['nome14'];
$cognome14 = $_POST['cognome14'];
$nome15 = $_POST['nome15'];
$cognome15 = $_POST['cognome15'];

//connessione e invio al DB
$connessione = mysql_connect($host,$username,$password) or die("Connessione DB fallita"); 
mysql_select_db($database,$connessione) or die("Selezione DB fallita");

//controlli

//inserisci i dati del form
$caricasquadre = "INSERT INTO $tabella(squadra,tel1,tel2,email,nome1,cognome1,nome2,cognome2,nome3,cognome3,nome4,cognome4,nome5,
cognome5,nome6,cognome6,nome7,cognome7,nome8,cognome8,nome9,cognome9,nome10,cognome10,nome11,cognome11,nome12,cognome12,nome13,
cognome13,nome14,cognome14,nome15,cognome15)
VALUES('$squadra,'$tel1','$tel2','$email','$nome1','$cognome1','$nome2','$cognome2','$nome3','$cognome3','$nome4','$cognome4',
'$nome5','$cognome5','$nome6','$cognome6','$nome7','$cognome7','$nome8','$cognome8','$nome9','$cognome9','$nome10','$cognome10',
'$nome11','$cognome11','$nome12','$cognome12','$nome13','$cognome13','$nome14','$cognome14','$nome15','$cognome15')
"; 

mysql_query($caricasquadre) or die (mysql_error('Errore...'));  
echo "squadra inserita correttamente!";

sapreste dirmi che errore faccio? Come struttura mi sembra che sia la stessa che uso sempre. grazie
 

Nefyt

Utente Attivo
17 Apr 2012
1.102
0
0
$squadra = $_POST['squadra'];
$tel1 = $_POST['tel1'];
$tel2 = $_POST['tel2'];
$email = $_POST['email'];
$nome1 = $_POST['nome1'];
$cognome1 = $_POST['cognome1'];
$nome2 = $_POST['nome2'];
$cognome2 = $_POST['cognome2'];
$nome3 = $_POST['nome3'];
$cognome3 = $_POST['cognome3'];
$nome4 = $_POST['nome4'];
$cognome4 = $_POST['cognome4'];
$nome5 = $_POST['nome5'];
$cognome5 = $_POST['cognome5'];
$nome6 = $_POST['nome6'];
$cognome6 = $_POST['cognome6'];
$nome7 = $_POST['nome7'];
$cognome7 = $_POST['cognome7'];
$nome8 = $_POST['nome8'];
$cognome8 = $_POST['cognome8'];
$nome9 = $_POST['nome9'];
$cognome9 = $_POST['cognome9'];
$nome10 = $_POST['nome10'];
$cognome10 = $_POST['cognome10'];
$nome11 = $_POST['nome11'];
$cognome11 = $_POST['cognome11'];
$nome12 = $_POST['nome12'];
$cognome12 = $_POST['cognome12'];
$nome13 = $_POST['nome13'];
$cognome13 = $_POST['cognome13'];
$nome14 = $_POST['nome14'];
$cognome14 = $_POST['cognome14'];
$nome15 = $_POST['nome15'];
$cognome15 = $_POST['cognome15'];
Creare un array magari no? xD


Comunque metti in cima alla pagina error_reporting(E_ALL) e fammi sapere

Ps: lo script è vulnerabile a sql injection, quando hai trovato l'errore io opterei per fare cosi:
-Metti tutte le variabili in un array e usa addslashes(stripslashes($var)) per renderle sicure
 
Ultima modifica:

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
PHP:
mysql_query($caricasquadre) or die (mysql_error('Errore...'));
non ha senso, al limite:
PHP:
mysql_query($caricasquadre) or die("Errore...\n<br />Query: " . $caricasquadre . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error());
 
Ultima modifica:

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
ma bensì una pagina tutta bianca.

Potrebbe essere un richiamo di una pagina o di una classe che non esiste

e tutto li il codice di quella pagina?
 

asevenx

Utente Attivo
7 Nov 2009
312
0
16
Intanto ingrazio tutti per le risposte. Allora ho provato come mi avete detto, cioè inserendo error_reporting(E_ALL) in cima e apportando la modifica suggerita da Eliox e ho questo errore a video:

Errore...
Query: INSERT INTO squadra(squadra,tel1,tel2,email,nome1,cognome1,nome2,cognome2,nome3,cognome3,nome4,cognome4,nome5, cognome5,nome6,cognome6,nome7,cognome7,nome8,cognome8,nome9,cognome9,nome10,cognome10,nome11,cognome11,nome12,cognome12,nome13, cognome13,nome14,cognome14,nome15,cognome15) VALUES('dfg,'124','124','sfdsg','dfg','dfg','dfgdfs','gdsf','gdsf','gdf','dfsgdf','dfs', 'dfsgdfs','dfg','gdfg','dfsgdfs','gdfsg','df','dfgdfs','dsfg','gdsfg','gdfgdfgdfs','dsfgsdfg','sdf', 'gdfsg','fgdfsg','dfdfsgd','gdfsg','fd','gdf','gfd','dfgdf','dsfdfdfsdfsgsdfgdfgsdfg','fdgdf')
Dettagli: (1064) 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 '124','124','sfdsg','dfg','dfg','dfgdfs','gdsf','gdsf','gdf','dfs
ovviamente ho messo valori a caso

Creare un array magari no? xD
non so usare molto bene gli array
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao,
come segnalato dall'errore che hai postato

Codice:
VALUES('dfg,'124',

manca un apice dopo squadra

PHP:
VALUES('$squadra,'$tel1',
 

Nefyt

Utente Attivo
17 Apr 2012
1.102
0
0
Dettagli: (1064) 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 '124','124','sfdsg','dfg','dfg','dfgdfs','gdsf','g dsf','gdf','dfs

Puo essere causato dagli apostrofi non coperti (ti ho postato prima il codice per renderli sicuri)

Per l'altro errore prova a fare cosi

dopo questa riga INSERT INTO tabella(campo,campo...

fai cosi: `campo`,`campo`,...

e correggi anche l'errore detto da criric
 

asevenx

Utente Attivo
7 Nov 2009
312
0
16
ok, effettivamente era quello il problema, maledetti apici, ci casco sempre XD
Comunque ho creato la mia array (sperando di averla fatta bene, però funziona)
PHP:
$cognome = array(1 => 'cognome1','cognome2','cognome3','cognome4','cognome5','cognome6','cognome7','cognome8','cognome9','cognome10',
'cognome11','cognome12','cognome13','cognome14','cognome15',);
ora come faccio a renderla sicura?
 

Nefyt

Utente Attivo
17 Apr 2012
1.102
0
0
ok, effettivamente era quello il problema, maledetti apici, ci casco sempre XD
Comunque ho creato la mia array (sperando di averla fatta bene, però funziona)
PHP:
$cognome = array(1 => 'cognome1','cognome2','cognome3','cognome4','cognome5','cognome6','cognome7','cognome8','cognome9','cognome10',
'cognome11','cognome12','cognome13','cognome14','cognome15',);
ora come faccio a renderla sicura?
Non serve richiamare un valore in questo caso comunque si dovrebbe fare ad ogni nome se vuoi darli un valore
quindi correggi l'array levando 1 => e poi usa un foreach cosi:

PHP:
foreach($cognome as $cogn) return addslashes(stripslashes($cogn));
//se decidi di usare i valori fai ($cognome as $cogn=>$var) e sostituisci $cogn con $var nella funzione
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Scusate un attimo,

nell'array ci vorrebbero le variabili dei dati inviati via post quindi con il $ davanti

e cmq il post è già un array

si fa prima a ciclare direttamente il post

PHP:
foreach ($_POST as $key => $value) {
       $_POST[$key] = addslashes(stripslashes($value));
}
 

Nefyt

Utente Attivo
17 Apr 2012
1.102
0
0
Scusate un attimo,

nell'array ci vorrebbero le variabili dei dati inviati via post quindi con il $ davanti

e cmq il post è già un array

si fa prima a ciclare direttamente il post

PHP:
foreach ($_POST as $key => $value) {
       $_POST[$key] = addslashes(stripslashes($value));
}
Non ci avevo pensato è meglio cosi allora, cosi basiamo tutto sull'array dei post
 

asevenx

Utente Attivo
7 Nov 2009
312
0
16
Non so se ho capito bene, ho provato a fare così...
PHP:
$nomearray = array(1 => 'nome1','nome2','nome3','nome4','nome5','nome6','nome7','nome8','nome9','nome10','nome11','nome12','nome13','nome14','nome15',);

foreach ($_POST as $nome => $arraynome) { 
       $_POST[$nome] = addslashes(stripslashes($arraynome)); 
}

In questo modo mi fa inserire i nomi nel database, ma se volessi applicare un filtro per evitare l'inserimento di un nome già presente nel database come faccio? Premetto che ho creato il form con 15 input (nome1, nome2 ecc) che registrano i dati in una tabella del db, nel campo "nome", quindi la ricerca va effettuata su di un unico campo. Ho provato in questo modo ma non funziona...
PHP:
$cerca2 = "SELECT * FROM $tabella2 WHERE nome='$nome'"; 
$risultato2 = mysql_query($cerca2,$connessione);
$riga2 =mysql_num_rows($risultato2); 
if ($riga2>0){ 
	while($resrow2 = mysql_fetch_row($risultato2))
		{
		$nome= addslashes($resrow2[1]);
		echo "il giocatore " .$nome. " è già presente nel database";
		}
	
	} else {
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
PHP:
WHERE nome LIKE '%$nome%'

vuol dire che contenga la parola $nome

PS: per un nuovo problema dovresti aprire una nuova discussione
 
Discussioni simili
Autore Titolo Forum Risposte Data
G [Javascript] Errore inserimento dati Backend Node.js e workbench Javascript 1
M [PHP] errore in semplie form inserimento dati PHP 7
asevenx errore con l'inserimento dei dati nel database, campi vuoti Classic ASP 1
P errore su inserimento dati PHP 1
T errore asp (inserimento dati nel db) Classic ASP 1
K Inserimento query Errore 1366 PHP 4
L form multipla php sql,errore in inserimento MySQL 0
M Errore inserimento immagine PHP 3
F errore 1062 su campo nuovo MySQL 4
N Errore interno Access MS Access 2
R mi da errore dove inizia il while PHP 1
R Recupero di permalink di un sito che è stato eliminato per errore WordPress 5
R Yoast SEO errore semafori sempre rossi SEO e Posizionamento 0
S Visualizza l'errore di creazione in MSSQL Database 4
simgia Cordova errore quando cerco di emulare o creare la app Sviluppo app per Android 2
P Errore nell'indirizzo degli elementi HTML e CSS 2
Jensen Errore di sintassi con DELETE PHP 3
H Errore su array associativo PHP 1
FDF182 ERRORE 1292 PHP 4
P errore 404 con javascript Javascript 2
felino Windows 7: errore 80072EFE su Windows Update Windows e Software 1
A errore http://datatables.net/tn/7 PHP 4
M Errore visualizzazione meta tag title e description SEO e Posizionamento 1
A Errore durante il salvataggio Photoshop 0
M Errore configurazione motion detection nvr Hikvision DS-7616 IP Cam e Videosorveglianza 0
voldemort [c] Errore di segmentazione (core dump creato) C/C++ 1
T SSD - errore sistema Hardware 2
R Navigare sito con cURL, mi restituisce errore PHP 0
L File CSV con app inventor da errore Sviluppo app per Android 2
A Errore visualizzazione selezione testo Photoshop 0
I Postman 400 Errore di richiesta non valida Programmazione 0
S Errore PHP - Notice: Undefined index ... PHP 14
U Campo vuoto data errore Fatal error: PHP 2
R Errore UPDATE tabella mysql PHP 1
R W10 Segnalazione di errore su terminale USB Windows e Software 0
G non riesco a capire quale sia l'errore [SQL] MySQL 2
I Errore 80040220 nella newsletter con paginazione Classic ASP 0
E Errore di lettura php in html PHP 8
A php metodo post jquery non da mai errore jQuery 4
W Errore di run-time di Microsoft VBScript error '800a0035' Impossibile trovare il file Classic ASP 0
B Errore unexpected '$variabile' (T_VARIABLE) in your code on line PHP 2
M errore dopo passaggio Php 7.2 PHP 6
S -> Errore PHP 8
S Errore "ftp_put(): Can't open that file: Permission denied" PHP 1
P Errore telecamere hdcvi dahua IP Cam e Videosorveglianza 16
M Errore JavaScript per php [objeto HTMLParagraphElement] PHP 0
F [PHP]Errore registrazione PHP 8
MarcoGrazia [PHP] Download di file con errore all'interno. PHP 1
V [ORACLE] Errore ora-06512 at sys.utl_file Oracle 0
A [WordPress] Errore Plugin WordPress 0

Discussioni simili