Il logo del sito

PHP Manual

Function References - Database Extensions - PDO: PHP Data Objects

Introduzione>

L'estensione PDO, PHP Data Objects, definisce una leggera, consistente interfaccia pe accedere database con PHP. Ogni driver di database che implementa l'interfaccia PDO può esporre funzionalità come normali estensioni di funzione. Notare che non si può eseguire alcuna funzione di database utilizzando la sola estensione PDO, occorre sempre usare uno specifico driver di database per accedere al server di database.

PDO fornisce uno strato di astrazione per l'accesso ai dati, questo significa che, qualunque sia il tipo di database utilizzato, si utilizzano le stesse funzioni per iviare queries e caricare dati.

PDO non è disponibile per versioni di PHP precedenti la 5.0.

Costanti predefinite>


<?php
   connettiDatabase($conn, $servername, $dbname, $username, $password);
/*********************************************************************************************** */
   function connettiDatabase($conn, $servername, $dbname, $username, $password){      
      try{
         
         // Create connection 
         
         $conn = new PDO("mysql:host=$servername; dbname=$dbname", $username, $password);

         // Set Attribute 
                  
         $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
         
         echo ("PDO::ATTR_DRIVER_NAME = ".$conn->getAttribute(PDO::ATTR_DRIVER_NAME));
         echo nl2br("\n");
         echo ("PDO::ATTR_SERVER_VERSION = ".$conn->getAttribute(PDO::ATTR_SERVER_VERSION));
         echo nl2br("\n");
         echo ("PDO::ATTR_SERVER_INFO = ".$conn->getAttribute(PDO::ATTR_SERVER_INFO));
         echo nl2br("\n");
      }
      catch(PDOException $e){
         
         echo "<p class=phpoutExc >". $sql. "</p>";
         echo "<p class=phpoutExc >". $e->getMessage(). "</p>";
         return false;
      }
           
      if ($conn != null){
           echo "<p class=phpoutputOk> Connessione pdo riuscita"." </p>";
         return true;
      } else {     
         echo "<p class=phpoutputExc>Connection failed: " . $e->getMessage()."</p>";
         return false;
      }   
   }

?>

SQLSTATE[HY000] [1045] Access denied for user 'clamin'@'localhost' (using password: YES)