• Non ci sono risultati.

Data Base in Internet MySql

N/A
N/A
Protected

Academic year: 2021

Condividi "Data Base in Internet MySql "

Copied!
4
0
0

Testo completo

(1)

Data Base MySql in Internet con PHP - Prof. Claudio Maccherani - Perugia - 2019 pag. 1

Data Base in Internet MySql

Esempio di applicazione PHP

Prof. Claudio Maccherani

Un’applicazione che interroghi un database remoto in un server web è scritta in PHP (Personal Home Page tools) - se web server Apache - o in ASP (Active Server Page) - se web server IIS - e si serve di tre diverse tipologie di pagine utilizzando un modello di applicazione detto Three-Tied (a tre livelli). Il livello di interfaccia con l’utente finale (Front End) corrisponde alle pagine HTML o DHTML interpretate dal browser del client, il livello intermedio (Middleware) corrisponde alle pagine ASP o PHP che collegano il database e sono eseguite dal server e infine l’ultimo livello (Back End) è quello fornito dal software di sviluppo e manutenzione del database remoto. Per maggiori informazioni su PHP si vedano le relative dispense.

Le pagine PHP possono essere eseguite solamente all’interno di un server Web. Microsoft fornisce IIS (Internet Information Server) per Windows, Apache fornisce APACHE per Linux. Apache viene fornito anche in versione Windows in piattaforme quali XAMPP (X-cross plataform, A- Apache,, M-MySql, P-PHP, P-Perl) e altre. In XAMPP con phpMyAdmin si definiscono e gestiscono i database e nella cartella httdocs risiedono le pagine php e html.

Per l’utilizzazione locale si imposta nel browser l’indirizzo http://localhost/ o http://127.0.0.1/ o ancora http://nomecomputer/.

Esempio 2019 (sulla falsariga della Rubrica Amici in ASP del 2000)

La rubrica è costituita dalla tabella AMICI (Codice, Nome, Cognome, Telefono) del data base MySql RUBRICA2. L’applicazione PHP - che prevede gestione (inserimento, variazione, cancellazione) ed elenco - è costituita dalle pagine index.htm , inserimento.htm , pesca.php , elenco.php , variazcanc.php , gestione.php e x_connect.php ed è così strutturata:

index.htm 1-inserimento 2-variazione 3-cancellazione 4-elenco

inserimento.htm Nome [ ] Cognome [ ] Telefono [ ]

registra

pesca.php

seleziona codice o nome da elenco

variazcanc.php Codice [ ] Nome [ ] Cognome [ ] Telefono [ ]

memorizza

cancella

elenco.php

Codice Nome Cognome Telefono

gestione.php

memorizza cancella

RUBRICA2

x_connect.php

connessione al database

(2)

Data Base MySql in Internet con PHP - Prof. Claudio Maccherani - Perugia - 2019 pag. 2

index.htm

<a href="inserimento.htm"> 1 – Inserimento </a>

<a href="pesca.php?flag=V"> 2 – Variazione </a>

<a href="pesca.php?flag=C"> 3 – Cancellazione </a>

<a href="elenco.php> 4 – Elenco </a>

flag specifica variazione (V) o cancellazione (C)

inserimento.htm (form)

<form method="POST" action="gestione.php?scelta=1">

<table border="1">

<tr><td>Nome</td><td><input type="text" name="txtnome"></td></tr>

<tr><td>Cognome</td><td><input type="text" name="txtcognome"></td>

</tr><tr><td>Telefono</td><td><input type="text" name="txttelefono">

</td></tr></table>

<p><input type="submit" value="Registra"></p>

</form>

scelta specifica inserimento (1), variazione (2) o cancellazione (3)

x_connect.php (connessione al database, file da includere nelle varie pagine php)

$DB_host = 'localhost'; // host $DB_utente = 'root'; // utente $DB_password = ''; // password $DB_nome = 'rubrica2'; // nome database $DB_tabella = 'amici2'; // tabella

$conn = new mysqli($DB_host,$DB_utente,$DB_password,$DB_nome);

if ($conn->connect_errno)

{ echo 'Errore connessione: ' . $conn->connect_error; } (file da includere nelle singole pagine php per la connessione al database)

pesca.php flag variazione (V) o cancellazione (C), codice codice record selezionato

<?php

require 'x_connect.php';

$flag = $_GET['flag']; $dida = "";

if ($flag=="V") $dida = "VARIAZIONE";

if ($flag=="C") $dida = "CANCELLAZIONE";

echo "<p><b>".$dida."</b><br></p>";

echo '<table border="1"><tr>

<td width="13%"><font color="#008000"><b>Codice</b></font></td>

<td width="30%"><font color="#008000"><b>Nome</b></font></td>

<td width="32%"><font color="#008000"><b>Cognome</b></font></td>

<td width="25%">

<font color="#008000"><b>Telefono</b></font></td></tr>';

$sql = "SELECT * FROM ".$DB_tabella." ORDER BY Codice";

$result = mysqli_query($conn,$sql);

while($row = mysqli_fetch_array($result)) {

$link = "<a href = 'variazcanc.php?flag = ".$flag."&codice = "

.$row['Codice']."'>" .$row['Codice']."</a>";

echo "<tr><td align='center'>".$link."</td>";

echo "<td>".$row['Nome']."</td><td>".$row['Cognome']."</td><td>"

.$row['Telefono']."</td></tr>";

}

echo "<table>";

?>

(3)

Data Base MySql in Internet con PHP - Prof. Claudio Maccherani - Perugia - 2019 pag. 3

variazcanc.php (form) - flag variazione (V) o cancellazione (C), codice codice record selezionato

<?php

require 'x_connect.php';

$flag = $_GET['flag']; $dida = "";

if ($flag=="V") { $scelta = 2; $dida = "VARIAZIONE"; $rw = ""; } if ($flag=="C")

{ $scelta = 3; $dida = "CANCELLAZIONE"; $rw = "readonly"; }

$codice = $_GET['codice'];

echo "<p><b>".$dida."</b><br></p>";

$sql = "SELECT * FROM ".$DB_tabella." WHERE Codice=".$codice;

$result = mysqli_query($conn,$sql);

$row = mysqli_fetch_array($result);

echo '<form method="POST" action="gestione.php?scelta='.$scelta.'>

<table border="0"><tr><td>Codice:</td>

<td><input type="text" name="txtcodice" value=' .$row["Codice"].' readonly><br></td></tr>

<tr><td>Nome [15]</td>

<td><input type="text" name="txtnome" value='

.$row["Nome"].' maxlength="15" '.$rw.'><br></td></tr>

<tr><td>Cognome [20]</td>

<td><input type="text" name="txtcognome" value='

.$row["Cognome"].' maxlength="20" '.$rw.'><br></td></tr>

<tr><td>Telefono [12]</td>

<td><input type="text" name="txttelefono" value='

.$row["Telefono"].' maxlength="12" '.$rw.'><br></td></tr>

</table><p><input type="submit" value="'.$dida.'"></p>

</form>';

?>

elenco.php

<?php

require 'x_connect.php';

echo '<table border="1"><tr>

<td width="13%"><b>Codice</b>></td>

<td width="30%"><b>Nome</b></td>

<td width="32%"><b>Cognome</b></td>

<td width="25%"><b>Telefono</b></td></tr>';

$sql = "SELECT * FROM ".$DB_tabella." ORDER BY Codice";

$result = mysqli_query($conn,$sql);

while($row = mysqli_fetch_array($result)) { echo "<tr><td>".$row['Codice']."</td><td>"

.$row['Nome']."</td><td>".$row['Cognome']."</td><td>"

.$row['Telefono']."</td></tr>";

}

echo "<table>";

?>

(4)

Data Base MySql in Internet con PHP - Prof. Claudio Maccherani - Perugia - 2019 pag. 4

gestione.php - scelta specifica scelta menu (1/2/3/4).

<?php

require 'x_connect.php';

$scelta = $_GET['scelta'];

if ($scelta==1) { // 1-inserimento

$nome = $_POST['txtnome'];

$cogn = $_POST['txtcognome'];

$tele = $_POST['txttelefono'];

echo "INSERIMENTO ".$nome." ".$cogn."<br><br></p>";

$sql = "INSERT INTO ".$DB_tabella.

" (Nome,Cognome,Telefono) VALUES ('$nome','$cogn','$tele')";

mysqli_query($conn,$sql) or die(mysqli_error($conn));

echo '<a href="inserimento.htm">

<p>Inserimento Effettuato</a></p>';

}

if ($scelta==2) { // 2-variazione

$codx = $_POST['txtcodice'];

$nome = $_POST['txtnome'];

$cogn = $_POST['txtcognome'];

$tele = $_POST['txttelefono'];

echo "VARIAZIONE ".$codx." ".$nome." ".$cogn."<br><br></p>";

$sql = "UPDATE ".$DB_tabella.

" SET Nome='".$nome."',Cognome='".$cogn."',Telefono='".$tele.

"' WHERE Codice=".$codx;

mysqli_query($conn,$sql) or die(mysqli_error($conn));

echo '<a href="pesca.php?flag=V">

<p>Variazione Effettuata</a></p>';

}

if ($scelta==3) { // 3-cancellazione

$codx = $_POST['txtcodice'];

$nome = $_POST['txtnome'];

$cogn = $_POST['txtcognome'];

echo "CANCELLAZIONE ".$codx." ".$nome." ".$cogn."<br><br></p>";

$sql = "DELETE FROM ".$DB_tabella." WHERE Codice=".$codx;

mysqli_query($conn,$sql) or die(mysqli_error($conn));

echo '<a href="pesca.php?flag=C">

<p>Cancellazione Effettuata</a></p>';

}

?>

Riferimenti

Documenti correlati

- L’alunno, stimolato dall’insegnante, va alla ricerca/scoperta dei significati del linguaggio relativo al mondo dei cartoons, videogames, telecomunicazioni (linguaggio

- Comprendere semplici testi, accompagnati da supporti visivi, cogliendone il significato globale. Metodo funzionale comunicativo che prevede la creazione di volta in volta di

7. Danni di qualsiasi natura arrecati dall’allievo agli spazi e ai materiali di proprietà dell’ente dovranno essere risarciti dal responsabile.

Ad una distanza di 5 metri, esegui 5 serie di tiri di riscaldamento speciale concentrandoti sulle fasi della sequenza: prima serie rimanendo concentrati sui

Avanzato E’ in grado di individuare i comandi nel menu in modo autonomo anche in situazioni nuove non note; e in grado di salvare su qualunque dispositivo i

L’alunno mette in atto in modo autonomo le abilità connesse ai temi trattati e sa collegare le conoscenze alle esperienze vissute e a quanto studiato con pertinenza e

Amaranto, Orzo, Grano Saraceno, Cece, Mais, Grano Duro (Durun), Farro ( Triticum Boeoticum), Farro Dicocco, Glutine, Semi di Canapa, Semi di Lino, Semi di Lupino, Malto (Orzo),

S.I.DELLA TREBBIA ASD EMILIA ROMAGNA [Istr.. HORSE CLUB