Dunque se ho capito bene, tu vuoi fare in modo tale che setti dei dati ad una determinata casa (piscina, garage etc) e che poi quando vai a modificarli ti appaiano tutti i checkbox sia pieni che vuoti, è corretto?
Dunque se ho capito bene, tu vuoi fare in modo tale che setti dei dati ad una determinata casa (piscina, garage etc) e che poi quando vai a modificarli ti appaiano tutti i checkbox sia pieni che vuoti, è corretto?
Ciao Dario, si è corretto.
Bene, in questo caso potresti fare così:
- una schermata con dei campi di testo e dei checkbox (garage: check o uncheck, piscina: check o uncheck), che una volta "valorizzato" esegue più query di inserimento all'interno di una
tabella con 4 campi (id, casa, oggetto, presente). Id sarebbe autoincrementale, casa sarebbe la casa, oggetto sarebbe l'oggetto, presente invece avrebbe valore 1, se l'oggetto piscina ha valore 1 significa che la casa ha la piscina altrimenti non la ha. Per quando vai a stampare su schermo i risultati controlli se quel valore è 1 o 0. Se è uno inserisci un checkbox checked, altrimenti un checkbox vuoto.
Altrimenti, se gli "oggetti" sono fissi, puoi fare a meno di inserire record multipli e fai una tabella con i seguenti campi: id, casa, piscina, garage, etc e a piscina, garage, etc dai valori zero e uno.
Grazie, non ho capito bene, pero ti spiego meglio.
I checkbox della pagina di creazione della casa, devo essere dinamici, perché se vogliono aggiungere successivamente varie caratteristiche devono poterlo fare dinamicamente con una pagina del pannello di controllo che inserisce in una tabella la caratteristica nuova, esempio vista a mare.
Questo è gia tutto funzionante ho una tabella "captions" dove metto tutte le caratteristiche con un id autoincrementato.
Ho giá la pagina che crea la proprietá, carico le checkbox dalla tabella caption,
<?php
$query = "SELECT * FROM captions order by caption_en";
$result = mysql_query($query);
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
?><input type="checkbox" name="caption[]" value="<?php echo $row['id']?>" ><?php echo $row['caption_es']?>
<?php } ?>
con due query inserisco i dati nella tabella tblproperties e le caratteristiche nella tabella features.
Il problema mi viene quando voglio modificare la proprietá aggiungendo o togliendo caratteristiche, i checkbox con le query:
<?php
$fid = '1';
$query = "SELECT * FROM captions order by caption_es";
$result = mysql_query($query);
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
$query2 = "SELECT * FROM features where id_pro=$fid";
$result2 = mysql_query($query2);
while ($row2 = mysql_fetch_array($result2, MYSQL_ASSOC)) {
?>
<input type="checkbox" name="caption[]" value="<?php echo $row['id']?>" <?
if ($row2['id_cap']==$row['id'])
{
echo "checked";
}
?>><?php echo $row['caption_es']?>
<?php }} ?>
Mi restituiscono i checkbox doppi.
come nell'immagine postata sopra
Hai una pagina online dove posso provare a vedere. Non è così difficile come sembra.
Si. la pagina online la ho, pero non capisco come puoi "vedere", se non hai possibilitá di modificarla.
Nei post precedenti ho messo le due tabelle e le query, che sono esattamente quello che c'è dentro al codice della pagina, per lo meno relativo ai checkbox.
comunque questo è il link:
http://www.om-properties.com/omnuevo...erty.php?fid=1
Volevo provare a vedere come gestivi la cosa dal punto di vista dell'Html. Se mi dai l'sql delle tabelle tento di sistemarti la cosa, riproducendola prima in locale.ù
Edit: lo avevi già fatto, mi metto subito al lavoro![]()
ti ringrazio...
Prova così, dovrebbe andareCodice PHP:<?php
$fid = "1";
$query2 = "SELECT * FROM features where id_pro=$fid";
$result2 = mysql_query($query2);
while ($row2 = mysql_fetch_array($result2, MYSQL_ASSOC)) {
$query = "SELECT * FROM captions order by caption_es";
$result = mysql_query($query);
}
while ($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
?>
<input type="checkbox" name="caption[]" value="<?php echo $row['id']?>" <? if ($row2['id_cap']==$row['id']) { echo "checked"; } ?>><?php echo $row['caption_es']?>
<?php
}
?>![]()
No, mi mette solo i checkbox vuoti.http://www.om-properties.com/omnuevo/admin/test5.php