Quello che ancora manca alla nostra applicazione gestionale in PHP e MySQL per il magazzino è la possibilità di inserire un nuovo valore nella lista della merce, modificare un valore ed eliminarlo. Tutte queste operazioni possono essere fatte in un’unica pagina web che in questa lezione del corso andremo a delineare.
Quella che va creata è una pagina web con tutti i dati dell’articolo di magazzino che potranno essere modificati: codice interno, codice a barre, descrizione, prezzo, unità di misura e categoria. Come primo compito dobbiamo riempire le caselle a discesa delle unità di misura e delle categorie.
<html> <head><title>Gestione Articolo</title></head> <?php include_once("../utility/mysqlconn.php"); include_once("../utility/mysql.php"); $articolo = new CMySQL($hostname, $username, $password, $database); ?> <body> <h1 align="center"><b>Cerberus</b></h1> <h2 align="center"><b>Gestione Articolo</b></h2> <br><br> <form action="#" method="POST" name="Articolo"> <table width="800" align="center" cellpadding="0" border="0" cellspacing="0"> <tr> <td width="390" height="50" align="left" valign="top"> <label>Codice Interno: <input name="codint" type="text" title="Inserire il codice interno articolo" size="10" maxlength="10"> </label> </td> <td width="20"> </td> <td width="390" height="50" align="left" valign="top"> <label>Codice a Barre: <input name="codbarre" type="text" title="Inserire il codice a barre articolo" size="13" maxlength="13"> </label> </td> </tr> <tr> <td width="390" height="50" align="left" valign="top"> <label>Descrizione: <input name="descrizione" type="text" title="Inserire la descrizione articolo" size="30" maxlength="100"> </label> </td> <td width="20"> </td> <td width="390" height="50" align="left" valign="top"> <label>Prezzo: <input name="prezzo" type="text" title="Inserire il prezzo articolo" size="10" maxlength="12"> </label> </td> </tr> <tr> <td width="390" height="50" align="left" valign="top"> <label>Unità di misura: <select name="unimis"> <?php $articolo->OpenRowset("SELECT * FROM unimis ORDER BY Sigla"); for ($i = 0; $i < $articolo->GetNumRows(); $i++) { $strSigla = $articolo->GetData("Sigla"); $id = $articolo->GetData("IDUM"); if ($strSigla && strlen($strSigla) > 0 && $id > 0) { if ($i == 0) echo '<option value="'.$id.'" selected>'.$strSigla; else echo '<option value="'.$id.'">'.$strSigla; } $articolo->MoveNext(); } ?> </select> </label> </td> <td width="20"> </td> <td width="390" height="50" align="left" valign="top"> <label>Categoria: <select name="categoria"> <?php $articolo->OpenRowset("SELECT * FROM categorie ORDER BY Categoria"); for ($i = 0; $i < $articolo->GetNumRows(); $i++) { $strCategoria = $articolo->GetData("Categoria"); $id = $articolo->GetData("IDCategoria"); if ($strCategoria && strlen($strCategoria) > 0 && $id > 0) { if ($i == 0) echo '<option value="'.$id.'" selected>'.$strCategoria; else echo '<option value="'.$id.'">'.$strCategoria; } $articolo->MoveNext(); } ?> </select> </label> </td> </tr> </table> </form> </body> </html>
Il risultato di tutto questo lavoro è questo.
L’aspetto della pagina non è dei migliori, forse un poco spartano, ma in questa sede non dobbiamo prendere in considerazione gli aspetti grafici, bensì il motore che sta sotto la pagina, nel codice sorgente. Riprenderemo la creazione di questa pagina nella prossima lezione, come esercizio potete riempire i campi quando avete un identificativo di un articolo, lavoro che vedremo come fare nella prossima lezione.