• User

    Ciao talkoman.
    Una possibile soluzione al tuo problema potrebbe essere quella di far spuntare tre (o il massimo numero di gare per atleta stabilite) select al posto quando viene selezionato l'atleta. In ogni select puoi mettere un valore "blank" che, se selezionato, non fa nulla, e poi inserire nel database solo le gare per cui l'opzione selezionata è diversa da "blank".

    Non so se ho centrato la domanda 🙂
    Ciao


  • User Attivo

    Non ti ho capito molto bene :?:?


  • User

    Effettivamente il sonno deve avere avuto il sopravvento quando ho scritto 😛

    Cerco di spiegarmi meglio:
    quello che si potrebbe fare è la seguente procedura

    Alla selezione dell'utente:

    • verifica il numero massimo di gare che l'atleta può sostenere;
    • visualizza un numero di <select> uguale al numero massimo;
    • in ogni <select>, oltre alle <option> permesse, inserisci un valore che rappresenta la non selezione di quella gara, ad esempio "nessuna gara";
    • inserisci nel database un record per ogni <select> in cui il valore selezionato è diverso da "nessuna gara".

    Qualcosa del genere insomma ...

    
    //atleta.html
    <form action="selectAtleta.php" method="post">
        <select name="select1">
            <option>Atleta Tizio</option>
            <option>Atleta Caio</option>
            <option>Atleta Sempronio</option>
        </select>
        <input type="hidden" name="numeroGare" value="3">
        <input type="submit" value="GO" />
    </form>
    
    //selectAtleta.php
    <?
    $numeroGare = $_POST['numeroGare'];
    for($i=0; $i<$numeroGare; $i++) {
        echo "<select name='gara$i'>\n";
        echo "\t<option>(Nessuna Gara)</option>\n";
        echo "\t<option>Ore 11.00</option>\n";
        echo "\t<option>Ore 12.00</option>\n";
        echo "</select>\n";
    }
    ?>
    
    ```Spero di essere stato più chiaro :-)

  • User Attivo

    Guarda ti conviene vedere come è adesso.
    Vai su iscrizioni(dot)nuotosicilia(dot)it,
    Metti come User: PRO-000001
    Come Pass: prova

    Seleziona "iscrizioni Individuali" --> Iscrivi Atleta

    Fammi sapere
    Ciau!!


  • User

    Ok, ho inquadrato il problema. Dai un'occhiata a molto83 . altervista . org/gt/atleta.

    Questo è quello che intendevo dire nei precedenti post 🙂


  • User Attivo

    Questo è quello che mi risponde:

    La cartella /gt/atleta/ non contiene una pagina index.


  • User

    Scusa l'indirizzo corretto è molto83 . altervista . org/gt/ atleta.html

    Che erroraccio XD


  • User Attivo

    Hai visto la mia pagina?
    Bene io voglio in modo che, quando seleziono l'atleta, mi spuntino 3 o 4 o N form per l'inserimento delle gare e questo non è un problema....
    Ma come faccio a fare in modo che cliccando sul submit mi metta il risultato di ogni form in un record nuovo all'interno della tabella del DB?


  • User

    Sì, ho visto la tua pagina (a proposito, molto bella 🙂 ).

    Il form che deve spuntare deve essere uno solo, con tre o quattro o N select al suo interno.

    Poi, quando invii la richiesta, puoi fare un controllo sul valore delle select ed eventualmente inserire i record.

    Mi spiego meglio:

    [PHP]
    if($_POST['select1'] != "Nessuna gara")
    $query = "INSERT INTO tabella VALUES valori";
    if($_POST['select2'] != "Nessuna gara")
    $query = "INSERT INTO tabella VALUES valori";
    .
    .
    .
    if($_POST['selectN'] != "Nessuna gara")
    $query = "INSERT INTO tabella VALUES valori";
    [/PHP]

    Tutte le select devono essere all'interno dello stesso form, altrimenti non potrai inviarle con un unico submit.

    Fammi sapere se stavolta ci ho preso XD


  • User

    Sì, ho visto la tua pagina (a proposito, molto bella 🙂 ).

    Il form che deve spuntare deve essere uno solo, con tre o quattro o N select al suo interno.

    Poi, quando invii la richiesta, puoi fare un controllo sul valore delle select ed eventualmente inserire i record.

    Mi spiego meglio:

    [PHP]
    if($_POST['select1'] != "Nessuna gara") {
    $query = "INSERT INTO tabella VALUES valori";
    mysql_query($query);
    }
    if($_POST['select2'] != "Nessuna gara") {
    $query = "INSERT INTO tabella VALUES valori";
    mysql_query($query);
    }
    .
    .
    .
    if($_POST['selectN'] != "Nessuna gara") {
    $query = "INSERT INTO tabella VALUES valori";
    mysql_query($query);
    }
    [/PHP]

    Tutte le select devono essere all'interno dello stesso form, altrimenti non potrai inviarle con un unico submit.

    Fammi sapere se stavolta ci ho preso XD


  • User Attivo

    Si si, hai centrato....posto il codice se dovesse servire a qualcuno una cosa del genere...
    [PHP]<form name="nuovaIscrFRM" action="<?php $_SERVER['PHP_SELF'];?>" method="post" onSubmit="return checkformIscr();">
    <table border="0"><tr>
    <?php
    for($gareATLETA=1;$gareATLETA<=$maxInd;$gareATLETA++){
    ?>
    <td>
    <table border="1" style="border-collapse: collapse; border-style: solid;">
    <tr><td colspan="20" align="center">GARA N° <? echo $gareATLETA;?></td></tr>
    <tr>
    <td align="right">Gara: </td>
    <td align="left">
    <select name="gara<? echo $gareATLETA; ?>">
    <option value="">Nessuna Gara</option>
    <?php
    $queryG="SELECT DISTINCT codiceCED,NomeItaliano FROM ISC_rel_gare_man INNER JOIN ISC_garenuoto ON codGara=codiceCED WHERE codMan='".$_GET['man']."' AND ISC_rel_gare_man.eliminato='n' AND ISC_rel_gare_man.sesso='".$scompongo[2]."' AND ISC_rel_gare_man.codCategoria='".$scompongo[3]."' AND codiceCED NOT IN ('65','80','81','82','90','91') ORDER BY codiceCED";
    $sqlG=@mysql_query($queryG);
    while($rigaG=mysql_fetch_array($sqlG)){
    $codCED=$rigaG['codiceCED'];
    $nomeGara=$rigaG['NomeItaliano'];
    ?>
    <option value="<?php echo $codCED;?>"><?php echo $nomeGara;?></option>
    <?php
    }
    ?>
    </select>
    </td>
    </tr>
    <tr>
    <td align="right">Tempo: </td>
    <td align="left"><select name="minuti<? echo $gareATLETA; ?>">
    <option value="">--</option>
    <?php
    for($i=0;$i<=25;$i++){
    $minuto=str_pad($i, 2, "0", STR_PAD_LEFT)
    ?>
    <option value="<?php echo $minuto;?>"><?php echo $minuto;?></option>
    <?php
    }
    ?>
    <option value="99">99</option>
    </select>'
    <select name="secondi<? echo $gareATLETA; ?>">
    <option value="">--</option>
    <?php
    for($i=0;$i<=59;$i++){
    $secondo=str_pad($i, 2, "0", STR_PAD_LEFT)
    ?>
    <option value="<?php echo $secondo;?>"><?php echo $secondo;?></option>
    <?php
    }
    ?>
    <option value="99">99</option>
    </select>.
    <select name="decimi<? echo $gareATLETA; ?>">
    <option value="">--</option>
    <?php
    for($i=0;$i<=99;$i++){
    $decimo=str_pad($i, 2, "0", STR_PAD_LEFT)
    ?>
    <option value="<?php echo $decimo;?>"><?php echo $decimo;?></option>
    <?php
    }
    ?>
    </select></td>
    </tr>
    <tr>
    <td colspan="2" align="center">Impostare a 99'99.99 per "Senza Tempo"</td>
    </tr>
    <? if($squadre!="0"){ ?>
    <tr>
    <td align="right">Squadra: </td>
    <td align="left"><select name="squadra<? echo $gareATLETA; ?>">
    <option value="A" selected="selected">A</option>
    <option value="B">B</option>
    <option value="C">C</option>
    </select>
    </td>
    </tr>
    <? } ?>
    </table>
    </td>
    <? } ?>
    <input type="hidden" name="atlIscr" value="<? echo $atl; ?>" />
    <tr>
    <td colspan="20" align="center"><input type="submit" name="invioIscr" value="Invia" /></td>
    </tr>
    </tr></table>
    </form>
    </div>
    <?php
    if(isset($_POST['invioIscr'])){
    $atleta=$_POST['atlIscr'];
    for($gareATLETA=1;$gareATLETA<=$maxInd;$gareATLETA++){
    if($_POST['gara'.$gareATLETA] != "") {
    $gara=$_POST['gara'.$gareATLETA];
    $squadra=$_POST['squadra'.$gareATLETA];
    if($squadra=="A")
    $squadra="";
    $tempo=$_POST['minuti'.$gareATLETA]."'".$_POST['secondi'.$gareATLETA].".".$_POST['decimi'.$gareATLETA];
    $sql="INSERT INTO ISC_iscrizioni SET
    codMan='".$_GET['man']."',
    codAtleta='$atleta',
    codGara='$gara',
    tipoGara='I',
    squadra='$squadra',
    tempo='$tempo'";
    $ris=@mysql_query($sql);
    if (!ris){
    echo "<script type='text/javascript'>setTimeout("doRedirect1()", 4000); </script>
    <table border='0' align='center'><tr><td align='center'><img src='immagini/varie/no.png' align='left' border='0'></td>
    <td><h3>Errore durante l'inserimento</img></h3></td></tr><tr><td colspan='2' align='center'><img src='immagini/varie/progressbar.gif'>
    <br><br><br><br><span class='mini'>Se non vieni reindirizzato entro 4 secondi <a href='nuovaIscrIndividuale.php?man=".$_GET['man']."' class='mini'>clicca qui</a></span></td></tr></table>$sql";
    }
    }
    }
    echo "<script>nascondi()</script><script type='text/javascript'>setTimeout("doRedirect1()", 4000); </script>
    <table border='0' align='center'><tr><td align='center'><img src='immagini/varie/ok.png' align='left' border='0'></td>
    <td><h3>Inserimento effettuato!</img></h3></td></tr><tr><td colspan='2' align='center'><img src='immagini/varie/progressbar.gif'>
    <br><br><br><br><span class='mini'>Se non vieni reindirizzato entro 4 secondi <a href='nuovaIscrIndividuale.php?man=". $_GET['man']."' class='mini'>clicca qui</a></span></td></tr></table>";
    $nid=mysql_insert_id();
    }
    ?>[/PHP]


  • User

    Bene ! Alla prossima 😉