• User Newbie

    Inserimento dati "multiplo" in database

    Ciao a tutti perdonatemi per la richiesta di aiuto...
    Sto creando una "applicazioncina" che serve per avere una classifica realizzatori

    Ho creato una semplicissima tabella "punteggio" SQL così composta

    NomeGiocatore|CognomeGiocatore|Squadra|PunteggioGiornata|Giornata

    Pippo | Baudo | Rai | 13 | 1

    Ho creato una form per l'inserimento del nome dei giocatori ed è ok.

    Veniamo al problema
    Creo una pagina dinamicamente che contenga il nome del giocatore prelevandolo dal database e alla desta una INPUT form attraverso questo comando:

    while ($row = mysql_fetch_array($result))
    { $i==0;

      echo   "<tr><td width='229'><font size=2>$row[Cognome] $row[Nome]</td>".
          "<td><input type='text' **name='$Punteggio$i**' size='5'></td></td></tr>";    
     $i++;
    

    di modo che risulti una cosa del genere
    _________
    Pippo Baudo | |
    ----------
    _________
    Pippo Franco | | (il disegnino è una input form...)
    ----------

    Il problema sta nella parte in grassetto...
    In cima ho il solito
    <form method=post action=salvadati.php>
    Nella pagina salvadati.php scriverei la query INSERT ecc... ma non riesco assolutamente a passare il valore inserito nei campi delle pagine precedenti.
    Il fatto è che le input form vengono nominate correttamente se si osserva online il codice hanno nomi progressivi Punteggio1, Punteggio2... Punteggion. Ma dalla pagina salvadati.php non riesco ad accedervi

    Spero che qualcuno mi sappia aiutare o indicare una guida che mi possa essere d'aiuto. Grazie!


  • User Newbie

    Ciao, lavorando al codice ora mi sono reso conto qual'è il problema

    una pagina php invia ad una seconda tramite form (campi input text) alcuni valori. Il problema è che non so a priori quanti sono questi campi input text, perchè questi sono generati nella prima pagina dinamicamente.

    Quindi ricevo nel secondo file una serie di valori provenienti dal primo file nominate:

    $variabile1 $variabile2.... $variabileN
    Ora devo semplicemente capire come inserire tali variabili nel database
    Ho provato a scrivere un ciclo che faccia (lasciate stare la sintassi è per capirsi)
    i=1;
    INSERT INTO pippo (valore) VALUES **$variabile$i
    **i++;

    Il fatto è che comprendo che non si effettua così il concatenamento (vengono infatti inseriti valori sbagliati nel database)
    Se in pratica volessi passare i valori $variabile1 $variabile2.... $variabileN attraverso un solo ciclo, come dovrei fare?

    Ciao e grazie per l'aiuto che potrete darmi!


  • User

    @MilesOBrian said:

    Ciao, lavorando al codice ora mi sono reso conto qual'è il problema

    una pagina php invia ad una seconda tramite form (campi input text) alcuni valori. Il problema è che non so a priori quanti sono questi campi input text, perchè questi sono generati nella prima pagina dinamicamente.

    Quindi ricevo nel secondo file una serie di valori provenienti dal primo file nominate:

    $variabile1 $variabile2.... $variabileN
    Ora devo semplicemente capire come inserire tali variabili nel database
    Ho provato a scrivere un ciclo che faccia (lasciate stare la sintassi è per capirsi)
    i=1;
    INSERT INTO pippo (valore) VALUES **$variabile$i
    **i++;

    Il fatto è che comprendo che non si effettua così il concatenamento (vengono infatti inseriti valori sbagliati nel database)
    Se in pratica volessi passare i valori $variabile1 $variabile2.... $variabileN attraverso un solo ciclo, come dovrei fare?

    Ciao e grazie per l'aiuto che potrete darmi!

    scusa ma non mi è chiara una cosa,perchè generi dinamicamente i campi input?


  • User Newbie

    Ciao, sono dinamici perchè i roster (la rosa dei giocatori) delle squadre cambiano continuamente e quindi è necessario al fine di non dover cambiare ogni volta la pagina statica con i nomi dei giocatori.
    Cmq sono riuscito a salvare le variabili in un array e il programma funziona usando poi tale array con per la insert, solo che volevo fare in altro modo... Il fatto è che ho scritto N volte l'assegnamento:
    $valore1= array(1);
    $valore2= array(2);
    ....
    $valoreN= array(N)

    mentre avrei voluto fare un ciclo che facesse tutto, ma non capisco come concatenare le variabili. Avevo pensato a mettere qualcosa del tipo
    $valore$i ed incrementare $i ma non funziona!

    Intendo dire: se ho N campi chiamati $campo1 $campo2 .... $campoN e volessi semplicemente fare un solo ciclo con una INSERT che inserisce i valori 1,2...N come potrei fare?

    Ciao e grazie