- Home
- Categorie
- Coding e Sistemistica
- PHP
- Domanda apparentemente stupida...
-
Ah! Ho dimenticato di indicare che i dati del menu devono essere importati dal DB in modo automatico (attraverso inserimento normalissimo per intenderci)!
-
Ciao SantuzzoHendrix,
puoi usare un input di tipo select per creare il form.
-
Ah! Quindi con una query semplicissima?
-
No, per select intendevo questo:
<select name="auto"> <option value="volvo">Volvo</option> <option value="saab">Saab</option> <option value="mercedes">Mercedes</option> <option value="audi">Audi</option> </select>
-
Ah! Ok... Ma se volessi prendere da DB devo fare:
while ($row = mysql_fetch_assoc($result)) //$result è la query di selezione
{
$auto = htmlentities($row['Auto']);
<select name="auto">
<option><?php echo $auto ?></option>
<?php
}Giusto?
-
Non proprio, sarebbe cosi:
[php]
echo '<select name="auto">';
while ($auto = mysql_fetch_assoc($result)) //$result è la query di selezione
echo '<option value="'.$auto['id'].'">'.$auto['nome'].'</option>';
echo '</select>';
[/php]Deve essere inserito dentro il form per essere inviato.
-
Ah! Ok... Grazie!
-
E se volessi inserirli in una tabella?
-
Beh è uguale, devi ciclarli per creare le righe come vuoi tu.
-
Per la tabella ho risolto così:
<?php
$sql = " ";
$sql = "SELECT * FROM strum;";
$result = mysql_query($sql);
?>
<tr>
<td align="center">Strumento utilizzato ></td>
<td align="center"><?php echo '<select name="strumento">';
while ($strumento = mysql_fetch_assoc($result))
echo '<option value="'.$strumento['Matricola_strumento'].'">'.$strumento['Strumento'].'</option>';
echo '</select>'; ?></td>
</tr>Ma ora per visualizzare i dati inseriti così?
-
Beh sono sempre query per inserire e recuperare i dati dal database, dovresti studiare come funzionano le query.
-
Ah, quindi prendo la scelta e la inserisco nella query come adesso... Penso che il MySQL e il PHP siano i migliori linguaggi di programmazione che siano mai stati costruiti! XD
-
Ho bisogno un'ultima volta...
Questo è il mio codice della prima pagina php:
<html lang="en">
<head>
<title>Visualizzazione strumenti</title>
</head>
<body>
<marquee width="100%" direction="left" scrollamount="8"><img src="img/logo.jpg" /></marquee>
<br />
<br />
<script language="JavaScript">
<!--
data = new Date();
ora =data.getHours();
minuti=data.getMinutes();
giorno = data.getDay();
mese = data.getMonth();
date= data.getDate();
year= data.getYear();
if(minuti< 10)minuti="0"+minuti;
if(year<1900)year=year+1900;
if(ora<10)ora="0"+ora;
if(giorno == 0) giorno = " DOMENICA ";
if(giorno == 1) giorno = " LUNEDI' ";
if(giorno == 2) giorno = " MARTEDI' ";
if(giorno == 3) giorno = " MERCOLEDI' ";
if(giorno == 4) giorno = " GIOVEDI' ";
if(giorno == 5) giorno = " VENERDI' ";
if(giorno == 6) giorno = " SABATO ";
if(mese == 0) mese = "GENNAIO ";
if(mese ==1) mese = "FEBBRAIO ";
if(mese ==2) mese = "MARZO ";
if(mese ==3) mese = "APRILE ";
if(mese ==4) mese = "MAGGIO ";
if(mese ==5) mese = "GIUGNO ";
if(mese ==6) mese = "LUGLIO ";
if(mese ==7) mese = "AGOSTO ";
if(mese ==8) mese = "SETTEBRE ";
if(mese ==9) mese = "OTTOBRE ";
if(mese ==10) mese = "NOVEMBRE ";
if(mese ==11) mese = "DICEMBRE ";
document.write("OGGI E' "+giorno+" "+date+" "+mese+" "+year+" - ORA "+ora+":"+minuti);
//-->
</script>
<br />
<br />
<?php
$conn = mysql_connect("localhost","root","");
if (!$conn)
{
die('Connessione mancata con il root. Errore: ' . mysql_error());
}
$select = mysql_select_db("sabicom",$conn);
if (!$select)
{
die("Errore nella connessione con il database. Errore: " . mysql_error());
}
$sql = "SELECT * FROM fornitori;";
$result = mysql_query($sql);
if (!$result)
{
die('Errore durante il trasferimento dei dati');
}
?>
<table border="1" width="100%">
<tr>
<td align="center">Fornitore</td>
<td align="center"><?php echo '<select name="fornitore">';
while ($fornitore = mysql_fetch_assoc($result))
echo '<option value="'.$fornitore['Matricola_fornitore'].'">'.$fornitore['Fornitore'].'</option>';
echo '</select>'; ?></td>
<?php
$sql = "SELECT * FROM marca;";
$result = mysql_query($sql);
if (!$result)
{
die('Errore durante il trasferimento dei dati');
}
?>
<td align="center">Marca</td>
<td align="center"><?php echo '<select name="marca">';
while ($marca = mysql_fetch_assoc($result))
echo '<option value="'.$marca['Matricola_marca'].'">'.$marca['Marca'].'</option>';
echo '</select>'; ?></td>
<?php
$sql = "SELECT * FROM utilizzatore;";
$result = mysql_query($sql);
if (!$result)
{
die('Errore durante il trasferimento dei dati');
}
?>
<td align="center">Utilizzatore</td>
<td align="center"><?php echo '<select name="utilizzatore">';
while ($utilizzatore = mysql_fetch_assoc($result))
echo '<option value="'.$utilizzatore['ID'].'">'.$utilizzatore['Utilizzatore'].'</option>';
echo '</select>'; ?></td>
<?php
$sql = "SELECT * FROM strum;";
$result = mysql_query($sql);
if (!$result)
{
die('Errore durante il trasferimento dei dati');
}
?>
<td align="center">Strumento</td>
<td align="center"><?php echo '<select name="strumento">';
while ($strumento = mysql_fetch_assoc($result))
echo '<option value="'.$strumento['Matricola_strumento'].'">'.$strumento['Strumento'].'</option>';
echo '</select>'; ?></td>
</tr>
</table>
<form method="post" action="visual.php">
<input type="submit" value="Visualizza" />
</form>
<br />
<br />
<form method="post" action="index.html">
<div align="right"><input type="submit" value="Vai alla pagina principale" /></div>
</form>
</body>
</html>Questa è invece la seconda dove mi fa' visualizzare i dati:
<html lang="en">
<head>
<title>Visualizzazione strumenti</title>
</head>
<body>
<marquee width="100%" direction="left" scrollamount="8"><img src="img/logo.jpg" /></marquee>
<br />
<br />
<script language="JavaScript">
<!--
data = new Date();
ora =data.getHours();
minuti=data.getMinutes();
giorno = data.getDay();
mese = data.getMonth();
date= data.getDate();
year= data.getYear();
if(minuti< 10)minuti="0"+minuti;
if(year<1900)year=year+1900;
if(ora<10)ora="0"+ora;
if(giorno == 0) giorno = " DOMENICA ";
if(giorno == 1) giorno = " LUNEDI' ";
if(giorno == 2) giorno = " MARTEDI' ";
if(giorno == 3) giorno = " MERCOLEDI' ";
if(giorno == 4) giorno = " GIOVEDI' ";
if(giorno == 5) giorno = " VENERDI' ";
if(giorno == 6) giorno = " SABATO ";
if(mese == 0) mese = "GENNAIO ";
if(mese ==1) mese = "FEBBRAIO ";
if(mese ==2) mese = "MARZO ";
if(mese ==3) mese = "APRILE ";
if(mese ==4) mese = "MAGGIO ";
if(mese ==5) mese = "GIUGNO ";
if(mese ==6) mese = "LUGLIO ";
if(mese ==7) mese = "AGOSTO ";
if(mese ==8) mese = "SETTEBRE ";
if(mese ==9) mese = "OTTOBRE ";
if(mese ==10) mese = "NOVEMBRE ";
if(mese ==11) mese = "DICEMBRE ";
document.write("OGGI E' "+giorno+" "+date+" "+mese+" "+year+" - ORA "+ora+":"+minuti);
//-->
</script>
<br />
<br />
<?php
$conn = mysql_connect("localhost","root","");
if (!$conn)
{
die('Connessione mancata con il root. Errore: ' . mysql_error());
}
$select = mysql_select_db("sabicom",$conn);
if (!$select)
{
die("Errore nella connessione con il database. Errore: " . mysql_error());
}
if (isset($_POST['fornitore']))
{
$fornitori = $_POST['fornitore'];
$sql = "SELECT * FROM strumenti WHERE Venduto_Dismesso = '2' AND ID = '".mysql_real_escape_string($fornitori)."' ORDER BY Utilizzatore;";
$result = mysql_query($sql);
if (!$result)
{
die('Errore durante il trasferimento dei dati');
}
?>
<table border="1" align="center" bordercolor="lightblue">
<tr>
<td align="center">Fornitore</td>
<td align="center">Assistenza</td>
<td align="center">Utilizzatore</td>
<td align="center">Strumento</td>
<td align="center">Marca</td>
<td align="center">Modello</td>
<td align="center">Descrizione</td>
<td align="center">Venduto / Dismesso</td>
<td align="center">Data di acquisizione</td>
</tr>
<?php
while ($row = mysql_fetch_assoc($result))
{
$fornitore = htmlentities($row['Fornitore']);
$assistenza = htmlentities($row['Assistenza']);
$utilizzatore = htmlentities($row['Utilizzatore']);
$strumento = htmlentities($row['Strumento']);
$marca = htmlentities($row['Marca']);
$modello = htmlentities($row['Modello']);
$descrizione = htmlentities($row['Descrizione']);
$vend_dism = htmlentities($row['Venduto_Dismesso']);
$data_acquis = htmlentities($row['Data_acquisizione']);
?>
<tr>
<td align="center"><?php echo $fornitore ?></td>
<td align="center"><?php echo $assistenza ?></td>
<td align="center"><?php echo $utilizzatore ?></td>
<td align="center"><?php echo $strumento ?></td>
<td align="center"><?php echo $marca ?></td>
<td align="center"><?php echo $modello ?></td>
<td align="center"><?php echo $descrizione ?></td>
<td align="center"><?php echo $vend_dism ?></td>
<td align="center"><?php echo $data_acquis ?></td>
</tr>
<?php
}?>
</table>
<?php
mysql_free_result($result);
mysql_close();
}
else
{
echo 'Errore. Nessun dato selezionato. ';?>
<form action="search-visual.php" method="post">
<input type="submit" value="Torna alla pagina precedente" />
</form>
<?php
}
?>
<br />
<br />
<form method="post" action="index.html">
<div align="right"><input type="submit" value="Vai alla pagina principale" /></div>
</form>
</body>
</html>Ma nonostante abbia inserito solo Fornitore come controllo nella seconda pagina e inoltre nella prima ho inserito in maniera corretta sempre il fornitore, mi da sempre:
Errore. Nessun dato selezionato.
Come è possibile?
-
Il select non è all'interno del form per cui non viene inviato.