Codice PHP:
<?phprequire 'connessione.php';$db_selection = mysql_select_db('db',$cn);
if($_POST && isset($_GET['ID'])){ aggiorna_record();}elseif(isset($_GET['ID'])){ mostra_record();}else mostra_lista();
function mostra_lista(){ if(isset($_GET['msg'])) echo '<b>'.htmlentities($_GET['msg']).'</b><br /><br />';
$query = "SELECT ID FROM tabella";
$result = mysql_query($query);
if (!$result) { die("Errore nella query $query: " . mysql_error()); }
echo ' <table border="1"> <tr> <th>ID</th> <th> </th> </tr>';
while ($row = mysql_fetch_assoc($result)) { $ID = htmlspecialchars($row['ID']);
$link = $_SERVER['PHP_SELF'] . '?ID=' . $row['ID'];echo "<tr> <td>$ID</td> <td><a href=\"$link\">VIEW</a></td> </tr>"; }echo "</table>";
mysql_free_result($result);
mysql_close();}
function aggiorna_record(){ //funziona}
function mostra_record(){ if(isset($_GET['msg'])) echo '<b>'.htmlentities($_GET['msg']).'</b><br /><br />';
$ID = intval($_GET['ID']);
$query = "SELECT tabella1.cyl, tabella2.operating_pressure FROM tabella1, tabella2, tabella, tabella3 WHERE tabella.ID = $ID AND tabella.FkEngine=tabella3.ID2 AND tabella3.Fkcyl=tabella1.id AND tabella3.Fkoperating_pressure=tabella2.id";
$result = mysql_query($query);
if (!$result) { die("Errore nella query $query: " . mysql_error()); }
if(mysql_num_rows($result) != 1) { die("l'ID passato via GET è errato"); }
list($cyl, $operating_pressure) = mysql_fetch_row($result);
$cyl= htmlspecialchars($cyl); $operating_pressure= htmlspecialchars($operating_pressure); mysql_close(); ?> <form name="form_registrazione" method="post" action=""> <table width=”200″ border=”0″> <tr> <td>FkCyl:</td> <td><?php include ("config.php"); $DBName="db";
mysql_select_db("$DBName") or die("Impossibile connettersi al database $DBName");
//table tabella1 $sql ="SELECT id FROM tabella2 where cyl='$cyl'"; $r= mysql_query($sql); $v= mysql_fetch_array($r); echo "<div id=styled-select> <select name='cyl'>"; echo "<option value = ".$v['id']." >$cyl</option>"; $sqlquery ="SELECT id,cyl FROM tabella1"; $result = mysql_query($sqlquery); if (!$sqlquery) { exit ('<p> Errore mentre recuperavo i dati' . mysql_error() . '</p>'); } while ($value= mysql_fetch_array($result)) { echo "<option value = ".$value['id'].">".$value['cyl']."</option>"; }echo "</select> </div>"; ?> </td> </tr> </td> <td>Operating pressure: </td> <td><?php $sql ="SELECT id FROM tabella2 where operating_pressure='$operating_pressure'"; $r= mysql_query($sql); $v= mysql_fetch_array($r); echo "<div id=styled-select><select name='operating_pressure'>"; echo "<option value = ".$v['id']." >$operating_pressure</option>"; $sqlquery ="SELECT id,operating_pressure FROM tabella2"; $result = mysql_query($sqlquery); if (!$sqlquery) { exit ('<p> Errore mentre recuperavo i dati' . mysql_error() . '</p>'); } while ($value= mysql_fetch_array($result)) { echo "<option value = ".$value['id'].">".$value['operating_pressure']."</option>"; }echo "</select> </div>"; ?></td> </tr> </table> <br> <br> <p> <input name="invia" type="submit" value="Save" /> </p> </form>
<?php}mysql_close();?>
Non mi funziona questa parte:
Codice PHP:
//table tabella1 $sql ="SELECT id FROM tabella2 where cyl='$cyl'"; $r= mysql_query($sql); $v= mysql_fetch_array($r); echo "<div id=styled-select> <select name='cyl'>"; echo "<option value = ".$v['id']." >$cyl</option>"; $sqlquery ="SELECT id,cyl FROM tabella1"; $result = mysql_query($sqlquery); if (!$sqlquery) { exit ('<p> Errore mentre recuperavo i dati' . mysql_error() . '</p>'); } while ($value= mysql_fetch_array($result)) { echo "<option value = ".$value['id'].">".$value['cyl']."</option>"; }echo "</select> </div>"; ?> </td> </tr> </td> <td>Operating pressure: </td> <td><?php $sql ="SELECT id FROM tabella2 where operating_pressure='$operating_pressure'"; $r= mysql_query($sql); $v= mysql_fetch_array($r); echo "<div id=styled-select><select name='operating_pressure'>"; echo "<option value = ".$v['id']." >$operating_pressure</option>"; $sqlquery ="SELECT id,operating_pressure FROM tabella2"; $result = mysql_query($sqlquery); if (!$sqlquery) { exit ('<p> Errore mentre recuperavo i dati' . mysql_error() . '</p>'); } while ($value= mysql_fetch_array($result)) { echo "<option value = ".$value['id'].">".$value['operating_pressure']."</option>"; }echo "</select> </div>"; ?></td> </tr>
in particolare queste due query:
Codice PHP:
$sql ="SELECT id FROM tabella2 where cyl='$cyl'";
$sql ="SELECT id FROM tabella2 where operating_pressure='$operating_pressure'";
non mi trova i valori di $cyl e $operating_pressure. Ho provato a stampare i valori di queste variabili e sono giusti. Quando faccio questo confronto cyl='$cyl'" non trova il record, la stessa cosa succede per operating_pressure='$operating_pressure'.
Grazie mille a tutti