Connessione con MySQL

Documenti analoghi
Connessione con MySQL

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2011/2012

Laboratorio di Progettazione Web

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013

Laboratorio Progettazione Web PHP e MySQL. Andrea Marchetti IIT-CNR 2014/2015

Laboratorio Progettazione Web PHP e MySQL. Andrea Marchetti IIT-CNR 2013/2014

Laboratorio Progettazione Web PHP e MySQL. Andrea Marchetti IIT-CNR 2016/2017

Per poter interagire con un database in rete mediante uno script php bisogna. innanzitutto cerare una connessione. Ciò si ottiene mediante la funzione

PHP e MySQL. Scripting server-side per accesso a DB MySQL

PHP 5. PHP ed i database. Database e tabelle. Struttura di un DB relazionale. Accesso a database

Lavorare con MySQL Parte Seconda.

PHP 5. Accesso a database

Spiegazioni esercizio Gestione Tabella con PHP e MySQL

2011 Politecnico di Torino 1

Laboratorio di Basi di Dati

MY SQL Guida MySQL di base


MySQL Migration Toolkit

Il programma di oggi. Gli indici. Ottimizzazione. Metodi per la Gestione dei Dati (lezioni di laboratorio)

Architettura a tre livelli (1)

2011 Politecnico di Torino 1

Perchè un database? Perchè un database? Tipi di DataBase. Scegliere un database. ! Sicurezza. ! Evitare la ridondanza. ! Architettura multilivello

Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE

Data Base. Master "Bio Info" Reti e Basi di Dati Lezione 6

DATABASE PER IL WEB. Programmazione Web 1

PHP: form, cookies, sessioni e. Pasqualetti Veronica

Costruzione di Sit Web con PHP e MySQL. Lezione 7 - Esercitazione - Introduzione a MySQL: le tabelle, i tpi di dato, le query

Basi di Dati CREAZIONE E POPOLAMENTO DI UNA BASE DI DATI

bool mysql_select_db([string database_name [,resource link_identifier]]) Connessione ad un server MySQL vuole conettere

Introduzione a MySQL. Definizione SQL. Esempio

PHP E MYSQL CREAZIONE DI UN NUOVO DATABASE DAL PHPMYADMIN

PHP e Structured Query Language

MODULO 1 PARTE 3. Programmazione (scripting) server-side con PHP 3.b Interazione con un database (MySQL Server)

Lavorare con MySQL Parte Prima.

APPUNTI DI PHP : V INFORMATICA SEZIONE G

PHP. A. Lorenzi, R. Giupponi, D. Iovino LINGUAGGI WEB. LATO SERVER E MOBILE COMPUTING Atlas. Copyright Istituto Italiano Edizioni Atlas

Breve guida a PostgreSQL (versione per Windows) Gianluca Cima

MySQL Database Management System

Un client su arduino invia i dati acquisiti ad un database

I.I.S. G. COSSALI - ORZINUOVI DATABASE. Marzo 2017 Prof. Dario Tomasoni 1

Appunti della lezione di Database del 3/11/2016 (pomeriggio)

M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE

Il sistema informativo deve essere di tipo centralizzato e accessibile mediante un computer server installato nella rete locale dell albergo.

Utilizzando per la connessione al database un driver di Tipo 1:

SQL - Structured Query Language

Esempio di database relazionale con l utilizzo del prodotto MySQL

Istruzioni DCL di SQL. Pag. 119 par.5

Corso di Web Programming

La principale particolarità del web dinamico è la possibilità di variare i contenuti delle pagine in base alle richieste degli utenti.

Phpmyadmin. Creazione Database

Manuale Plugin SyncDB

Interazione 1 linguaggio PHP con DB MySQL

Installazione Configuration Software

PHP e MySQL. Guida scaricata da


Esercizi ed appunti PHP

Utilizzare PHP 5. Le variabili GET e POST

Gestione Orario Lezioni: Schema del Database

Come trasferire il vostro sito in Joomla da locale in remoto?

RELAZIONE TECNICA GESTIONE CARTE DI CREDITO. a cura di EMANUELE CESARI

SQL e linguaggi di programmazione. Cursori. Cursori. L interazione con l ambiente SQL può avvenire in 3 modi:

Mantenimento dello stato

PHP Survival Kit (Ovvero gestire un database MySQL tramite PHP)

Esercitazione 8. Basi di dati e web

Laboratorio di Progettazione Web

Oracle Enterprise Manager

Tecnologia delle Basi di Dati Esercitazione #4 Definizione dei trigger in Oracle

Breve guida a PostgreSQL (versione per Linux) Gianluca Cima

2. Costruire un database con Apache, PHP e MySql

Corso di Basi di Dati A.A. 2015/2016

Architettura Client-Server. In a nutshell

Laboratorio Architettura

(1) Collegarsi all indirizzo (più un codice numerico comunicato durante l esercitazione)

Laboratorio di Tecnologie Web Laurea in Scienze e Tecnologie Multimediali

Triggers. Antonella Poggi, Claudio Corona. Dipartimento di informatica e Sistemistica Università di Roma La Sapienza

Inserire record. Microsoft Access. Inserire/modificare record. Inserire record. Cancellare record. Inserire/modificare record

BASI DI DATI Cos è il PHP. Cos è il PHP. Esercitazione su PHP & MySQL

effe Document Versione build 100 QUICK START

Corso di Basi di Dati

Servlet & JDBC. Alberto Belussi. anno accademico 2008/2009

Introduzione a PHP Gestione dei Dati e della Conoscenza

Anno 2013 Informatica ABACUS

JDBC. Marco Tessarotto Programmazione dei Web Server Anno Accademico

SISTEMI OPERATIVI, RETI, INTERNET

RELAZIONE E-COMMERCE

Laboratorio di Basi di Dati

Indice generale. Capitolo 3 Introduzione a PHP...43 Sintassi e istruzioni di base Variabili, operatori e commenti Array...

MySQL Controllare gli accessi alla base di dati A cura di Silvio Bonechi per

Servlet & JDBC ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010. Servlet: interazione con un DBMS. In Java è possibile interagire con un DBMS attraverso

RELAZIONE SCRITTA RELATIVA AL PROGRAMMA GESTIONE MEDIAWORLD

OBIETTIVI DELL'ESERCITAZIONE

Gestione di un questionario (originariamente memorizzato in un DB) in XML

Servizi della biblioteca. Accedere alle risorse elettroniche da fuori rete Unimore

Installazione di IBM SPSS Modeler Entity Analytics

Soluzione esercitazione 01

Appunti di MySql. Evoluzione di un tutorial di base di mysql, scritto da Etel Sverdlov.

Corso base SQLite. Copyright (c) 2015 Antonio Gallo

Il linguaggio PHP Introduzione

Le aree protette. G u i d a c r e a t a d a m a r t e p e r h t t p : / / j i m d i n g 3. j i m d o. c o m Pagina 1

PHP. Per poter interagire con i dati che si trovano sul server remoto occorrono strumenti server-side.

Transcript:

Connessione con MySQL

Architettura Server-Side Eventuali parametri cookie sessioni Elaborazione SELECT... DATABASE

Quando i dati sono molti e la persistenza deve andare altre la sessione o la durata di un cookie conviene usare il supporto di una base di dati PHP fornisce delle funzioni per accedere ai database, quindi per spedire query che vengono eseguite dal database e poi eventualmente ritornano una risposta come righe di una tabella PHP è tipicamente usato con MySQL, un database free opensource (community edition), liberamente scaricabile da www.mysql.org E possibile accedere anche ad altri database (Postgres, access, oracle etc)

MySQL è disponibile su tutte le piattaforme ed è realizzato come un server (quindi un servizio attivo che risponde su una porta). Ogni server MySQL può essere configurato per gestire un certo numero di database, ognuno dei quali potrà gestire un certo numero di tabelle le quali potranno essere popolate con i dati L interazione con il server MySQL può avvenire da riga di comando (shell) digitando i comandi, o le query SQL, per creare database, tabelle, inserire dati, fare ricerche etc. L interazione può avvenire anche tramite interfaccia grafica, ad esempio PhpMyAdmin

Un client molto usato basato su una grafica user-friendly è PHPMyAdmin, una applicazione web fatta in PHP che permette di gestire MYSQL server via interfaccia web Si può liberamente scaricare da http://www.phpmyadmin.net/ si installa come applicazione PHP (quindi php deve essere installato e il web server deve essere attivo). E già incluso in EasyPHP, MAMP e XAMMP Se è installato sulla cartella di default del server web è tipicamente disponibile alla URL: http://localhost/phpmyadmin/ Oppure http://localhost/mysql su Easyphp

MySQL viene configurato di default con un utente root amministratore. Può essere configurato aggiungendo altri utenti e concedendo diritti sui database. Con il login di root possiamo accedere all interfaccia di phpmyadmin, da dove possiamo creare nuovi database, nuove tabelle, inserire dati, eseguire query e tante altre funzionalità più avanzate

PHPMyAdmin è uno strumento facile e intuitivo per effettuare alcune operazioni di gestione del server MySQL. Tutte le operazioni possibili da PHPMyAdmin si possono comunque fare anche da script PHP tramite opportuni comandi. In PHPMyAdmin è possibile visualizzare il codice PHP di ogni operazione

L accesso a MySQL server da PHP si può effettuare con semplici funzioni. La sequenza dei passi da effettuare è: 1. Effettuare una connessione al server 2. Selezionare il DB o crearlo se non esiste 3. Eseguire la/le query (creare tabelle, inserire o selezionare dati ) 4. Assegnare le eventuali righe risultanti ad un opportuno array e visualizzare il risultato

Devo dire a quale server voglio rivolgere le mie domande <? // setto i parametri della connessione $dbhost="localhost"; $dbuser="root"; $dbpass= XXXXXXX"; Host che ospita il server MySQL Login Qui va settata la password //connessione al server $conn = mysql_connect($dbhost,$dbuser,$dbpass); if (!$conn) { die("impossibile accedere:. mysql_error()); } Variabile che contiene l ID della connessione

Per creare il Database: $ok = mysql_create_db( mionome,$conn); if (!$ok) { die("impossibile selezionare:. mysql_error()); } In aula H: http://www.cli.di.unipi.it/~clucchese/createdb.php Il vostro server è squalo.cli.di.unipi.it Creato il DB, lo seleziono //selezioniamo il database su cui creare la tabella $ok = mysql_select_db($dbname,$conn); if (!$ok) { die("impossibile selezionare:. mysql_error()); }

$sql= CREATE TABLE primatabella(progressivo int PRIMARY KEY, Nome varchar(40), Cognome varchar(40), Telefono varchar(20))"; // stampa di controllo echo "query SQL: $sql"; //esecuzione della query mysql_query($sql,$conn) or die( " Errore orrore". mysql_error());

//inseriamo i dati $sql="insert INTO primatabella VALUES (1,'claudio', luccgese','050') ; $ok = mysql_query($sql,$conn); If (!ok) { die( " Errore orrore".mysql_error()); } Nota: per chiarezza si possono specificare I campi in maniera esplicita $sql="insert INTO primatabella (Nome, Cognome, Telefono) VALUES ( claudio', lucchese','050 )";

<? //modifichiamo i dati $sql= UPDATE primatabella SET nome= pluto WHERE Progressivo=1";?> $ok = mysql_query($sql,$conn); if (!$ok ) { die( " Errore orrore".mysql_error()); }

<? $sql="select * from primatabella"; $res=mysql_query($sql,$conn);. // accediamo alle righe ottenute in $res?>

Le righe risultanti da mysql_query sono rappresentate come array di array. $res=mysql_query($sql,$conn); Prog Nome Cognome Abbiamo tre costrutti per accedere le righe e catturare i record: 1 2 Mario Giuseppe Rossi Bianchi mysql_fetch_row mysql_fetch_assoc record 3 Marco Verdi mysql_fetch_array 4 Luigi Gialli

$sql="select * from primatabella"; $res=mysql_query($sql,$conn); while ($records=mysql_fetch_row($res)) { echo ID: $records[0] <BR> ; echo Nome: $records[1] <BR> ; } echo Cognome:$records[2] <BR> ; Indice dell array (posizione del campo)

$sql="select * from primatabella"; $res=mysql_query($sql,$conn); while ($records=mysql_fetch_assoc($res)) { echo ID: $records[ Progressivo ] <BR> ; echo Nome: $records[ Nome ] <BR> ; echo Cognome:$records[ Cognome ] <BR> ; } Nome del campo

$sql="select * from primatabella"; $res=mysql_query($sql,$conn); while ($records=mysql_fetch_array($res)) { echo ID: $records[0] <BR> ; Indice dell array echo Nome: $records[nome] <BR> ; echo Cognome:$records[Cognome] <BR> ; } Nome del campo

$rows=mysql_num_rows($res); echo sono stati trovati $rows record ; if ($rows==0) { // controllo se la risposta è vuota echo "non ci sono record"; } else { // altrimenti li visualizzo while ($records=mysql_fetch_assoc($res)) { echo ID: $records[progressivo] <BR> ; echo Nome: $records[nome] <BR> ; echo Cognome:$records[Cognome] <BR> ; } }

MySQL: Php: http://dev.mysql.com/doc/refman/5.0/en/index.html http://dev.mysql.com/doc/refman/5.0/en/sql-syntax.html http://www.php.net/manual/en/ref.mysql.php Dai computer linux dell università dovreste poter lanciare il comando mysql -h squalo.cli.di.unipi.it -u username p che vi permette apre una shell SQL e vi permette di lanciare comandi mysql in maniera immediata.

Creare una pagina web che visualizzi le tabelle presenti nel vostro Database. Che visualizzi I dati presenti in ogni tabella. Che permetta la modifica dei dati presenti nelle tabelle, e la rimozione delle stesse. Che permetta di eseguire un comando qualsiasi e di visualizzarne il risultato