$sql33 = "SELECT `category`, category_id from `categorie`";
$result33 = mysql_query($sql33);
$sql3 = "SELECT `sub-category_id`, `sub-category`, category_id from `sotto-categorie`
ORDER BY category_id";
$result3 = mysql_query($sql3);
while ($row33 = mysql_fetch_array($result33))
{
echo "<optgroup label=\"" . $row33['category'] . "\">";
while ($row3 = mysql_fetch_array($result3))
{
if($row3['category_id'] == $row33['category_id']):
$num_scategoria = $row3["sub-category_id"];
$ppp = ($num_scategoria==$scategoria_id) ? "selected" : "";
printf("<option \"%s\" value=\"%s\">%s</option>\n", $ppp, $row3["sub-category_id"], $row3["sub-category"]);
else:
-->> $row3 = prev($row3); <<----
break 1;
endif;
}
echo "</optgroup>";
}
unset($ppp);
questa funzione mi dovrebbe stampare un benedetto menu select basandosi su due query, come mai mi continua a saltare il primo record quando ripassa dal ciclo interno a quello esterno?
è colpa dell'if, ma come si fa fare tornare indietro di uno mysql_fetch_array?
o come posso fare per mettere il controllo direttamente nelle condizioni del while così che non mi esegua il ciclo se la condizione (che ora è nell'if) non sia realizzata?
![]()
![]()
![]()
![]()