Buongiorno, ho un problema con uno script, il problema è che non riesco a rendere visibile o invisibile dei record.
Qui sotto vi ripotto il codice.

codice:
      <?
		 // scorro le sottocategorie
		 $sql_tipi = "SELECT * FROM cart_tipi order by nome";
		 $query_tipi = mysql_query($sql_tipi, $link);
		 while($valori=mysql_fetch_array($query_tipi))
		 {
	        $id_tipo = $valori['id_tipo'];
		    $nome = $valori['nome'];
			$visibile = $valori['visibile'];
	  ?>
      <tr bgcolor="<? echo $col_sf; ?>">
        <td valign="top" style="padding-top: 2px; padding-bottom: 2px">
		<?
		if ($visibile == 'no'):
		?>
		[img]../images/ico_noview.gif[/img]
        <input name="val[]" type="checkbox" id="val[]" value="<? echo $id_tipo; ?>">
        <input name="id[]" type="hidden" id="id[]" value="<? echo $id_tipo; ?>">
		<?
		else:
		?>
		[img]../images/ico_view.gif[/img]
		<input name="val[]" type="checkbox" id="val[]" value="<? echo $id_tipo; ?>" checked>
		<input name="id[]" type="hidden" id="id[]" value="<? echo $id_tipo; ?>">
		<?
		endif;
		?>
          <? echo $nome; ?><a name="<? echo $id_tipo; ?>"></a></td>
        <td align="right" style="padding-top: 2px; padding-bottom: 2px">','','width=350,height=370')">[img]../images/mod.gif[/img] [img]../images/del_cat.gif[/img]</td>
      </tr>
      <?
	  }
	  ?>
Mentre il codice che riceve ed elabora è il seguente

codice:
    for($x=0; $x < count($_POST[val]); ++$x)
	{
	    $val = $_POST[val][$x];
		if ($val == ''):
		$valore = "no";
		else:
		$valore = "si";
		endif;
	    $sql_mod = "update cart_tipi set visibile = '$valore' WHERE id_tipo = '$val'";
		mysql_query ($sql_mod, $link);
Non modifica nulla...dove sbaglio?