Witam,
Mam bazę danych z listą stron i chciałbym za pomocą formularza ustawiać która strona ma się wyświetlać jako główna. W bazie danych domyślnie dla pola "strona_g" jest zero. Po zaznaczeniu w formularzu chciałbym przypisać tej stronie 1.
Nie wiem do końca jak mam przesyłać tę tablicę.
<?php
if (isset($_GET["akcja"])=='ustaw'){
//tu są jakieś błędy
for($i=0;$i<count($_POST['sg']);$i++) {
$id = $_POST['sg'][$i];
if ($_POST['sg']=checked){
$g="1";
}else{
$g="0";
}
mysql_query("UPDATE menu SET strona_g='$g' WHERE id='$id'"); }
}
?>
<form action="?akcja=ustaw" method="post" enctype="multipart/form-data" name="form3">
<table width="773" border="0" cellspacing="2" cellpadding="1">
<tr bgcolor="#FF3300" >
<td height="24" colspan="3" bgcolor="#99CC00">:: Istniejące pozycje menu</td>
</tr>
<tr>
<td width="15%" height="20" bgcolor="#BCFE63"><div align="center" class="div_bold">Lp.</div></td>
<td width="70%" height="20" bgcolor="#BCFE63"><div align="center" class="div_bold">Nazwa strony</div></td>
<td width="15%" height="20" bgcolor="#BCFE63" align="center" class="text9">Ustaw stronę główną</td>
</tr>
<?php
$sql="SELECT * FROM menu order by id";
?>
<table border="0" width="100%" cellspacing="2" cellpadding="0">
<tr>
<td width="100%" bgcolor="#FFF6ED" align="center">Brak pozycji.</td>
</tr>
</table><br>
<?php
}else{
$i=1;
if ($dane["strona_g"]="1"){
$znak="checked";
}
?>
<tr>
<td >
<?php echo $i;?>.</td>
<td >
<?php echo $dane["nazwa"];?></td>
<td ><input type="radio" name="sg[]" value="
<?php echo $dane["id"];?>"
<?php echo $znak;?>></td>
</tr>
<?php
$i++;
}
}
?>
<tr>
<td colspan="3"> </td>
<td align="center"><input type="submit" name="Submit" value="Ustaw"></td>
</tr>
</table>
Struktura bazy:
<?php
CREATE TABLE `menu` (
`id` int(3) NOT NULL auto_increment,
`nazwa` varchar(100) NOT NULL,
`strona_g` char(1) NOT NULL default '0',
) ENGINE=InnoDB ;
?>
Ten post edytował rja 5.07.2007, 14:36:29