Discussione:
Selezionare tutti i checkbox
(troppo vecchio per rispondere)
Lampa Dario
2006-05-31 20:00:19 UTC
Permalink
Salve,

ho un form che ho generato con php e vorrei selezionare automaticamente
tutti i checkbox con un pulsante/bottone. Credo si possa fare meglio in
Javascript, però:
1) Non conosco il Javascript
2) Si può fare in php nel caso Javascript fosse disabilitato nel browser?
3) Se si può fare solo in Javascript, come si fa? 4) Se si può fare
anche in PHP, ho qualche idea di come fare, ma non so se è meglio in
Javascript o PHP.

Qualche consiglio?

Francesco

http://www.riscossione.info
David Paleino
2006-05-31 20:39:07 UTC
Permalink
Post by Lampa Dario
Salve,
Ciao :)
Post by Lampa Dario
ho un form che ho generato con php e vorrei selezionare automaticamente
tutti i checkbox con un pulsante/bottone. Credo si possa fare meglio in
1) Non conosco il Javascript
2) Si può fare in php nel caso Javascript fosse disabilitato nel browser?
3) Se si può fare solo in Javascript, come si fa? 4) Se si può fare
anche in PHP, ho qualche idea di come fare, ma non so se è meglio in
Javascript o PHP.
Qualche consiglio?
Certo.

1. Avresti fatto meglio a rivolgerti ad un NG che tratta di JavaScript;
2. guarda 1.;
3. guarda i precedenti;
4. leggi di seguito.

In PHP, ovviamente, è possibile farlo. Ma non si tratta di PHP, ma di
semplice (X)HTML.
Supponiamo che tu abbia, in PHP, una situazione del tipo:

<?php
for ($i = 0; $i < NUM_CHECKBOX; $i++)
{
echo '<input type="checkbox" value="' . $i . '">Opzione ' . $i . '<br>";
}
?>

Ora, dato che le checkbox non possono essere controllate dal PHP (perché
è un linguaggio server-side), tu puoi intervenire in due modi:
a. modificando l'HTML stampato dal PHP;
b. utilizzando JavaScript.

Nel caso a. basta aggiungere un attributo "checked" prima della chiusura
del tag <input> nell'esempio postato sopra.

Nel caso b. dovresti:
1. dare un nome al form (azione comunque consigliata);
2. dare un nome ad ogni singola opzione (magari usando proprio il ciclo
che probabilmente usi, magari del tipo opzione_X - dove X è il numero $i);
3. inizializzare il valore per ogni opzione al caricamento della pagina,
una cosa del tipo (in pseudocodice):

per (ogni valore i fino ad un numero)
{
nomeform.opzione_i.selezionato = vero;
}

per maggiori info su questa opzione, ti consiglio veramente di
consultare un newsgroup JS.

Ti consiglio comunque, se devi selezionare tutto già all'inizio, di
seguire l'opzione a. che ti ho scritto sopra... è l'opzione più semplice
ed immediata, imho, anche se potrebbe non essere molto "elegante".
Post by Lampa Dario
Francesco
Saluti,
David
--
Linux Registered User #334216
Get FireFox! >> http://www.spreadfirefox.com/?q=affiliates&id=48183&t=1
Staff >> http://www.debianizzati.org <<
Lampa Dario
2006-05-31 20:58:24 UTC
Permalink
Ok, grazie dei consigli, ora provo un poco con il PHP, e poi magari passo
a JavaScript. Magari con il PHP si tratta solo di richiamare lo stesso
script mettendo a checked i checkbox.

Francesco
andrea
2006-05-31 21:03:17 UTC
Permalink
Post by Lampa Dario
Qualche consiglio?
http://www.jsdir.com/

e cioe' usa javascript.

ciao,
Andrea
Melus
2006-05-31 22:08:00 UTC
Permalink
Post by Lampa Dario
Qualche consiglio?
Francesco
http://www.riscossione.info
Puoi farlo tranquillamente senza usare javascript ed usando solo PHP.




supponendo che usi il form con action=POST, il tuo pulsante e il
relativo script via PHP deve essere qualcosa del tipo :



All'inizio dello script controlli il valore della variabile:
<?php
//
// Far partire le sessioni non fa mai male.
//
session_start();



//
// Questo è per controllare il reset.
//
// Puoi mettere il bottone di reset in un suo form isolato;


if ($_POST["resettete"] == 1)
{

$_SESSION["form"]["questo_check"] = "il valore che vuoi che abbia
da resettato";



}
else
{
//
// Questa sezione la eseguo se non ho premuto reset.
//



if ($_POST["questo_check"] == 1) // ma si può fare di meglio.
{
$_SESSION["form"]["questo_check"] == 1;

}
else
{
$_SESSION["form"]["questo_check"] == 0;

}
}


if ($_SESSION["form"]["questo_check"] == 1)
{
$check_ok = "CHECKED";
}

$tuo_check = "<INPUT TYPE=CHECKBOX NAME=\"questo_check\" VALUE=\"1\"
$check_ok >";


echo $tuo_check; // con intorno il form.
--
Cordialmente.

Melus.

dal mio e-mail togli i simboli di Zorro.
Alessandro Pellizzari
2006-06-01 09:13:34 UTC
Permalink
Post by Lampa Dario
ho un form che ho generato con php e vorrei selezionare automaticamente
tutti i checkbox con un pulsante/bottone. Credo si possa fare meglio in
Se vuoi che i checkbox si attivino premendo un pulsante apposito, senza
ricaricare la pagina, lo devi fare in JS, non ci sono altri modi.

Se vuoi che all'apertura della pagina tutti i checkbox siano
selezionati, puoi usare PHP come ti hanno detto.

Bye.
--
Alessandro Pellizzari
Lampa Dario
2006-06-01 10:55:28 UTC
Permalink
Se vuoi che all'apertura della pagina tutti i checkbox siano selezionati,
puoi usare PHP come ti hanno detto.
Ho risolto in PHP, ma come si fa in Javascript lo ignoro. In particolare,
i checkbox sono generati automaticamente da una tabella di un database e
quindi hanno tutti lo stesso nome.


Francesco


http://www.riscossione.info

Loading...