Newsgroup: it.comp.www.php
Titolo: ricevere variabili in ciclo...

Ciao a tutti ragazzi...
scusate il titolo del post un pň strano...
cerco di spiegarmi meglio...
ho una serie di check costruiti con un ciclo di for che una volta spuntati
li invio alla pagina stesso e li recupero con $_POST.
Ora ho fatto questo script che a quanto pare funziona :-) 
<?
for($i=0 ;$i<$max; $i++){ 
  if (isset($_POST["accett$i"])){
    $ds="Documentazione accettato.";
    echo "<td bgcolor=\"#33CCFF\">$ds";
  }else{
    $ds ="Accetta il documento: <input type=\"checkbox\" name=\"accett$i\"
value=\"true\">";
    echo "<td bgcolor=\"#33CCFF\">$ds";    
  }        
echo "</td>";
}
?>
ma solo se ne spunto uno ed invio la pagina.
Volevo fare in modo che accada la stessa cosa anche se ho spuntato piů di
un check.... secondo voi č possibile...???
Spero potrete illuminarmi...
Una buona giornata...
Giuseppe
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 un check.... secondo voi è possibile...???


 ?>
ciao
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicità progresso:
http://www.gnu.org/philosophy/free-sw.it.html

         #^^^devi dirgli di propagare l'informazione al prossimo refresh!!!
grazie mille della risposta.... ma sono agli inizi con php e, o non mi
sono spiegato io o non ho capito... la tua spiegazione... spero di non
annoiarti, ma ripeto.
Con lo script che sto usando, all'invio riesco a rintracciare sono un
check.
posso rintracciarne più di uno...?? Con l'hidden sbaglio o dovrei inviare
più volte??
Quello insomma che dico è:
Sempre riferendomi a questo script:  
<?
for($i=0 ;$i<$max; $i++){ 
  if (isset($_POST["accett$i"])){
    $ds="Documentazione accettato.";
    echo "<td bgcolor=\"#33CCFF\">$ds";
  }else{
    $ds ="Accetta il documento: <input type=\"checkbox\" name=\"accett$i\"
value=\"true\">";
    echo "<td bgcolor=\"#33CCFF\">$ds";    
  }        
echo "</td>";
}
?>
se il ciclo mi và da 1 a 10 e se io ho spuntato  solo tre check che mi
riempiono le rispettive variabili
$_POST["accett1"]
$_POST["accett5"]
$_POST["accett7"]
posso rintracciare questi valori....
in modo anche da dire in un'eventuale insert, inserisci per accett1,
accett2, accett3 le rispettive variabili... $_POST["accett1"]
$_POST["accett2"]
Spero di essere stato chiaro....
e scusami se in qualche modo mi hai già risposto...
Ciao


 $_POST["accett2"]
l'esempio che hai postato, a me funziona.
te lo riporto 'rivisto' a modo mio:
<?
error_reporting(E_ALL);
echo "<form action=$PHP_SELF method=POST>";
$max=20; //non sapevo qual'era  $max...
for($i=0 ;$i<$max; $i++)
        {
        if (isset($_POST["accett$i"]))
                {
                $ds="Documentazione accettato.";
                echo "$ds<br>";
                echo "<input type='hidden' name='accett$i' value='true'>";
                }
        else
                {
                $ds ="Accetta il documento:".
                "<input type=\"checkbox\" name=\"accett$i\" value=\"true\">";
                echo "$ds<br>";
                }
        }
echo "<br><input type='submit' value='invia' name='invia'><br>";
echo "</form>";
?>
così mi funziona.
chiaramente, se questo deve corrisponderti a delle insert, devi inserirle 
opportunamente dentro all'if.
ciao
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicità progresso:
http://www.gnu.org/philosophy/gif.html

Perfetto...punkarruso veramente quello che cercavo di fare imperterrito...
Nono ho potuto ringraziarti prima è lo faccio adesso..
Veramente... Grazie...
scusa però se ne approfitto della tua bonta :-) ancora due domande se non
ti scoccio... e se non divento pesante...
A cosa serve questo??:
error_reporting(E_ALL);
e poi se volessi appunto inserire questi valori $_POST["accett$i"] in una
tabella al di là di come giustamente mi hai fatto notare che le insert
vanno nel ciclo, come gestisco questa varibile... ?? basta mettere questa
variabile.. $_POST["accett$i"] così com'è nell'insert???
Grazie ancora... veramente tanto..
Una buona serata o buona notte....
GIuseppe


 variabile.. $_POST["accett$i"] così com'è nell'insert???
$sql="insert into TABELLA (CAMPO) values ('".$_POST["accett$i"]."')";
poi, a seconda di cosa e come lo devi inserire, cambi qualcosina.
vedi tu!
ciao
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicità progresso:
http://www.nist.gov/dads/

veramente grazie della lezione punkarruso....
è perfetto....
Una buona giornata...
Giuseppe


non sò se questo post vecchio di un paio di giorni sia lo stesso
facilmente letto.. ma io ci provo lo stesso..
Il caro... Punkarruso pochi giorni fà mi ha dato sta dritta.. 
<?
error_reporting(E_ALL);
echo "<form action=$PHP_SELF method=POST>";
$max=20; //non sapevo qual'era $max...
for($i=0 ;$i<$max; $i++)
{
if (isset($_POST["accett$i"]))
{
$ds="Documentazione accettato.";
echo "$ds<br>";
echo "<input type='hidden' name='accett$i' value='true'>";
}
else
{
$ds ="Accetta il documento:".
"<input type=\"checkbox\" name=\"accett$i\" value=\"true\">";
echo "$ds<br>";
}
}
echo "<br><input type='submit' value='invia' name='invia'><br>";
echo "</form>";
?>
ora con una select all'inizio della pagina vorrei fare in modo che se
ritorno in questa pagina i check spuntati siano appunto contrassegnati con
"documentazione accetta" 
il mio problema e che non sò se esiste una funzione in php in modo tale da
permettermi un controllo del genere.... 
Io estraggo il valore che estraggo da postgresql è in questa forma: 
$docs_accetta($result,0,"docs_accettata"); 
ed è appunto un valore boolean
Come potrei estrarre questo valore in modo che mi permetta un
controllo...??'
Ciao a tutti e buona serata.... cioè volevo dire buona notte..:-))
Giuseppe Rubino


 Ciao a tutti e buona serata.... cioè volevo dire buona notte..:-))
spiegati un po' meglio (magari raccogli le idee ad ore + umane!)
fai un paio di esempi.
ciao
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicità progresso:
http://www.efluxa.it/netiquette/

> una <select html> o una "select sql"??
Ciao punkarruso scusami... si parlo di una query sql....
cerco di essere più chiaro...
Faccio appunto di fare un'esempio visto che la cosa è molto più complicata.
Praticamente... lo script consiste in più o meno questo: ogni input check
corrisponde ad una rata ed io conosco sempre il numero totale di rate
($max), conosco il numero attuale della rata che mi viene aggiornato da
un'altro check che esiste per ogni rata quindi sempre in ciclo, che si
chiama "responso"
Considerando una tabela di questo tipo, dove il campo "accettata" è il mio 
check riempito impostato a true, "tot_rate" è la mia varibile $max che mi
dice quante rate sono e dove "num_rata"  è la rata attuale.
esempio:
accettata | tot_rate | num_rata | responso | 				
  true    |    5     |	 1      |   true   |		
	  |          |	        |          |
	  |          |	        |          |
 
in questo caso sarebbe mia intenzione...  oltre a farlo funzionare come
già funziona.... vedere quando ritorno nella pagina, al posto del primo
check "Documentazione accettata"  mentre gli  altri saranno deselezionati.
Non conosco bene php ma non mi sembra una cosa difficilissa.... o almeno o
provato a fare come avrei fatto in ASP ma a php... non gli piace tanto :-))
So che la mia non è una semplice domanda... ma spero potrai dirmi
qualcosa.... :-)
Del resto spero di aver spiegato meglio il mio problema... (ad un'ora più
umana....) 
Una buona giornata...
