Pagina web simulazione ITSI 2016

La prima domanda della seconda parte della simulazione ministeriale di seconda prova esami di Stato 2016 per Istituto Amministrazione Finanza e Marketing indirizzo Sistemi Informativi Aziendali una cui proposta di soluzione (per la prima parte) è stata fornita qui chiede di creare una pagina web; più precisamente la domanda recita:

In relazione al tema proposto nella prima parte, si immagini che un cliente, in un punto vendita della catena, non trovi un capo della sua taglia di un determinato modello, e che chieda al commesso di verificare se esso è presente in un altro punto vendita. Il candidato sviluppi in un linguaggio a sua scelta le pagine web che consentono all’addetto alle vendite di visualizzare, per ciascun punto vendita, il numero di capi disponibili del tipo richiesto dal cliente, specificando modello e taglia.

Una soluzione può essere data scrivendo il codice in HTML della pagina web e aggiungendo anche la query SQL necessaria a fare la richiesta di accesso ai dati del database.

Per chi durante l’anno ha svolto un linguaggio di accesso ai dati come il php, è possibile fornire anche la pagina web (in php) di visualizzazione dati che usa le funzioni MySql del php per effettuare la query e poi visualizzare i dati.

Pagina web ricerca dati

<html>
<head><title></title>
<br/>
<h2 align='center'><font face='Book Antiqua'>
RICERCA CAPO D&lsquoABBIGLIAMENTO
</h2>
<h3 align='center'>INSERISCI DATI</h3>
<center>
  <FORM action='invio_ricerca_capo.php' method='post'>
     Modello:  <input type=text name='modello'><br/>
     Taglia:&nbsp;&nbsp;&nbsp; <input type=text name='taglia'>
     <br/><br/>
     <INPUT type='submit' value='CERCA'>
     <INPUT type='reset' value='ANNULLA'>
  </FORM>
</center>
</head>
</html>

La pagina dovrebbe comparire come quella in figura:

Pagina web di Ricerca dati

Query

select codicepunto, indirizzo, telefono, numpezzi AS "NUMERO DI CAPI"
from puntivendita, appartenenza, capi, modelli
where  (puntivendita.codicepunto=appartenenza.idpuntovendita)
        and (appartenenza.idcapo=capi.idcapo)
        and (capi.idmodello=modelli.codicemodello)
        and ( (nome = [inserisci modello])
        and (taglia = [inserisci taglia]))
order by codicepunto

Osservazione: si dovrebbe escludere dalla query il punto vendita da cui si effettua la ricerca, ma la cosa risulta inutile visto che come dice il testo il capo non è presente nel punto vendita

^su

Visualizzazione dati

Se durante l’anno è stato studiato il linguaggio php si può fare la pagina web di visualizzazione dati (se si conosce un altro linguaggio si dovrebbe fare una pagina simile a questa) come la seguente:

<?php include "connessione.php";
$modello = $_POST['modello'];
$taglia = $_POST['taglia'];

$risultato  = mysql_query("select codicepunto, 
                                  indirizzo,
                                  telefono, 
                                  numpezzi AS 'NUMERO DI CAPI' 
  from puntivendita, appartenenza, capi, modelli 
  where (puntivendita.codicepunto=appartenenza.idpuntovendita)
        and (appartenenza.idcapo=capi.idcapo)
        and (capi.idmodello=modelli.codicemodello)
        and ((nome = $modello])
        and (taglia = $taglia))
  order by codicepunto");

if($risultato)
{
  print "<h2>IL CAPO E' STATO TROVATO NEI SEGUENTI PUNTI VENDITA:</h2>";
  print "<table>
         <th width='15%'>CODICE</th>
         <th width='35%'>INDIRIZZO</th>
         <th width='25%'>TELEFONO</th> 
         <th width='25%'>CAPI PRESENTI</th>"; //intestazione
  while( $riga = mysql_fetch_array($risultato) )
  {
    print "<tr><td>". $riga['codicepunto']."</td>";
    print "<td>". $riga['indirizzo']."</td>";
    print "<td>". $riga['telefono']."</td>"
    print "<td>". $riga['numpezzi']."</td></tr>";
  }
  print "</table>";
}
?>

^su

Connessione.php

Il file seguente è infine quello necessario a permettere la connessione al database:

<?php
$hostname = '127.0.0.1';  //oppure 'localhost'
$username = 'root';
$password = '';
 
if ( !( mysql_connect($hostname, $username, $password) ) )
{
   print "<h3>Errore di connessione al database</h3>\n";
   exit;
}
if (! mysql_select_db("esame") )
{
    print "<h3>Errore: database non esistente</h3>\n";
    exit;
}
?>

^su