• Non ci sono risultati.

Hypertext preprocessor

N/A
N/A
Protected

Academic year: 2021

Condividi "Hypertext preprocessor"

Copied!
33
0
0

Testo completo

(1)

Proff. Stasio C. - Conti R. - VG

informatica 1

Introduzione al linguaggio PHP Hypertext preprocessor

Lato client: vuol dire che le operazioni

programmate vengono svolte e visualizzate direttamente sul computer dell'utente collegato

Lato server: vuol dire che le operazioni programmate vengono svolte su server è successivamente visualizzate sul computer

del'utente collegato

(2)

Proff. Stasio C. - Conti R. - VG

informatica 2

• Un Web server non è altro che un

software installato in un server con la funzione di elaborare pagine web e

generare dinamicamente contenuti.

Le semplici pagine .htm non necessitano di particolari interventi da parte del

Web server, il loro codice viene

interpretato dal browser del computer client

• per questo l'html è definito come un linguaggio client side.

(3)

Proff. Stasio C. - Conti R. - VG

informatica 3

PHP può essere usato per molteplici usi:

- Controllare i contenuti

(CMS – Content Management Sistem) - Interrogare un database

- Fruire servizi

(4)

Proff. Stasio C. - Conti R. - VG

informatica 4

Affinchè PHP sia utilizzabile su di una pagina web, è necessario intergrarlo con la base del web HTML.

Database PHP HTML

HTML

(5)

Proff. Stasio C. - Conti R. - VG

informatica 5

• Il web server (solitamente Apache) ospita un "motore" che interpreta le istruzioni PHP e restituisce la pagina al client

• Il codice, una volta interpretato, non viene mostrato nel file html

restituito all'utente !!!!!!!

(6)

Proff. Stasio C. - Conti R. - VG

informatica 6

• Essendo interpretato lato server, non è in grado di interagire con gli eventi del client.

• Una volta caricato il file, per eseguire una nuova istruzione PHP è necessaria una nuova richiesta al server (un reload o una nuova pagina)

(7)

Proff. Stasio C. - Conti R. - VG

informatica 7

• PHP necessita di una nuova richiesta al server per eseguire operazioni. Per

controllare i campi della form sarà quindi necessario l'invio del modulo.

L'utente dovrà attendere il caricamento di una nuova pagina

(8)

Proff. Stasio C. - Conti R. - VG

informatica 8

Per riconoscere PHP in un documento è

sufficiente un sguardo, ogni codice PHP inizia con

<?php e termina con

?>

(9)

Proff. Stasio C. - Conti R. - VG

informatica 9

• Funzione ECHO

visualizza il contenuto di una variabile o di una stringa specificata tra apici

<?php echo “VOLTA”; ?>

(10)

Proff. Stasio C. - Conti R. - VG

informatica 10

• Esempio di Echo

• Echo “pippo”; che stamperà a video pippo

• $nome = “franco”;

• Echo $nome; che stamperà a video franco

(11)

Proff. Stasio C. - Conti R. - VG

informatica 11

EXIT() DIE()

• Le due funzioni che esaminiamo sono exit() e die(); entrambe producono il risultato di arrestare l'esecuzione

dello script, con la differenza che die() consente anche di stampare un messaggio.

(12)

Proff. Stasio C. - Conti R. - VG

informatica 12

• Le funzioni exit() e die() possono

essere utilizzate, quindi, per gestire eventuali situazioni di errore che non consentono di proseguire l'esecuzione del nostro script PHP (i cosiddetti

"errori fatali"). In queste circostanze può essere conveniente usare die()

per mostrare un messaggio di errore appropriato.

(13)

Proff. Stasio C. - Conti R. - VG

informatica 13

• La maggior parte dei linguaggi di

programmazione non usa un carattere speciale per identificare il nome delle variabili;

• nel PHP questo carattere è il simbolo del dollaro (‘$’) da inserire all’inizio del nome

(14)

Proff. Stasio C. - Conti R. - VG

informatica 14

• Le variabili in PHP non hanno bisogno di essere dichiarate, poiché la

dichiarazione avviene nel momento in cui alla variabile viene assegnato un valore;

• inoltre non è necessario definirne il tipo, questo significa che una variabile che

contiene un numero può essere

interpretata sia come numero che come testo.

(15)

Proff. Stasio C. - Conti R. - VG

informatica 15

• Variabili

<?php

$nomescuola = “Volta”; STRINGA

$civico = 81; INTERO

echo $nomescuola.” “.$civico; STAMPA A VIDEO

?>

RISULTATO A VIDEO Volta 81

(16)

Proff. Stasio C. - Conti R. - VG

informatica 16

L’interazione con l’utente

• Una delle caratteristiche dei

linguaggi di scripting è data dalla

possibilità di interagire con l’utente che utilizza una pagina web.

• L’interazione avviene attraverso i moduli HTML (form)

(17)

Proff. Stasio C. - Conti R. - VG

informatica 17

<form method="post" action="connetti.php" name="form">

Host: <input type="text" size="30" name="host"><br>

User: <input type="text" size="30" name="user"><br>

Pass: <input type="password" size="30" name="pswd"><br>

Nome: <input type="text" size="30" name="nomedb"><br>

<input name="submit" type="submit" name="connessione"

value="Connetti">

L’attributo method ha il compito di indicare al browser quale metod utilizzare per inviare i campi inseriti al WEB SERVER

(18)

Proff. Stasio C. - Conti R. - VG

informatica 18

• UTILIZZANDO IL METODO GET I

DATI INSERITI IN INPUT VENGONO VISUALIZZATI SULLA RIGA

INDIRIZZI CON TUTTI I PERICOLI DEL CASO !!!!!!!!!!!!!!!!!!!!!

• IL METODO POST OCCULTA I DATI INSERITI

(19)

Proff. Stasio C. - Conti R. - VG

informatica 19

<html>

<head>

<title>Connessione al database tramite un form</title>

<center><strong>Connessione al database tramite un form col metodo POST</strong></center>

<hr>

<center>

<form method="post" action="connetti.php" name="form">

Host: <input type="text" size="30" name="host"><br>

User: <input type="text" size="30" name="user"><br>

Pass: <input type="password" size="30" name="pswd"><br>

Nome: <input type="text" size="30" name="nomedb"><br>

<input name="submit" type="submit" name="connessione" value="Connetti">

</center>

</body>

</html>

FORM DI INSERIMENTO DATI

CONNESSIONE.PHP

(20)

Proff. Stasio C. - Conti R. - VG

informatica 20

<html>

<head>

<title>Connessione al database tramite un form</title>

<body>

<center><strong>Connessione al database tramite un form col metodo POST</strong></center>

<hr>

<center>

//////$_POST['...'] è la funzione che permette di recuperare i valori da un form HTML ////////

<?php

if($_POST) {

$db_host=$_POST['host'];

$db_user=$_POST['user'];

$db_pswd=$_POST['pswd'];

$db_name=$_POST['nomedb'];

$dir = $_SERVER["DOCUMENT_ROOT"];

$file = $_SERVER["SCRIPT_NAME"];

CONNETTI.PHP

(21)

Proff. Stasio C. - Conti R. - VG

informatica 21

$connessione =

@mysql_connect($db_host,$db_user,$db_

pswd) or die

("<br \>Non è possibile connettersi al database!");

$db =

@mysql_select_db($db_name,$connession e)or die

("Database inesistente");

(22)

Proff. Stasio C. - Conti R. - VG

informatica 22

echo ("<br \>Sei connesso correttamente al database con l'user <b><u>$db_user</u></b>, la password

<b><u>$db_pswd</u></b> all'host <b><u>$db_host</u></b>");

echo ("<br \><br \>Questo file '<b><u>$file</u></b>' si trova in:

'<b><u>$dir</u></b>' ");

}?>

</center>

</body>

</html>

(23)

Proff. Stasio C. - Conti R. - VG

informatica 23

Variabili predefinite

Il PHP possiede un gran numero di variabili predefinite , create

direttamente dall’interprete PHP e sono raggruppate nei seguenti array

(24)

Proff. Stasio C. - Conti R. - VG

informatica 24

Variabili predefinite

• $_GET : contiene variabili passate allo script tramite un form con

modalità GET

• $_POST: contiene variabili passate allo script tramite un form con

modalità POST

(25)

Proff. Stasio C. - Conti R. - VG

informatica 25

• $_SERVER:contiene le variabili passate allo script dal server web

(26)

Proff. Stasio C. - Conti R. - VG

informatica 26

• La pagina che riceve i dati

– $uname = strtolower(trim($_POST['uname']));

– $passw = strtolower(trim($_POST['passw']));

– $_POST['...'] è la funzione che permette di

recuperare i valori da un form HTML come quello precedente

– La funzione strtolower permette di eliminare il Case Sensitive ovvero di convertire tutte le lettere in

minuscolo

– La funzione trim permette di eliminare gli spazi, che non sono consentiti sia negli username che nelle

password

(27)

Proff. Stasio C. - Conti R. - VG

informatica 27

• La funzione strtolower permette di eliminare il Case Sensitive ovvero di

convertire tutte le lettere in minuscolo

• Se l'utente scrive CaMiNo, la stringa:

strtolower('CaMiNo') restituirà camino

(28)

Proff. Stasio C. - Conti R. - VG

informatica 28

• La funzione trim permette di eliminare gli spazi, che non sono consentiti sia negli

username che nelle password

• Se l'utente scrive “ pippo “, la stringa:

trim(' pippo ') restituirà “pippo”

(29)

Proff. Stasio C. - Conti R. - VG

informatica 29

STRTOUPPER

• strtolower('CaMiNo')

restituirà CAMINO

(30)

Proff. Stasio C. - Conti R. - VG

informatica 30

• Una volta recuperati i dati, avremo due variabili $uname e $passw sulle quali

possiamo agire in vari modi

• Possiamo confrontarle con i contenuti di un database

• Possiamo visualizzare a video

• E altre operazioni possibili

(31)

Proff. Stasio C. - Conti R. - VG

informatica 31

Connessione ad DB

• Ci sono vari parametri che servono per connettersi ad un database

• $_CONFIG['host'] = "localhost";

$_CONFIG['host'] = "62.149.150.52";

• $_CONFIG['user'] = "volta";

• $_CONFIG['pass'] = "psvolta";

• $_CONFIG['dbname'] = "voltadb";

(32)

Proff. Stasio C. - Conti R. - VG

informatica 32

• $_CONFIG['host'] = "localhost";

$_CONFIG['host'] = "62.149.150.52";

indica la posizione fisica del database

• $_CONFIG['user'] = "volta";

indica l'utente che accede al database

• $_CONFIG['pass'] = "psvolta";

indica la password dell'utente

• $_CONFIG['dbname'] = "voltadb";

indica il nome del database a cui accedere

(33)

Proff. Stasio C. - Conti R. - VG

informatica 33

• Ci vuole anche una stringa di connessione

$conn = @mysql_connect($_CONFIG['host'],

$_CONFIG['user'], $_CONFIG['pass']) or die('Impossibile stabilire una connessione');

@mysql_select_db($_CONFIG['dbname']);

Riferimenti

Documenti correlati

A tal fine, il Titolare informa preventivamente il Responsabile del trattamento con un preavviso minimo di tre giorni lavorativi, fatta comunque salva la possibilità

Art. In caso di violazione o di presunta violazione anche di uno soltanto degli obblighi previsti dal presente Contratto, Netsons avrà la facoltà di intervenire nelle forme e nei

A92173-01 Oracle HTTP Server Modules - Administration using the command line tools and manually editing configuration files (DAD parameters, http.conf etc.) Oracle9i Application

htf.anchor2 (curl, ctext, cname, ctarget, cattributes) return varchar2;.. Parameters: curl - the value for the

OGGETTO: Rinnovo contratto di assistenza e manutenzione degli apparati di rete, dei server, dei personal computer e del software dell’Azienda per l’anno 2013. LIQUIDAZIONE

- che nel periodo maggio/giugno 2013 la ditta SHN Sistemi ha effettuato diversi interventi oltre a fornire materiale hardware sostitutivo e che pertanto è

- che e a conclusione del rapporto di manutenzione a causa del non rinnovo contrattuale per l’anno 2014, spettano alla ditta SHN Sistemi la liquidazione di

Vi è una connessione permanente tra client e server nel momento in cui si accede al server, e fino a che il cliente non fa cadere esplicitamente la connessione.. E-MAIL