Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PDO
PDO Forum d'entraide sur PDO (PHP Data Objects) : pilote générique de bases de données avec PHP. Avant de poster -> FAQ PDO et Cours PDO
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 25/06/2008, 12h34   #1
Invité de passage
 
Inscription : juin 2008
Messages : 5
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 5
Points : 1
Points : 1
Par défaut Mise en place de PDO sur environnement Linux

Bonjour,

Je dévellope un script PHP qui sera interprété par une machine Linux Debian Etch,
le script ci dessous marche très bien sur XP,
mais ne fonctionne pas sur Linux.
ca fait trois jours, que j'y suis, et la...je suis au bout du rouleau.
je vous remercie déjà pour le temps que vous allez me consacrer.

(mon projet de script est écrit, mais voyant qu'il ne marchait pas sur linux, j'ai décidé d'en écrire un autre un tout petit(celui-ci), juste pour voir si celui la marchait déjà)

toute information étant bonne à connaitre: c'est une machine xp qui accueille la base de données mysql, et le ping entre xp et debian est ok

Ce que mon script affiche :
Code X :
1
2
3
4
5
6
7
8
9
ext : PDO
ext : pdo_mysql
ext : pdo_sqlite

Warning: PDO::prepare() [function.PDO-prepare]: SQLSTATE[HY000]: General error: constructor arguments must be passed as an array in /var/www/apache2-default/testpdo.php on line 31

Warning: PDO::prepare() [function.PDO-prepare]: SQLSTATE[HY000]: General error: failed to instantiate user-supplied statement class in /var/www/apache2-default/testpdo.php on line 31

Fatal error: Call to a member function setFetchMode() on a non-object in /var/www/apache2-default/testpdo.php on line 32

C'est le morceau concerné de mon script :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// Connexion à la base de données
$db = new PDO('mysql:host=192.168.0.29;dbname=world', 'root', '1704');
 
// Préparation des requêtes
 
$select = $db->prepare('SELECT Code FROM Country');
$select->setFetchMode(PDO::FETCH_ASSOC); // Facultatif
 
// Exécution des requêtes
 
$select->execute();
 
// Récupération des résultats
$users = $select->fetchAll();
print_r($users);
Fichiers attachés
Type de fichier : txt php.ini.txt (41,4 Ko, 5 affichages)
ixce35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/06/2008, 09h14   #2
Rédacteur/Modérateur
 
Avatar de MaitrePylos
 
Homme Gérard Ernaelsten
DBA & Dev PHP
Inscription : juin 2005
Messages : 3 183
Détails du profil
Informations personnelles :
Nom : Homme Gérard Ernaelsten
Âge : 39
Localisation : Belgique

Informations professionnelles :
Activité : DBA & Dev PHP
Secteur : Service public

Informations forums :
Inscription : juin 2005
Messages : 3 183
Points : 6 470
Points : 6 470
Bonjour,

Avez installer php5-mysql dans votre Debian?

Code :
1
2
 
sudo aptitude install php5-mysql
MaitrePylos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/06/2008, 09h26   #3
Membre éprouvé
 
Homme
Inscription : août 2006
Messages : 313
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 27
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations professionnelles :
Secteur : High Tech - Électronique et micro-électronique

Informations forums :
Inscription : août 2006
Messages : 313
Points : 497
Points : 497
J'ai un soucis aussi. J'ai des requetes qui s'executent, j'en ai qui ne s'executent pas.

En faite, la version de PHP délivré par les packages debian est la 5.08 (debian a toujours 3 plombes de retard car il ne livre que des versions super stables). Je crois que PDO a pas mal changé depuis.

Je pense qu'il s'agit d'un problème de libération des curseurs qui ne se font pas en automatique. Je n'en mettrai pas ma main a couper

La meilleure solution, met PHP à jour en le compilant à la main ^^
Phelim est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/06/2008, 09h46   #4
Rédacteur/Modérateur
 
Avatar de MaitrePylos
 
Homme Gérard Ernaelsten
DBA & Dev PHP
Inscription : juin 2005
Messages : 3 183
Détails du profil
Informations personnelles :
Nom : Homme Gérard Ernaelsten
Âge : 39
Localisation : Belgique

Informations professionnelles :
Activité : DBA & Dev PHP
Secteur : Service public

Informations forums :
Inscription : juin 2005
Messages : 3 183
Points : 6 470
Points : 6 470
Sur la Etch c'est bien PHP5.2 voir ici, je reste persuader, qu'il n'a pas installer php5-mysql
MaitrePylos est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h14.


 
 
 
 
Partenaires

Hébergement Web