Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    143

    PHP e passaggio parametri, sto andando a male!

    Allora il problema è questo. Dovendo fare una form multisubmit ho bisogno di uno script php che gestisca il tutto, e qui ci

    siamo.

    All' interno della form ho un ciclo for, dove vengono passati alla pagina "check.php" (quella che controlla i submit) diversi

    valori da xxx1 a xxxn.

    il ciclo for è così strutturato:


    codice:
    for ($i=1; $i<=$totale; $i++) { 
    <select name="numeroart<? print "$i";?>">
        $sql="SELECT * from elenco_articoli";
        $query=mysql_query($sql);
           while ($a_row = mysql_fetch_array($query)) {
    		
                      if ($a_row[articoli]==$??????) 
    				   print "<option SELECTED>$a_row[articoli]</option>\n"; 
    				   else
    				   print "<option>$a_row[articoli]</option>\n"; 
    		  
    				   }
           
    Etichetta <? print "$i"; ?> <input type="text" name="etichetta<? print "$i";?>" value="<? print "?????";?>"> </td>
        }
    in pratica la select passa il parametro "numeroart<? print "$i";?> quando viene inviata la form (lasciate stare la sintassi,

    ho copiato e incollato alcuno pezzi e alivellio di tag e parentesi c'è qualcosa di sbagliato)


    nella pagina check.php c'è invece:

    codice:
    $stringa="";
    	switch ($_POST['invia']) { //il nome del submit
    		  
    		  case 'bottone1':
    				for ($i=1;$i<=$totale;$i++) {
    				$articolo=$_POST['numeroart'.$i];
    			    $etichetta=$_POST['etichetta'.$i];
    				$stringa.="numeroart$i=$articolo&etichetta$i=$etichetta";
    				}
                               $totale=$totale+1;
    				?>
    				<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    				<head>
    				<title></title>
    				<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    				<META HTTP-EQUIV="Refresh" CONTENT="0;URL=inserimento.php?totale=<? print ("$totale+1&cliente=$cliente&rma=$rma&databolla=$databolla&note=$note&stato=$stato&$stringa") ?>";>
    				</head>
    				<body>
    				<?
    
    				break;
    e quindi in pratica vado a prendere i datii nseriti e li ripasso come parametro indietro, in modo da aggiornare la lista di articoli per riga, senza perdere quelli precedentmente inseriti.


    Fin qui va tutto, ma quello che non riesco a fare è prendere i valori numeroart$i e etichetta$i nella stringa del ciclo for e stamparli nelle form della pagina precedente. Dall barra delgi indirizzi vedo che il valore è corretto per tutti gli articoli, ma non riesco ad accederci.

    come posso fare? grazie mile.
    Death to False Metal

  2. #2
    Utente di HTML.it L'avatar di luke83
    Registrato dal
    Jul 2000
    Messaggi
    1,217
    nn è che ho capito bene..

    cmq come pretendi di accedere a valori in post se li passi con la query...

    cambia il method della form in post oppure i $_POST in $_GET

    ..::Luca::..
    » "se nn riesci a venirene a capo.. usa il tasto INVIO" © 2005 Luke83
    » "letta la documentazione, spazio all'immaginazione.." © 2006 Luke83
    [frasi random] - [Lucopedia] - [laFetta]

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    143
    Originariamente inviato da luke83
    nn è che ho capito bene..

    cmq come pretendi di accedere a valori in post se li passi con la query...

    cambia il method della form in post oppure i $_POST in $_GET

    ai valori $_POSt della pagina check.php ci accedo tranquillamente, e li posso passare pure come parametro allap agina con la form..il problema è poi andarli a recuperare!

    come faccio a cambiare il metodo?
    Death to False Metal

  4. #4
    codice:
    for ($i=1; $i<=$totale; $i++) 
    { <select name="numeroart<? print "$i";?>">
    secondo me è + giusto così:
    Codice PHP:

    <select name="numeroart[$i]" 
    e questo

    codice:
    <input type="text" name="etichetta<? print "$i";?>" value="<? print "?????";?>"> </td>
    così scritto :
    Codice PHP:
    <input type="text" name="etichetta[$i]" 
    così usi davvero gli arrai...in quell'altro modo non so nemmeno che cosa combinassi!!!


    poi per quale motivo metti il value="<? print "???????"; ?> ?
    non capisco
    "Due cose riempiono l’animo di ammirazione e venerazione sempre nuova e crescente, quanto piú spesso e piú a lungo la riflessione si occupa di esse: il cielo stellato sopra di me, e la legge morale in me..." Immanuel Kant

  5. #5
    Utente di HTML.it L'avatar di luke83
    Registrato dal
    Jul 2000
    Messaggi
    1,217
    ah.. sto iniziando a capire.. forse...
    quindi a te serve nella prima pagina recuperare i valori che la check gli ha passato tramite query?

    Codice PHP:
    $var=$_GET["variabile"]; 
    ..::Luca::..
    » "se nn riesci a venirene a capo.. usa il tasto INVIO" © 2005 Luke83
    » "letta la documentazione, spazio all'immaginazione.." © 2006 Luke83
    [frasi random] - [Lucopedia] - [laFetta]

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    143
    Originariamente inviato da Whitecrowsrain
    codice:
    for ($i=1; $i<=$totale; $i++) 
    { <select name="numeroart<? print "$i";?>">
    secondo me è + giusto così:
    Codice PHP:

    <select name="numeroart[$i]" 
    e questo

    codice:
    <input type="text" name="etichetta<? print "$i";?>" value="<? print "?????";?>"> </td>
    così
    Codice PHP:
    <input type="text" name="etichetta[$i]" 
    ok, ma per andare a recuperare i valori che passo nel redirection dalla pagina check.php?
    Death to False Metal

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    143
    Originariamente inviato da Whitecrowsrain


    poi per quale motivo metti il value="<? print "???????"; ?> ?
    non capisco
    al posto del punto di domanda ci dovrei metterei l valore corretto.


    il sistema name="etichetta<? print "$i";?>" è rozzo di brutto ma funziona. semplicemente passa dalla form la variabile etichetta1, etichetta2, etichetta2....
    Death to False Metal

  8. #8
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    143
    Originariamente inviato da luke83
    ah.. sto iniziando a capire.. forse...
    quindi a te serve nella prima pagina recuperare i valori che la check gli ha passato tramite query?

    Codice PHP:
    $var=$_GET["variabile"]; 
    quindi

    $articolo=$_GET['numeroart'.$i];
    $etichetta=$_GET['etichetta'.$i];

    nella pagina con la form?
    Death to False Metal

  9. #9
    Utente di HTML.it L'avatar di luke83
    Registrato dal
    Jul 2000
    Messaggi
    1,217
    sì dovrebbe andare...
    ..::Luca::..
    » "se nn riesci a venirene a capo.. usa il tasto INVIO" © 2005 Luke83
    » "letta la documentazione, spazio all'immaginazione.." © 2006 Luke83
    [frasi random] - [Lucopedia] - [laFetta]

  10. #10
    Originariamente inviato da Metallox
    al posto del punto di domanda ci dovrei metterei l valore corretto.


    il sistema name="etichetta<? print "$i";?>" è rozzo di brutto ma funziona. semplicemente passa dalla form la variabile etichetta1, etichetta2, etichetta2....
    si ma usa quello che ti ho detto io..usi un array al posto di nomi strampalati!
    "Due cose riempiono l’animo di ammirazione e venerazione sempre nuova e crescente, quanto piú spesso e piú a lungo la riflessione si occupa di esse: il cielo stellato sopra di me, e la legge morale in me..." Immanuel Kant

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.