Ciao a tutti
Sto lavorando ad un sito che gestisce una rubrica telefonica come esercitazione(tutto bene
)
pero' volevo postare un piccolo problema che ho aime' risolto con una tecnica brutale
Allora io costruisco in una pagina php iuna tabella , ad ogni riga cè una persona con i suoi dati ed una checkBox che indica l'opzione di cancellazione della Voce in rubrica
posto un po di codice
codice:
print("<FORM action=\"cancella.php\" method=\"POST\" name=\"sezioneTabella\"> \n");
print("<TABLE class=\"ContenitoreTabella\">\n");
print(" <TR>\n");
print(" <TD>Nome</TD>\n");
print(" <TD>Cognome</TD>\n");
print(" <TD>Data Nascita</TD>\n");
print(" <TD>Telefono</TD>\n");
print(" <TD>Email<TD>\n");
print(" <TD><input type=\"button\" onclick=\"Elimina()\" value=\"Elimina\"></TD>\n");
print(" </TR>\n");
$i=1;
$sentinella=true;
while($record=mySql_fetch_object($Res))
{
if($sentinella)
{
print(" <TR class=\"primo\">\n");
$sentinella=false;
}
else
{
print(" <TR class=\"secondo\">\n");
$sentinella=true;
}
print(" <TD> $record->nome </TD>\n");
print(" <TD> $record->cognome </TD>\n");
print(" <TD> $record->dataNascita </TD>\n");
print(" <TD> $record->telefono </TD>\n");
print(" <TD> <A HREF=\"mailto:$record->email\" alt=\"Contatta\">$record->email</A><TD>\n");
print(" <TD><input type=\"checkBox\" id=\"$i\" name=\"$i\" value=\"$record->id\"></TD>\n");
print(" </TR>\n");
$i++;
}
print("</TABLE>\n");
$i--;//Numero di Voci immesse nella tabella
print("<input type=\"hidden\" name=\"contatore\" value=\"$i\">\n");
print("</FORM>\n");
Adesso quando invoco il submit() da questa pagina il file che riceve i dati (cancella.php) mi trova solo i valori delle checkBox spuntate e non tutti quanti .Il problema è consistente pochiè se vedete come attribuisco il valore name alle checkBox non posso sapere a priori nel fil cancella.php quali valori sono stati spuntati cioè in altre parole non so che valore dare dentro a $_POST[?] per ricavare il valore della checkBox
La soluzione "grezza" che ho dato al problema è quella di usare una funziona JavaScript che prima di inviare il submit() mi spunta tutte le chekBox che non erano spuntate e pone il loro rispettivo valore a 0 in modo da poter controllare in cancella.php quali chekBox erano effetivamente state spuntate(valore != 0) .
Questa soluzione non mi sembra un gran che ...
anche se è funzionante
qualche consiglio ?