evitare inserimento dati già presenti in DataBase

asevenx

Utente Attivo
7 Nov 2009
312
0
16
salve, avevo già chiesto in un'altro post ma mi è stato detto di aprire una nuova discussione. Ho creato un db in cui vorrei inserire dei dati (nomi di persone) attraverso un apposito form. Vorrei che quando si inserisca un nome già presente mi appaia un messaggio di avviso. Il problema sta nel fatto che vorrei inserire fino a 15 nomi e salvarli nel database tutti insieme, bloccando tutto quando appunto riscontra un nome già presente.
Ho provato (grazie all'aiuto del forum) creando un array per i nomi e una quary che rintracci i dati presenti, ma non va.
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));
PHP:
$cerca2 = "SELECT * FROM $tabella2 WHERE nome LIKE '%$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 {
come posso fare?
 

Nefyt

Utente Attivo
17 Apr 2012
1.102
0
0
Perchè utilizzare un while?

Da quello che vedo sembra che sia tutto nel foreach no? Allora potresti fare semplicemente cosi:

PHP:
$cerca2 = "SELECT * FROM $tabella2 WHERE nome = '".$_POST[$nome]."'  ";  
$risultato2 = mysql_query($cerca2,$connessione);  
if (mysql_num_rows($risultato2)>0){  
    echo $_POST[$nome] . "è gia presente";
    } else {
//altro 
}
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao,
la sintassi dell'array è sbagliata hai messo una virgola in piu e non ho capito bene a cosa ti serve

puoi fare un esempio di cosa hai nel campo "nome"?
 

asevenx

Utente Attivo
7 Nov 2009
312
0
16
PHP:
Ciao,
la sintassi dell'array è sbagliata hai messo una virgola in piu e non ho capito bene a cosa ti serve

puoi fare un esempio di cosa hai nel campo "nome"?
nel campo nome ci vanno dati tipo "Mario Rossi, Carlo Bianchi, ecc". Ho fatto un array perché nel form ci sono 15 caselle di input dove inserire i nomi, che poi vanno ad inserirsi nel database nel campo "nome", evitando quindi di fare 15 query per cercarne i doppioni, almeno è quello che vorrei.
 

Nefyt

Utente Attivo
17 Apr 2012
1.102
0
0
PHP:
Ciao,
la sintassi dell'array è sbagliata hai messo una virgola in piu e non ho capito bene a cosa ti serve

puoi fare un esempio di cosa hai nel campo "nome"?
nel campo nome ci vanno dati tipo "Mario Rossi, Carlo Bianchi, ecc". Ho fatto un array perché nel form ci sono 15 caselle di input dove inserire i nomi, che poi vanno ad inserirsi nel database nel campo "nome", evitando quindi di fare 15 query per cercarne i doppioni, almeno è quello che vorrei.
criric intendeva di togliere la virgola qui 'nome15', perchè è sbagliato essendo l'ultimo campo, comunque hai provato con l'esempio
che ti ho postato sopra dentro al foreach?
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao,

se nome contiene una stringa con tutti i nomi separati da virgola o non

dovresti riuscire a risolvere con LIKE

PHP:
<?php
$cerca2 = "SELECT nome FROM $tabella2 WHERE nome LIKE '%$nome%'  ";
$risultato2 = mysql_query($cerca2, $connessione);
$riga2 = mysql_num_rows($risultato2);
if ($riga2 > 0) {
    echo "il giocatore " . $nome . " è già presente nel database";
} else {
    
}
?>
 

asevenx

Utente Attivo
7 Nov 2009
312
0
16
criric intendeva di togliere la virgola qui 'nome15', perchè è sbagliato essendo l'ultimo campo, comunque hai provato con l'esempio
che ti ho postato sopra dentro al foreach?
si, ma non ho capito bene come funzioni, dove chiude il foreach e l'else, inoltre la parte dell'array l'ha devo inserire?
 

asevenx

Utente Attivo
7 Nov 2009
312
0
16
se nome contiene una stringa con tutti i nomi separati da virgola o non
no, i nomi vengono inseriti di volta in volta nel database

NOME
----------------
Mario Rossi
----------------
Carlo Bianchi
----------------
Luca De Angelis
----------------
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Potresti provare piu o meno cosi:

PHP:
foreach ($_POST as $nome => $arraynome) {
    $_POST[$nome] = addslashes(stripslashes($arraynome));
    $cerca2 = "SELECT * FROM $tabella2 WHERE nome = '" . $_POST[$nome] . "'  ";
    $risultato2 = mysql_query($cerca2, $connessione);
    if (mysql_num_rows($risultato2) > 0) {
        $presente = true;
        // esci dal ciclo 
        break;
    }
}
if($presente === false) {    
    // fai la insert
}else{
    echo $_POST[$nome] . "è gia presente";
}

ma l'array non ti serve

EDIT per fermare il ciclo usa break, ho sbagliato
 
Ultima modifica:

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
se non ho capito male seguendo i vari post, tu vorresti che se un nome inserito nel form è gia in tabella non inseririlo, giusto?
se è così senza crearti tanti array

PHP:
<?php
//....
if(isset($_POST['submit'])){
	$q=mysql_query("SELECT nome FROM tabella");
	$nomi=mysql_fetch_array($q);
	foreach($_POST['nome'] as $valore){
		if(in_array($valore, $nomi)){
			echo "il nome $valore gia nel db<br>";
		}else{
			//quello che devi fare se il nome non c'è (una insert?)
		}
	}
}
?>
<form action="" method="post">
<?php
for($k=0;$k<15;$k++){
echo "<input name=\"nome[$k]\" type=\"text\"><br>";
}
?>
<input type="submit" name="Submit" value="Invia">
</form>

guarda che ho semplificato senza mettere altri controlli
se non ho capito butta tutto nel cestino
 

asevenx

Utente Attivo
7 Nov 2009
312
0
16
per non saper ne leggere ne scrivere, ho riscritto tutta la pagina che carica i dati nel db ignorando totalmente le nozioni sugli array, anche perché iniziavo a perdermi. Sono 200 righe ma funziona perlomeno.
PHP:
//dati form
$citta = $_POST['citta'];
$tel1 = $_POST['tel1'];
$tel2 = $_POST['tel2'];
$email = $_POST['email'];

$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)); 
}


//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
$cercasq = "SELECT * FROM $tabella WHERE citta='$citta'"; 
$risultatosq = mysql_query($cercasq,$connessione);
$rigasq =mysql_num_rows($risultatosq); 
if ($rigasq>0){ 
	while($resrowsq = mysql_fetch_row($risultatosq))
		{
		$citta= addslashes($resrowsq[1]);
		echo "la citta " .$citta. " è già presente nel database<br />";
		}
	
	} else {
		

if ($nome1 =='' OR $nome2 =='' OR $nome3 =='' OR $nome4 =='' OR $nome5 =='' OR $nome6 =='' OR $nome7 ==''){
		echo "Devi inserire almeno 7 giocatori<br>";
	
	} else {
		
//inserisci i dati del form
$caricasquadre = "INSERT INTO $tabella (id,citta,tel1,tel2,email) VALUES('','$citta','$tel1','$tel2','$email')"; 
mysql_query($caricasquadre) or die("Errore...\n<br />Query: " . $caricasquadre . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error()); 
echo "citta inserita correttamente!<br>";

$cerca1 = "SELECT nome FROM $tabella2 WHERE nome LIKE '%$nome1%'  "; 
$risultato1 = mysql_query($cerca1, $connessione); 
$riga1 = mysql_num_rows($risultato1); 
if ($riga1 > 0) { 
    echo "il giocatore " . $nome1 . " è già presente nel database<br />"; 
} else { 
$caricagiocatore1 = "INSERT INTO $tabella2 (id, nome, citta, eta, via, cap) VALUES ('','$nome1','$citta','','','')";
mysql_query($caricagiocatore1) or die("Errore...\n<br />Query: " . $caricagiocatore1 . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error()); 
echo "giocatore $nome1 inserito correttamente!<br>";
}

$cerca2 = "SELECT nome FROM $tabella2 WHERE nome LIKE '%$nome2%'  "; 
$risultato2 = mysql_query($cerca2, $connessione); 
$riga2 = mysql_num_rows($risultato2); 
if ($riga2 > 0) { 
    echo "il giocatore " . $nome2 . " è già presente nel database<br />"; 
} else { 
$caricagiocatore2 = "INSERT INTO $tabella2 (id, nome, citta, eta, via, cap) VALUES ('','$nome2','$citta','','','')";
mysql_query($caricagiocatore2) or die("Errore...\n<br />Query: " . $caricagiocatore2 . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error()); 
echo "giocatore $nome2 inserito correttamente!<br>";
}

$cerca3 = "SELECT nome FROM $tabella2 WHERE nome LIKE '%$nome3%'  "; 
$risultato3 = mysql_query($cerca3, $connessione); 
$riga3 = mysql_num_rows($risultato3); 
if ($riga3 > 0) { 
    echo "il giocatore " . $nome3 . " è già presente nel database<br />"; 
} else { 
$caricagiocatore3 = "INSERT INTO $tabella2 (id, nome, citta, eta, via, cap) VALUES ('','$nome3','$citta','','','')";
mysql_query($caricagiocatore3) or die("Errore...\n<br />Query: " . $caricagiocatore3 . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error()); 
echo "giocatore $nome3 inserito correttamente!<br>";
}

$cerca4 = "SELECT nome FROM $tabella2 WHERE nome LIKE '%$nome4%'  "; 
$risultato4 = mysql_query($cerca4, $connessione); 
$riga4 = mysql_num_rows($risultato4); 
if ($riga4 > 0) { 
    echo "il giocatore " . $nome4 . " è già presente nel database<br />"; 
} else { 
$caricagiocatore4 = "INSERT INTO $tabella2 (id, nome, citta, eta, via, cap) VALUES ('','$nome4','$citta','','','')";
mysql_query($caricagiocatore4) or die("Errore...\n<br />Query: " . $caricagiocatore4 . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error()); 
echo "giocatore $nome4 inserito correttamente!<br>";
}

$cerca5 = "SELECT nome FROM $tabella2 WHERE nome LIKE '%$nome5%'  "; 
$risultato5 = mysql_query($cerca5, $connessione); 
$riga5 = mysql_num_rows($risultato5); 
if ($riga5 > 0) { 
    echo "il giocatore " . $nome5 . " è già presente nel database<br />"; 
} else { 
$caricagiocatore5 = "INSERT INTO $tabella2 (id, nome, citta, eta, via, cap) VALUES ('','$nome5','$citta','','','')";
mysql_query($caricagiocatore5) or die("Errore...\n<br />Query: " . $caricagiocatore5 . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error()); 
echo "giocatore $nome5 inserito correttamente!<br>";
}

$cerca6 = "SELECT nome FROM $tabella2 WHERE nome LIKE '%$nome6%'  "; 
$risultato6 = mysql_query($cerca6, $connessione); 
$riga6 = mysql_num_rows($risultato6); 
if ($riga6 > 0) { 
    echo "il giocatore " . $nome6 . " è già presente nel database<br />"; 
} else { 
$caricagiocatore6 = "INSERT INTO $tabella2 (id, nome, citta, eta, via, cap) VALUES ('','$nome6','$citta','','','')";
mysql_query($caricagiocatore6) or die("Errore...\n<br />Query: " . $caricagiocatore6 . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error()); 
echo "giocatore $nome6 inserito correttamente!<br>";
}

$cerca7 = "SELECT nome FROM $tabella2 WHERE nome LIKE '%$nome7%'  "; 
$risultato7 = mysql_query($cerca7, $connessione); 
$riga7 = mysql_num_rows($risultato7); 
if ($riga7 > 0) { 
    echo "il giocatore " . $nome7 . " è già presente nel database<br />"; 
} else { 
$caricagiocatore7 = "INSERT INTO $tabella2 (id, nome, citta, eta, via, cap) VALUES ('','$nome7','$citta','','','')";
mysql_query($caricagiocatore7) or die("Errore...\n<br />Query: " . $caricagiocatore7 . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error()); 
echo "giocatore $nome7 inserito correttamente!<br>";
}

if ($nome8 !='') {
$caricagiocatore8 = "INSERT INTO $tabella2 (id, nome, citta, eta, via, cap) VALUES ('','$nome8','$citta','','','')";
mysql_query($caricagiocatore8) or die("Errore...\n<br />Query: " . $caricagiocatore8 . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error()); 
echo "giocatore $nome8 inserito correttamente!<br>";
$cerca8 = "SELECT nome FROM $tabella2 WHERE nome LIKE '%$nome8%'  "; 
$risultato8 = mysql_query($cerca8, $connessione); 
$riga8 = mysql_num_rows($risultato8); 
if ($riga8 > 0) { 
    echo "il giocatore " . $nome8 . " è già presente nel database<br />";}}

if ($nome9 !='') {
$caricagiocatore9 = "INSERT INTO $tabella2 (id, nome, citta, eta, via, cap) VALUES ('','$nome9','$citta','','','')";
mysql_query($caricagiocatore9) or die("Errore...\n<br />Query: " . $caricagiocatore9 . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error()); 
echo "giocatore $nome9 inserito correttamente!<br>";
$cerca9 = "SELECT nome FROM $tabella2 WHERE nome LIKE '%$nome9%'  "; 
$risultato9 = mysql_query($cerca9, $connessione); 
$riga9 = mysql_num_rows($risultato9); 
if ($riga9 > 0) { 
    echo "il giocatore " . $nome9 . " è già presente nel database<br />";}}

if ($nome10 !='') {
$caricagiocatore10 = "INSERT INTO $tabella2 (id, nome, citta, eta, via, cap) VALUES ('','$nome10','$citta','','','')";
mysql_query($caricagiocatore10) or die("Errore...\n<br />Query: " . $caricagiocatore10 . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error()); 
echo "giocatore $nome10 inserito correttamente!<br>";
$cerca10 = "SELECT nome FROM $tabella2 WHERE nome LIKE '%$nome10%'  "; 
$risultato10 = mysql_query($cerca10, $connessione); 
$riga10 = mysql_num_rows($risultato10); 
if ($riga10 > 0) { 
    echo "il giocatore " . $nome10 . " è già presente nel database<br />";}}

if ($nome11 !='') {
$caricagiocatore11 = "INSERT INTO $tabella2 (id, nome, citta, eta, via, cap) VALUES ('','$nome11','$citta','','','')";
mysql_query($caricagiocatore11) or die("Errore...\n<br />Query: " . $caricagiocatore11 . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error()); 
echo "giocatore $nome11 inserito correttamente!<br>";
$cerca11 = "SELECT nome FROM $tabella2 WHERE nome LIKE '%$nome11%'  "; 
$risultato11 = mysql_query($cerca11, $connessione); 
$riga11 = mysql_num_rows($risultato11); 
if ($riga11 > 0) { 
    echo "il giocatore " . $nome11 . " è già presente nel database<br />";}}

if ($nome12 !='') {
$caricagiocatore12 = "INSERT INTO $tabella2 (id, nome, citta, eta, via, cap) VALUES ('','$nome12','$citta','','','')";
mysql_query($caricagiocatore12) or die("Errore...\n<br />Query: " . $caricagiocatore12 . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error()); 
echo "giocatore $nome12 inserito correttamente!<br>";
$cerca12 = "SELECT nome FROM $tabella2 WHERE nome LIKE '%$nome12%'  "; 
$risultato12 = mysql_query($cerca12, $connessione); 
$riga12 = mysql_num_rows($risultato12); 
if ($riga12 > 0) { 
    echo "il giocatore " . $nome12 . " è già presente nel database<br />";}}

if ($nome13 !='') {
$caricagiocatore13 = "INSERT INTO $tabella2 (id, nome, citta, eta, via, cap) VALUES ('','$nome13','$citta','','','')";
mysql_query($caricagiocatore13) or die("Errore...\n<br />Query: " . $caricagiocatore13 . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error()); 
echo "giocatore $nome13 inserito correttamente!<br>";
$cerca13 = "SELECT nome FROM $tabella2 WHERE nome LIKE '%$nome13%'  "; 
$risultato13 = mysql_query($cerca13, $connessione); 
$riga13 = mysql_num_rows($risultato13); 
if ($riga13 > 0) { 
    echo "il giocatore " . $nome13 . " è già presente nel database<br />";}}

if ($nome14 !='') {
$caricagiocatore14 = "INSERT INTO $tabella2 (id, nome, citta, eta, via, cap) VALUES ('','$nome14','$citta','','','')";
mysql_query($caricagiocatore14) or die("Errore...\n<br />Query: " . $caricagiocatore14 . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error()); 
echo "giocatore $nome14 inserito correttamente!<br>";
$cerca14 = "SELECT nome FROM $tabella2 WHERE nome LIKE '%$nome14%'  "; 
$risultato14 = mysql_query($cerca14, $connessione); 
$riga14 = mysql_num_rows($risultato14); 
if ($riga14 > 0) { 
    echo "il giocatore " . $nome14 . " è già presente nel database<br />";}}

if ($nome15 !='') {
$caricagiocatore15 = "INSERT INTO $tabella2 (id, nome, citta, eta, via, cap) VALUES ('','$nome15','$citta','','','')";
mysql_query($caricagiocatore15) or die("Errore...\n<br />Query: " . $caricagiocatore15 . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error()); 
echo "giocatore $nome15 inserito correttamente!<br>";
$cerca15 = "SELECT nome FROM $tabella2 WHERE nome LIKE '%$nome15%'  "; 
$risultato15 = mysql_query($cerca15, $connessione); 
$riga15 = mysql_num_rows($risultato15); 
if ($riga15 > 0) { 
    echo "il giocatore " . $nome15 . " è già presente nel database<br />";}}

	}
}
ora da qui come posso "snellire" e ottimizzare il tutto, con gli array, cicli for ecc?
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
ciao,
il ciclo foreach per ripulire i dati dovresti metterlo prima di valorizzare le variabili in questo modo:

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

$citta = $_POST['citta'];
$tel1 = $_POST['tel1'];
$tel2 = $_POST['tel2'];
$email = $_POST['email'];
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao, mi è tornato in mente un esempio di Borgo fatto un po di tempo fa

http://forum.mrwebmaster.it/php/28827-login-mysql-sessioni-livelli-logout-2.html

post numero #15

potresti evitare di scrivere ogni volta una riga per valorizzare tutte le variabili

PHP:
$citta = $_POST['citta'];
$tel1 = $_POST['tel1'];
$tel2 = $_POST['tel2'];
$email = $_POST['email']; 
// etc

cambiando il ciclo in questo modo
PHP:
foreach ($_POST as $nome => $arraynome) {
    ${$nome} = addslashes(stripslashes($arraynome));
}

ti ritroverai una variabile per ogni campo del form con il rispettivo name e value
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
questa la pui togliere:

PHP:
$nomearray = array(1 => 'nome1', 'nome2', 'nome3', 'nome4', 'nome5', 'nome6', 'nome7', 'nome8', 'nome9', 'nome10', 'nome11', 'nome12', 'nome13',
    'nome14', 'nome15');
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Per evitare di riscrivere le query 15 volte puoi provare cosi:

PHP:
for ($i = 1; $i <= 15; $i++) {
            $cerca = "SELECT nome FROM $tabella2 WHERE nome LIKE '%" . ${'nome' . $i} . "%'";
            $risultato = mysql_query($cerca, $connessione);
            $riga = mysql_num_rows($risultato);
            if ($riga > 0) {
                echo "il giocatore " . ${'nome' . $i} . " è già presente nel database<br />";
            } else {
                $caricagiocatore = "INSERT INTO $tabella2 (id, nome, citta, eta, via, cap) VALUES ('','${'nome' . $i}','$citta','','','')";
                mysql_query($caricagiocatore) or die("Errore...\n<br />Query: " . $caricagiocatore1 . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error());
                echo "giocatore ${'nome' . $i} inserito correttamente!<br>";
            }
        }
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Non mi pare che serva qui il ciclo while

PHP:
if ($rigasq > 0) {
    while ($resrowsq = mysql_fetch_row($risultatosq)) {
        $citta = addslashes($resrowsq[1]);
        echo "la citta " . $citta . " è già presente nel database<br />";
    }
}

la variabile $citta è gia valorizzata dovrebbe bastarti cosi:

PHP:
if ($rigasq > 0) {
    echo "la citta " . $citta . " è già presente nel database<br />";
}

Ecco il codice completo fino ad ora
PHP:
<?php

//dati form
foreach ($_POST as $nome => $arraynome) {
    ${$nome} = addslashes(stripslashes($arraynome));
}
//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
$cercasq = "SELECT * FROM $tabella WHERE citta='$citta'";
$risultatosq = mysql_query($cercasq, $connessione);
$rigasq = mysql_num_rows($risultatosq);
if ($rigasq > 0) {
    echo "la citta " . $citta . " è già presente nel database<br />";
} else {

    if ($nome1 == '' OR $nome2 == '' OR $nome3 == '' OR $nome4 == '' OR $nome5 == '' OR $nome6 == '' OR $nome7 == '') {
        echo "Devi inserire almeno 7 giocatori<br>";
    } else {

//inserisci i dati del form
        $caricasquadre = "INSERT INTO $tabella (id,citta,tel1,tel2,email) VALUES('','$citta','$tel1','$tel2','$email')";
        mysql_query($caricasquadre) or die("Errore...\n<br />Query: " . $caricasquadre . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error());
        echo "citta inserita correttamente!<br>";

        for ($i = 1; $i <= 15; $i++) {
            $cerca = "SELECT nome FROM $tabella2 WHERE nome LIKE '%" . ${'nome' . $i} . "%'";
            $risultato = mysql_query($cerca, $connessione);
            $riga = mysql_num_rows($risultato);
            if ($riga > 0) {
                echo "il giocatore " . ${'nome' . $i} . " è già presente nel database<br />";
            } else {
                $caricagiocatore = "INSERT INTO $tabella2 (id, nome, citta, eta, via, cap) VALUES ('','${'nome' . $i}','$citta','','','')";
                mysql_query($caricagiocatore) or die("Errore...\n<br />Query: " . $caricagiocatore1 . "<br />\nDettagli: (" . mysql_errno() . ") " . mysql_error());
                echo "giocatore ${'nome' . $i} inserito correttamente!<br>";
            }
        }
    }
}
?>

dagli una letta , testalo (perchè io non l'ho fatto) e fammi sapere


non ho visto dove valorizzi $tabella e $tabella2
 
Ultima modifica:

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
piccolo appunto per tieuho: se leggi il regolamento
1.3 Questo forum è riservato a discussioni in lingua Italiana, non sono ammessi, pertanto, messaggi in Inglese o in altre lingue diverse dall'Italiano.
 

asevenx

Utente Attivo
7 Nov 2009
312
0
16
Ringrazio nuovamente tutti per le risposte. Tutti gli accorgimenti sembrano funzionare correttamente, volevo chiedere un chiarimento, che differenza c'è tra questo:
PHP:
${'nome' . $i}
e una cosa del genere?
PHP:
'nome".$j."eta".$i."_c'
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao

questa e una variabile di variabile cha assume il nome in funzione di $i
PHP:
<?php
//${'nome' . $i}
//es. se $si =33 è come se tu scrivessi
//$nome33 che, non avrebbe senso se non venisse inizializzata es
${'nome' . $i}="pinco pallo";
//se $i era 33 è come se tu avessi scritto
$nome33="pinco pallo";
?>
il secondo è un concatenamento di valori stringa e anche questo non avrebbe senzo se non lo attirbuissi ad una variabile o non facessi es. un echi
PHP:
<?php
//es $j=Asdrubale (a parte gli spazi)
echo 'nome".$j."eta".$i."_c';
 //output: nome Asdrubale eta 33_c
?>
cioè in pratica la prima è una variabile la seconda una stringa

spero di essere stato chiaro
 
Discussioni simili
Autore Titolo Forum Risposte Data
I Evitare inserimento dati in database con refresh PHP 5
D evitare di inserirre duplicati in mysql PHP 4
W Evitare ridondanza dei dati Classic ASP 3
G Evitare che mi continui ad arrivare in alice mail spam Posta Elettronica 2
U Posizionamento Rack nel locale tecnico ed eventuali accortezze per evitare incendi Reti LAN e Wireless 1
D consiglio evitare truffe Annunci servizi di Social Media Marketing 11
andreas88 Evitare che la mia idea venga rubata Leggi, Normative e Fisco 5
C [PHP] Ricerca multipla, evitare if PHP 4
elpirata [PHP] Evitare la visualizzazione del carattere di nuova linea \r\n PHP 5
A [Javascript] [CSS] elenco affiancato per evitare scorrimento pagina Javascript 4
michele357 TAG HTML: Come evitare che venga riprodotto un file .mp3 senza cancellarlo HTML e CSS 1
M Evitare la compilazione automatica NomeUtente e Password con Chrome PHP 2
M Evitare rischio assunzione programmatori per nuove aziende? Leggi, Normative e Fisco 3
Antonio_Cantaro Cookie rendirizamento per evitare la loro scrittura Javascript 1
A Evitare estrazione record doppioni PHP 2
felino Scambio link: consigliato o meglio evitare? SEO e Posizionamento 0
xone Evitare Meta Tag duplicati su paginazione php PHP 2
A [risolto] evitare refresh index dopo recaptcha sbagliato PHP 7
J Evitare al refresh della pagina la ritrasmissione di un form PHP 1
G come evitare l'a capo del testo nelle tabelle HTML e CSS 4
M Evitare SQL Injection senza deformare testo PHP 3
M Confrontare data, ora e aula per evitare sovrapposizioni PHP 8
L Paginazione file evitare di inserire questi \ o altro nella get PHP 1
Shyson Evitare che la pagina si ricarichi jQuery 7
Z evitare il download diretto di file PHP 2
zerobit Evitare records duplicati nel database PHP 6
S urgentissimo necessità di script per evitare di far visualizzare immagini "rubate" Javascript 12
L invio multiplo e refresh pagina come evitare? PHP 3
A Evitare che una pagina sia accessibile digitando l'url PHP 2
R Evitare SPAM nelle tabelle DI MYSQL MySQL 6
T Evitare refresh pagina Javascript 7
riminese77 Evitare doppio click nelle pagine ASP.NET 5
alessandro1997 Evitare che span finisca sopra i bordi HTML e CSS 9
max_400 Evitare lo scatto di fine foto e aumentare la velocità Flash 2
P [checkbox e className] evitare di richiamare più volte la stessa funzione Javascript 0
M Evitare i frames HTML e CSS 6
Z Evitare la ridondanza PHP 3
minatore evitare doppioni PHP 9
I Come evitare che il preload compaia 2 volte? Flash 1
G Come evitare in Excel messaggio per apertura pdf? Windows e Software 2
G Stampante canon: evitare il taglio nel caricare? Hardware 0
T come evitare file ldb Database 4
I Menu in flash è da evitare? SEO e Posizionamento 2
E modifica js per evitare il blank Javascript 0
P Help filtraggio input...Evitare caratteri Javascript 0
B Evitare i motori di ricerca HTML e CSS 2
B Evitare che explorer blocchi pulsanti flash Flash 3
A Controllo per evitare inserimenti di spazi Javascript 1
M Evitare blocco pop-up Classic ASP 0
P evitare la scrittura in un campo Javascript 5

Discussioni simili