Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    138

    Aiuto per form aggiornamento database

    Allora vi spiego la situazione: devo aggiornare un database in mysql. Potrei farlo attraverso phpmyadmin ma siccome voglio che lo facciano anche i miei amici naaab ho deciso di fare una bella pagina con un form e la pagina è questa:




    Stagione e partita si popolano automaticamente prendendo i dati dalle tabelle del db (e non vi dico i moccoli per farlo ). Stesso discorso per il nome dei presenti e tutte le statistiche da inserire.
    Fin qua tutto ok, però adesso non so fare (e non so se si può fare) l'inserimento dei dati nel DB anche perchè non so come fare a distinguere la casella di testo dei goal segnati dal primo giocatore rispetto a quella del secondo giocatore.

    Vi posto anche il codice fatto coi piedi almeno se volete potete anche ottimizzarlo
    Codice PHP:
    <?php
        
    include 'phpconnect.php';
        include 
    'opendb.php';
        echo 
    "<select>";
        
    $sql="SELECT Id_Stagionecalcistica FROM Calendario LIMIT 0,1";
        
    $result $mysqli->query($sqlMYSQLI_USE_RESULT);
        while(
    $row $result->fetch_assoc())
        {
             
    $myfield_2 $row['Id_Stagionecalcistica'];
             echo 
    "\t<option value=\"$myfield_2\">$myfield_2</option>\n"
         }
      echo 
    "</select>";
      echo 
    "

    "
    ;
      echo 
    "Partita:";
      echo 
    "<select>";
     
      
    $sql2="SELECT Id_Partita FROM Calendario";
      
    $result2 $mysqli->query($sql2MYSQLI_USE_RESULT);
      while(
    $row2 $result2->fetch_assoc())
      {
        
    $myfield_1 $row2['Id_Partita'];
        echo 
    "\t<option value=\"$myfield_1\">$myfield_1</option>\n"
      }
      echo 
    "</select>";
      echo 
    "
    "
    ;
      echo 
    "
    "
    ;
      echo 
    "Presenti:";
      echo 
    "
    "
    ;
      
    $sql2="SELECT Nome_Cognome FROM Giocatori";
      
    $result2 $mysqli->query($sql2MYSQLI_USE_RESULT);
     while(
    $row2 $result2->fetch_assoc())
     {
       
    $myfield_3 $row2['Nome_Cognome'];
        echo 
    "\t$myfield_3<input type=\"checkbox\" value=\"$myfield_3\ /\"> Goal Segnati: <input name=\"goalsegnati\" size=\"2px\" maxlength=\"2\" type=\"text\"> Goal Subiti:<input name=\"goalsubiti\" size=\"3px\" maxlength=\"2\" type=\"text\"> Assist:<input name=\"assist\" size=\"3px\" maxlength=\"2\"type=\"text\"> C.Giallo:<input type=\"checkbox\" value=\"giallo\" /\"> C.Rosso:<input type=\"checkbox\" value=\"rosso\" /\"> Voto:<input name=\"voto\" size=\"3px\" maxlength=\"2\" type=\"text\"> MVP:
    \n"


     }
     echo 
    "

    "
    ;
    $result->close();
    $result2->close();
    $mysqli->close();
    ?> 
    <input name="invia" type="submit">
    </form>

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    138
    è impossibile o mi sono spiegato male io?

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    170
    Non è impossibile ma dovresti studiare un po di PHP per affrontare il tuo problema io ti posso spiegare come fare ma non la sintassi anche perchè un forum serve a risolvere problemi non a scrivere gli script a gli altri :-).

    Cmq il tuo problema sta nel distinguere le textbox, niente di più facile

    metti un contatore fuori dal WHILE per esempio i e lo incrementi dentro al ciclo i++.
    Questa variabile la metti nel campo name degli input box per esempio


    codice:
     while($row2 = $result2->fetch_assoc())
    {
       $myfield_3 = $row2['Nome_Cognome'];
        echo "\t$myfield_3<input type=\"checkbox\" value=\"$myfield_3 /\"> Goal Segnati: <input name=\"goalsegnati" + i + "\" size=\"2px\" maxlength=\"2\" type=\"text\"> Goal Subiti:<input name=\"goalsubiti " + i + "\" size=\"3px\" maxlength=\"2\" type=\"text\"> Assist:<input name=\"assist\" size=\"3px\" maxlength=\"2\"type=\"text\"> C.Giallo:<input type=\"checkbox\" value=\"giallo\" /\"> C.Rosso:<input type=\"checkbox\" value=\"rosso\" /\"> Voto:<input name=\"voto\" size=\"3px\" maxlength=\"2\" type=\"text\"> MVP:
    \n";
    
    }

    Una volta che hai numerato i textbox postando il form alla pagina per esempio insert.php potrai inserirli con una operazione di INSERT.

    Potresti inoltre inserire un hidden field per ogni nome_cognome con dentro l'ID della persona e numerarlo anche esso in modo da fare una INSERT collegata a quell'ID.

    Cmq morale devi studiare SQL e PHP o altro linguaggio SERVER SIDE non è per essere sgarbato ma non penso che qualcuno ti scrivera il codice!!!

    Ciao.

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    138
    allora associare a ogni testbox un contatore non è una brutta idea ma non credo sia fattibile perchè se una volta è presente solo Monini (guardando l'esempio della foto) e un'altra volta sia Monini che Langella, quando vado a fare l'INSERT una volta la test box di Monini ha come contatore 1 l'altra 2 (se sbaglio correggimi).

    L'hidden field mi piace di più però non ho capito se la tua idea era usarlo insieme ai contatori o no.

    Grazie per ora!!

    PS: figurati se me la prendo, lo so che devo studiare meglio il PHP comunque qualche base ce l'ho (anche se schifoso, quel pezzo di codice l'ho fatto da solo )
    Mi serve soltanto qualche spinta in qua e in la

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.