Site icon Noir Solutions

Database MYSQL integrazione con PHP, script e connessioni.

Php  come vi abbiamo già detto è un linguaggio di scripting , lato server che permette di inserire nelle pagine del vostro Web un set di istruzioni che in  software del web server  (nel  nostro caso Apache) sia in grado di riconoscere e interpretare.

 

Un server Database  , noi ovviamente abbiamo preso in carico Mysql, è un programma software  che sia capace di contenere una vasta quantità di informazioni in un formato che sia facelmente utilizzabile tramite dei linguaggi di scripting come il PHP.  In particolare un dabase è un archivio composto da una o piu’ tabelle, ognuna delle quali contiene  un elenco di oggetti. Vediamo alcune istruzioni che imparerete a fare vostre nel corso del tempo

 

SHOW DATABASE;

mostra tutte  i database che sono presenti nel  vostro archivio ad esempio una risposta plausibile potrebbe essere

 

Database

AgendaTelefonica

AgendaCalciatori

Se  volessimo cancellare AgendaTelefonica dal vostro archivio non dovremo fare altro che scrivere

 

DROP DATABASE AgendaTelefonica

E in questo modo il nostro database Agenda Telefonica sarebbe cancellato. Ma cosa è un database? Beh cominciamo a crearlo intanto. L’istruzione per creare un database è la seguente

 

CREATE DABATASE AGENDA

Per utilizzarlo ricorreremo all’istruzione USE

USE  AGENDA;

 

A questo punto dobbiamo cominciare a popolare il nostro database ossia cominciamo a creare qualche tabella

 

CREATE TABLE Agenda (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
NOME VARCHAR(50);
DATI TEXT
);

 

Analizziamo  un attimo quanto abbiamo appena scritto.  Nella prima riga sotto Agenda trovate.

Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,

Questa è l’istruzione che indica a Mysql che abbiamo creato un indice nel database Agenda che ha come caratteristiche quello di essere ovviamente un intero,  di non essere un valore  iniziale non nullo , di essere incrementale da solo, e soprattutto di essere una chiave primaria, ossia che tutti i valori che vengono rappresentati in questa colonna devono avere il requisito di non avere dei valori ripetuti.

Per vedere le tabelle che abbiamo all’interno del database si fa alla stessa maniera ossia

 

SHOW TABLES;
E in questo caso la risposta sarà
Tables in Agenda
Nome
Dati
2 row in set

 

Volendo è anche possibile vedere come sono realizzate queste tabelle grazie alla funzione Describe con questa sintassi

 

DESCRIBE AGENDA;

 

Vediamo adesso come inserire i dati in una tabella la sintassi MYSQL è la seguente

 

 

INSERT INTO table_name SET
ColumnName1 = value1,
columnName2=value2,

ce ne sarebbe anche un ‘altra che ai tempi a qualcuno sembrò essere rivoluzionaria ma siccome  mi sembra che arrechi solamente confusione vi mostriamo solamente qeusta

 

Facciamo un esempio

 

INSERT INTO AGENDA SET
NOME =”Michele”,
DATI =”ABITA A VIA ROSSI, NUMERO DI TELEFONO 1232134”;

Una volta inseriti questi dati ovviamente potremmo avere il bisogno di visualizzarli e in questo caso dovremmo ricorrere alla seguente sintassi

 

SELECT *  FROM JOKE;

In questo caso visualizzerà il contenuto di entrambe le tabelle, ma noi potremmo avere la necessità di sapere solo i nomi e in questo caso visuliazeremo

SELECT ID, NOME FROM AGENDA;
Id nome
1 Michele
2 Gianni
3 Francesca
4 Enrico
5 Michela

 

Insomma tutti i possibili nomi che avete inserito precedentemente da notare inoltre l’indice che si sarà incrementato da solo come voi gli avete imposto di fare.

 

Inoltre MYSQL mette anche a disposizione la funzione LEFT che ci permette di dire al database di mostrarci il contenuto di una colonna specificando un numero massimo di caratteri.

 

Una possibile implementazione è la seguente

 

SELECT ID, LEFT( NOME,20)  FROM AGENDA;

Un’altra utile funzione messa a disposizione da MYSQL è COUNT, che ci permette di contare il numero di risultati avuti. Una sua possibile implentazione è

SELECT COUNT(*) FROM AGENDA 

Nel caso sopra il risultato sarebbe 5.

Ovviamente MYSQL vi permette anche di modificare i dati precedentemente salvati in questo caso dovrete utilizzare la sintassi.

 

 

UPTDATE nome_tabella SET
Nome_colonna = valore_colonna,
WHERE condizione;

 

una possibile implementazione potrebbe essere

 

UPDATE AGENDA SET NOME=”mario” WHERE id=2;

Ovviamente è anche possibile cancellare i dati precedentemente immessi con la seguente sintassi

DELETE FROM nome-tabella WHERE condizione;

Se invece volessimo cancellare l’intero database non dovremmo altro che fare

 

DELETE FROM nome_database;

 

Dove nel nostro caso nome_database è AGENDA

 

Facciamo adesso una piccola precisazione ossia quando vi parliamo di database vi parliamo di una serie di script che funzionano su un web server che per poter essere utilizzati necessitano di una serie di script per la connessione.  Quello piu’ semplice è

//$dbconnect è la variabile dove registriamo i valori della chiamata ossia il buon esito o l’eventuale errore
$dbconnect =@mysql_connect(‘localhost’, ‘root’, ‘mypassword’);
if (!$dbconnect) {
echo’ impossibile connettersi al dabase’;
exit();
}

Soffermiamoci un attimo su quanto scritto,  se il server mysql che abbiamo gira in locale, ossia nel vostro computer allora sarà necessario lasciare localhost, altrimenti tale valore sarà sostituito dall’indirizzo ip su cui risiede il server. Con root invece si intende una username e  la relativa password.

 

Ora che siamo in possesso di un po’ tutti i dati vediamo come sia possibile leggere tramite PHP dei dati che siano all’interno di server MYSQL

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<?php
//Connessione al dabase mysql
$dbconnect =@mysql_connect(‘localhost’, ‘root’, ‘mypassword’);
if (!$dbconnect) {
exit(’ impossibile connettersi al dabase)’;
}
//Informiamo adesso il database che l’operazione che intendiamo fare è di selzione dati e quindi faremo.
$result=@mysql_query(‘SELECT nome  FROM agenda’);
if (!$result) {
echo ‘<br> sopraggiunto errore <br>’.mysql_error();
}
while ($row = mysql_fetch_array($result)) {
echo $row[‘nome’];
}
?>
</body>
</html>

 

In tale maniera tutto il contenuto della  tabella nome del database Agenda  sarà visualizzato a schermo. Vediamo adesso come inserire i dati in questo ipotetico database Agenda, supponiamo di avere preparato un form html che invii i dati  ad un file chiamato receive.php e che in esso sia presente lo script per il caricamento dei dati nel nostro database. Quindi nel nostro file index.html avremo

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
 
<body>
<form action="receive.php" method="get" name="form1" target="_blank" id="form1">
  <label for="nome"></label>
  <input type="text" name="nome" id="nome" />
  <input type="submit" name="button" id="button" value="Submit" />
</form>
 
</body>
</html>

 

Mentre il file receive.php sarà fatto alla seguente maniera.

 

<?php
 
?>
Exit mobile version