Inserimento loop in una INSERT query in PHP e MySQL

Garaux

Utente Attivo
24 Feb 2013
50
0
0
Salve, ho un quesito da porre.
Brevemente…voglio inserire dei dati in un database utilizzando tre select a loro volta suddivisi per ordine alfabetico.
I valori delle select vengono estrapolati dal database come mostrato sotto per poi essere visualizzati nel form.

PHP:
//QUERY SQL FOR LINGUE FROM A-F
$richiestaSQL = "SELECT id, english FROM lingue WHERE english BETWEEN 'A' AND 'G' ORDER BY english ASC";
$resultOne = mysql_query($richiestaSQL , $connection);


 
if(!$resultOne) {
die ("I dati non sono stati inseriti nel database: <br />". mysql_error( ));
	
}





//QUERY SQL FOR LINGUE FROM G-N
$richiestaSQL = "SELECT id, english FROM lingue WHERE english BETWEEN 'G' AND 'O' ORDER BY english ASC";
$resultTwo = mysql_query($richiestaSQL , $connection);


 
if(!$resultTwo) {
die ("I dati non sono stati inseriti nel database: <br />". mysql_error( ));
	
}




//QUERY SQL FOR LINGUE FROM M-Z
$richiestaSQL = "SELECT id, english FROM lingue WHERE english > 'O' ORDER BY english ASC";
$resultThree = mysql_query($richiestaSQL , $connection);


 
if(!$resultThree) {
die ("I dati non sono stati inseriti nel database: <br />". mysql_error( ));
	
}


Fatto questo invio il form per richiamare lo script per inserire i dati. Creo quindi un array del valore proveniente dalle select (il valore è sempre uno, mai tre. L 'utente può sceglierne uno da tre select suddivisi per ordine alfabetico).
Creo quindi un loop prima della query, ma poi a video vengono visualizzate tre righe: due vuote ed una con il valore espresso dall'utente.
Domanda: come faccio ad inserire solo quel valore proveniente da uno dei tre select?

PS: la colonna interessata è lingueID.

Spero di essermi spiegato bene.

Grazie

PHP:
$form = $_POST['submit'];

//RICHIAMO I VALORI ESPRESSI DAI SELECT
$lingueOne = $_POST['lingueOne']; 
$lingueTwo = $_POST['lingueTwo']; 
$lingueThree = $_POST['lingueThree']; 


if(isset($form)) {
include 'connection.php';

$lingue = array($lingueOne, $lingueTwo, $lingueThree);
foreach($lingue as $value) {
//QUERY SQL
$richiestaSQL = "INSERT INTO collezione (nameItem, sku, opzioneOne, descrizione, lingueID, categoriaID, flagID) VALUES ('$nameItem', '$sku', '$opzione', '$descrizione', '$value', '$categoria', '$flag' )";
$result = mysql_query($richiestaSQL , $connection);
}
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao, controlla che non sia vuoto prima di fare la INSERT
PHP:
if(!empty($value)) {
    // fai la insert
}
ps:
la logica della pagina php cmq non è corretta : dovresti controllare se il post è settato prima di valorizzare le variabili
il post poi è già un array potresti ciclarlo direttamente senza creare un nuovo array
 

Garaux

Utente Attivo
24 Feb 2013
50
0
0
Ciao Ciric e grazie per la risposta e gli accorgimenti.

Ho fatto cosi.
Valido l'invio delle select e creo i valori in tre variabili


PHP:
//VERIFICO INVIO LINGUE
if(isset($_POST['lingueOne']) && isset($_POST['lingueTwo']) && isset($_POST['lingueThree'])) {

$lingueOne = $_POST['lingueOne']; 
$lingueTwo = $_POST['lingueTwo']; 
$lingueThree = $_POST['lingueThree']; 
}


Poi se nessun valore è vuoto chiamo la query insert.
Non ho creato un nuovo ciclo per i valori delle select, ma le ho raggruppate tutte in una variabile.
Non so se dal punto di vista della sintassi è giusto, ma vedo che ora funziona.

PHP:
$lingue = $lingueOne;
$lingue .= $lingueTwo;
$lingue .= $lingueThree;

if(!empty($lingue)) {
$richiestaSQL = "INSERT INTO collezione (nameItem, sku, opzioneOne, descrizione, lingueID, categoriaID, flagID) VALUES ('$nameItem', '$sku', '$opzione', '$descrizione', '$lingue', '$categoria', '$flag' )";
 
Discussioni simili
Autore Titolo Forum Risposte Data
P Inserimento <div> ogni 2 articoli in un loop Wordpress WordPress 8
D Inserimento video mp4 HTML e CSS 0
L inserimento form dati multipli ? PHP 0
G Appicazione HTML per inserimento dai in Database Access Microsoft HTML e CSS 0
J Form inserimento dati in database Ajax 1
D modificare questo codice per inserimento in text e non in tabella jQuery 1
R [C#] Automatizzare un inserimento di un Post su un Gruppo Facebook .NET Framework 0
M Aiuto con inserimento immagini WordPress 6
elpirata Impedire inserimento data di oggi e date passate jQuery 39
A Inserimento dati nel database tramite form + altre operazioni PHP 18
W Email conferma inserimento Classic ASP 0
S Inserimento multiplo non richiesto PHP 2
P inserimento icone social tramite html HTML e CSS 1
L form multipla php sql,errore in inserimento MySQL 0
Alex_70 Inserimento dati a cascata PHP 204
T Da xsd a xml ed inserimento dati in excel XML 0
M Problema inserimento parole con apostrofo nel db PHP 5
C [RISOLTO]Inserimento variabile php in input html PHP 20
P Access Inserimento data. MS Access 4
L Inserimento dettagli in una maglia Photoshop 2
S [PHP] email con inserimento dati nel database PHP 23
beatle [Photoshop] problema inserimento immagini Photoshop 1
G [Javascript] Errore inserimento dati Backend Node.js e workbench Javascript 1
B [PHP] Creare PDF dopo inserimento dati form PHP 4
C [PHP] Form con Inserimento dati dalla maschera e un menù a discesa che prende i dati dal db PHP 1
C [PHP] Form inserimento più menù a discesa PHP 9
M [PHP] Problemi su inserimento array nel db PHP 7
gandalf1959 [PHP] Inserimento di più righe non funziona come mi aspetto... PHP 2
E Inserimento dati da PHP in tabella MySQL PHP 5
E Form inserimento dati con JavaScript Javascript 0
D [MS Access] problemi con inserimento campo in una maschera MS Access 6
G inserimento csv in tabella mysql; problema con struttura PHP 11
M [Joomla] Inserimento wow.js in template Joomla 4
K [PHP] Inserimento dati database con postgres PHP 2
K [PHP + MYSQL ] Inserimento dati in database da form dinamico PHP 13
A [PHP] Inserimento url dinamici in pagina html PHP 3
spider81man [PHP] Alert Box per confermare Inserimento o Cancellazione dato. PHP 4
gandalf1959 [MySQL] Inserimento multiplo da form multirighe MySQL 22
A [RISOLTO]Inserimento Immagini da pc a MySql PHP 15
M Inserimento dati checkbox multipli in db da ajax a php PHP 1
S [PHP] inserimento su DB da tabella PHP 29
P [PHP] Problema inserimento nuove chiavi in array PHP 2
paloppa Inserimento data su database MYSQL PHP 2
webimage [PHP] Non inserimento in tabella PHP 19
N [Java] codice per inserimento sql Java 0
T [HTML] inserimento nav HTML e CSS 8
G [HTML] Problemi con inserimento immagini HTML e CSS 7
C [HTML] Inserimento feed/rss di Mr.Webmaster sul proprio sito HTML e CSS 1
M Inserimento Array prelevato da Database in Php in un altra tabella mysql PHP 0
M [PHP] Controllo inserimento in tempo reale PHP 0

Discussioni simili