Salve a tutti, non riesco a trovare l'errore in questo codice che ho scritto:
Codice PHP:
<form name="form_registrazione" method="post" action="<?php $_PHP_SELF ?>">
<table width=”200″ border=”0″>
<tr>
<td>Cyl:</td>
<td><?php
include ("config.php");
$DBName="rail";
mysql_select_db("$DBName") or die("Impossibile connettersi al database $DBName");
//table cyl
$sql ="SELECT id FROM cyl where cyl='$cyl'";
$r= mysql_query($sql);
$v= mysql_fetch_array($r);
$id= $v['id'];
$sqlquery ="SELECT id,cyl FROM cyl";
$result = mysql_query($sqlquery);
if (!$sqlquery) {
exit ('<p> Errore mentre recuperavo i dati' . mysql_error() . '</p>');
}
while ($value= mysql_fetch_array($result))
{
$val=$value['cyl'];
$indice=$value['id'];
if ($indice==$id){
?>
<td width="" bgcolor="" colspan="">
<textarea name="cyl" value="<?php $value['cyl']?>" rows="1" cols="10"><?php echo $value['cyl'];?></textarea>
</td>
<?php} else { ?>
<td><label><?php echo $val; ?></label></td>
<?php }
}echo " </div>";
?> </td>
</tr>
</table>
<br> <br>
<p>
<input name="invia" type="submit" value="Save" />
</p>
</form>
Non mi funziona l'if, se un certo valore è uguale ad un certo indice, deve stampare l'output in una textarea, altrimenti in una label. Non riesco a capire perchè mi stampa due volte il valore con l'indice uguale, una volta me lo stampa in una textarea, una volta in una label, gli altri valori nella tabella del database non li considera proprio. Dove ho sbagliato?
Grazie a tutti!