« Programmation PHP/PEAR » : différence entre les versions

Un livre de Wikilivres.
Contenu supprimé Contenu ajouté
+
Aucun résumé des modifications
Ligne 1 : Ligne 1 :
{{NavTitre|book={{BASEPAGENAME}}|prev=La programmation orientée objet|next=La librairie ADODB}}
{{NavTitre|book={{BASEPAGENAME}}|prev=La programmation orientée objet|next=La librairie ADODB}}
{{Programmation PHP}}
{{Programmation PHP}}
{{Wikipédia|PEAR}}
== Qu'est-ce que PEAR ? ==
== Qu'est-ce que PEAR ? ==


PEAR, acronyme de PHP Extension and Application Repository, est un groupe de développeurs qui proposent des extensions PHP en garantissant un code de grande qualité. La liste complete des extensions est téléchargeable gratuitement sur leur [http://pear.php.net/ site officiel].
PEAR, acronyme de PHP Extension and Application Repository, est un groupe de développeurs qui proposent des extensions PHP en garantissant un code de grande qualité. La liste complète des extensions est téléchargeable gratuitement sur leur [http://pear.php.net/ site officiel].


L'extension PEAR DB fournit une gamme de fonctions de gestion de base de données permettant d'utiliser le même code quel que soit la base de données. Cela permet, si vous décidez de changer de BDD de ne pas être obligé de modifier de nouveau tous vos scripts. Un simple changement de variable vous permettra de passer de MySQL à Oracle par exemple.
L'extension PEAR DB fournit une gamme de fonctions de gestion de base de données permettant d'utiliser le même code quel que soit la base de données. Cela permet, si vous décidez de changer de BDD de ne pas être obligé de modifier de nouveau tous vos scripts. Un simple changement de variable vous permettra de passer de [[MySQL]] à [[Oracle]] par exemple.


Il est conseillé d'avoir lu le dossier sur la Programmation orientée objet pour mieux comprendre le fonctionnement de cette librairie.
Il est conseillé d'avoir lu le dossier sur la Programmation orientée objet pour mieux comprendre le fonctionnement de cette librairie.
Ligne 82 : Ligne 83 :
== Récupérer des informations ==
== Récupérer des informations ==


Comme avec n'importe quelle base de données, vous aurez à récupérer le resultat de votre requête. Voici une fonction équivalente de mysql_fetch_array():
Comme avec n'importe quelle base de données, vous aurez à récupérer le résultat de votre requête. Voici une fonction équivalente de mysql_fetch_array() :


<pre>
<pre>
Ligne 96 : Ligne 97 :
}
}
</pre>
</pre>

== Générer des fichier [[Excel]] depuis une BDD ==
Avec le fichier "include "Spreadsheet/Excel/Writer.php;", des classes de [[Translinguisme/Programmation#Manipuler_un_fichier_Excel|manipulation de fichier .xls sont disponibles]]<ref>[http://pear.php.net/package/Spreadsheet_Excel_Writer/docs/latest/Spreadsheet_Excel_Writer/Spreadsheet_Excel_Writer_Format.html pear.php.net]</ref>.

==Références==
<references/>


[[Catégorie:Bases de données]]
[[Catégorie:Bases de données]]
[[Catégorie:Programmation PHP (livre)]]
[[Catégorie:Programmation PHP (livre)]]

[[en:PHP Programming/PEAR]]

Version du 27 mai 2011 à 19:37

Wikipédia propose un article sur : « PEAR ».

Qu'est-ce que PEAR ?

PEAR, acronyme de PHP Extension and Application Repository, est un groupe de développeurs qui proposent des extensions PHP en garantissant un code de grande qualité. La liste complète des extensions est téléchargeable gratuitement sur leur site officiel.

L'extension PEAR DB fournit une gamme de fonctions de gestion de base de données permettant d'utiliser le même code quel que soit la base de données. Cela permet, si vous décidez de changer de BDD de ne pas être obligé de modifier de nouveau tous vos scripts. Un simple changement de variable vous permettra de passer de MySQL à Oracle par exemple.

Il est conseillé d'avoir lu le dossier sur la Programmation orientée objet pour mieux comprendre le fonctionnement de cette librairie.

Installation de la librairie

Si vous avez installé PHP, le gestionnaire des distributions de PEAR a été inclus automatiquement. Pour l'installer, téléchargez le gestionnaire sur go-pear et le script. Une fois le message d'accueil affiché, vous allez pouvoir installer les paquetages. Pour afficher la liste des extensions, entrez le code suivant dans l'invite de commande:

pear list-all

Il vous suffit pour installer le paquetage DB d'entrer les lignes suivantes:

pear install DB

Connexion à la base

Se connecter à une base de données revet la syntaxe suivante:

require_once('DB.php'); // Indispensable

$dbType = "mysql";
$host = "127.0.0.1";
$account = "myAccount";
$pass = "****";
$dbName = "tests";
$dsn = "$dbType://$account:$pass@$host/$dbName";

$db = DB::connect($dsn);

if (PEAR::isError($db)) {
echo "Erreur: ".$db->getMessage();
}

Il est également possible de remplacer la chaîne de caractères par un tableau contenant vos informations:

$dsn = array(
    'phptype'  => 'mysql',
    'username' => 'myAccount',
    'password' => '****',
    'hostspec' => '127.0.0.1',
    'database' => 'tests',
);

Vous êtes donc connectés à votre base de données. Il s'agit maintenant d'effectuer des opérations avec celle-ci.

Fermeture de la connexion

Il est important de fermer votre connexion une fois vos opérations terminées pour augmenter la sécurité de votre code, réduisant les risques d'atteinte à vos données par un individu mal intentionné. Voici donc le code détruisant la connexion:

$db->disconnect();


Envoyer une requête

Une fois connecté, vous allez pouvoir envoyer des requêtes à votre BDD comme suit:

$query = "SELECT * FROM table WHERE id=5";
$rsc = $db->query($query);

Récupérer des informations

Comme avec n'importe quelle base de données, vous aurez à récupérer le résultat de votre requête. Voici une fonction équivalente de mysql_fetch_array() :

$query = "SELECT * FROM table WHERE id=5";
$rsc = $db->query($query);

if ( DB::isError($rsc) )
die($rsc->getMessage());

while($result = $rsc->fetchRow(DB_FETCHMODE_ASSOC) )
{
 echo $result['id']."\n";
}

Générer des fichier Excel depuis une BDD

Avec le fichier "include "Spreadsheet/Excel/Writer.php;", des classes de manipulation de fichier .xls sont disponibles[1].

Références

  1. pear.php.net