Salve, io vorrei far si che se si seleziona una determinata scelta da un box select, in un secondo box vengano richiamati dal database i dati filtrati secondo la richiesta.
Se si seleziona dal box Platform una determinata piattaforma, in base all'id nel box game vengano solamente inseriti i giochi di quella determinata piattaforma solamente.
Provando la query modificata secondo la richiesta, aggiungendo "WHERE platform=1" a $query1 mi viene stampato a video la mia richiesta, quindi l'azione che faccio svolgere è corretta sintatticamente.. quindi mi chiedo cosa sbaglio?
Codice PHP:
<?php
$query1 = "SELECT id, title FROM gc_games";
$query2 = "SELECT id, autor FROM gc_autors";
$query3 = "SELECT * FROM gc_platforms";
$results1 = mysql_query($query1, $db);
$results2 = mysql_query($query2, $db);
$results3 = mysql_query($query3, $db);
?>
<form method="post" action="save_news.php">
<font color="#CCCCCC" face="Verdana, Arial, Helvetica, sans-serif" size="-1" style="font-weight: bolder;">
<h2>FORM DI INSERIMENTO NEWS</h2>
<table cellpadding="2" cellspacing="10" bgcolor="#333333">
<tr bgcolor="#999999">
<td align="right">Titolo:</td>
<td><input type="text" name="title" size="40" /></td>
</tr>
<tr bgcolor="#999999">
<td align="right">Tipo:</td>
<td><select name="type">
<option value="news">News</option>
<option value="review">Recensione</option>
<option value="preview">Anteprima</option>
</select></td>
</tr>
<tr bgcolor="#999999">
<td align="right" >Piattaforma:</td>
<td><select name="platform">
<option value=""></option>
<?php
while($row3 = mysql_fetch_array($results3))
{
echo "<option value=\"$row3[id]\">$row3[vendor] - $row3[name]</option>";
}
?>
</select>
</td>
</tr>
<tr bgcolor="#999999">
<td align="right" >Titolo Gioco:</td>
<td><select name="game">
<?php
if($row3['id'] == '1')
{
$query1 .= "WHERE platform=1";
while($row3 = mysql_fetch_array($results3))
{
echo "<option value=\"$row1[id]\">$row1[title]</option>";
}
}
elseif($row3['id'] == '2')
{
$query1 .= "WHERE platform=2";
while($row3 = mysql_fetch_array($results3))
{
echo "<option value=\"$row1[id]\">$row1[title]</option>";
}
}
elseif ($row3['id'] == '3')
{
$query1 .= "WHERE platform=3";
while($row3 = mysql_fetch_array($results3))
{
echo "<option value=\"$row1[id]\">$row1[title]</option>";
}
}
else
{
echo "<option value=\"\"></option>";
}
?>
</select>
</td>
</tr>
<tr bgcolor="#999999">
<td align="right" valign="top">Testo:</td>
<td><textarea cols="60" rows="40" name="content"></textarea></td>
</tr>
<tr bgcolor="#999999">
<td align="right" valign="top">Autore:</td>
<td style="color:#FFFFFF;"><?php echo "" ?>
</td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="Invia" /><input type="reset" value="Cancella" /></td>
</tr>
</table>
</font>
</form>
Ho inserito:
Codice PHP:
else
{
echo "<option value=\"\"></option>";
}
Xkè cosi facendo mi stampi una casella vuota quando non è selezionata alcuna piattaforma