Per la 5 D e 5 E: Visualizzare i campi di un record di una tabella MySql in una SELECTBOX di un modulo form con il Php


Per le Quinte del Corso SIA dell'ITE "A BASSI" di Lodi

per visualizzare i dati di una tabella dentro una SELECTBOX

nel ciclo while anche il tag <select...>

il ciclo va fatto partire dopo <option value=''>Seleziona un prodotto</option> 

poi metti il ciclo while, lo chiudi e fai </select>


<select name="utenti">
<option value=''>Seleziona un utente</option> 
<?php
while($row = mysql_fetch_assoc($result)) {
?>
<option value="<?php echo $row['id'];?>"><?php echo $row['name'];?></option>
<?php } ?>
</select>

Altro esempio:

Inserimento di un record:
Codice PHP:
$toinsert "INSERT INTO clienti (ragionesociale, indirizzo, citta, cap, partitaiva, codicefiscale)
VALUES
('"
.$ragionesociale."','".$indirizzo."','".$citta."','".$cap."','".$partitaiva."','".$codicefiscale."')";  
Visualizzazione di tutte le città

Ora, se nella tua tabella ci sono tante persone e ognuna di queste è di una città diversa, e vuoi visualizzare tutte le città di tutte le persone, puoi usare:

Codice PHP:
echo "<select name='nome'>";$result mysql_query("SELECT * FROM clienti")
while(
$row mysql_fetch_array($result))
{
echo 
"<option value='".$row['citta']."'>".$row['citta']."</option>";
}
echo 
"</select>";  
Se vuoi far visualizzare tutte le città inserite, senza doppioni e in ordine alfabetico
Codice PHP:
echo "<select name='nome'>";$result mysql_query("SELECT DISTINCT citta FROM clienti ORDER BY citta ASC")
while(
$row mysql_fetch_array($result))
{
echo 
"<option value='".$row['citta']."'>".$row['citta']."</option>";
}
echo 
"</select>";  
ALTRO ESEMPIO:


<?php
$id_item = 'id_relativo_a_item_da_modificare';
$query="SELECT campo FROM tbl order by id";
$result=mysql_query($query);
while ($row=mysql_fetch_array($result)){
   $selected = ($id_item == $row[campo]) ? " selected" : "";
   echo '<option value="' . $row[campo] .  '"' . $selected . '>' . $row[campo] . '</option>';
}
?>

Commenti

Post popolari in questo blog

Simulazioni di reti (con Cisco Packet Tracer)

Esercizi sulla rappresentazione della virgola mobile IEEE 754 (Floating Point)