petit pb avec pear

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : petit pb avec pear

par Invité » 01 févr. 2007, 14:52

problème réglé, il manquait un echo dans la boucle while en fin de script. merci!

par Invité » 01 févr. 2007, 14:49

salut! tout d'abord merci de prêter attention à mon cas.
En suivant le post depuis le début, tu verras qu'en fait le problème de chemin et de placement des packages a été réglé. Je n'ai plus de pb avec l'erreur dont tu parles.

J'en suis au stade de tester une requête. La connexion est bien établie avec la bdd, mais la requête n'affiche rien, même pas une erreur. C'est ça que je ne comprends pas. Voici mon code en entier pour la bdd:
<?php
require_once 'DB.php';

$user = 'admin';
$passwd = 'monPassword';
$mysqlServer = 'localhost';
$dataBaseName ='afimmo';
$dsn ='mysql://'.$user.':'.$passwd.'@'.$mysqlServer.'/'.$dataBaseName;
$db =& DB::connect($dsn);
if (DB::isError($db)) {
    echo 'Message Standard         : ' . $db->getMessage() . "\n";
    echo 'Message DBMS/Utilisateur : ' . $db->getUserInfo() . "\n";
    echo 'Message DBMS/D&eacute;boguage   : ' . $db->getDebugInfo() . "\n";
    exit;
	
	}
 echo 'la connexion a reussie' ; 


$sql = "select * from add_pays";
$result = $db->query($sql);
// Always check that $result is not an error
if (DB::isError($result)) {
 die ($result->getMessage());
}

while ($result->fetchInto($row)) {
 $id = $row[0];
}


$db->disconnect();

?>

par Ajoloca » 01 févr. 2007, 13:54

Bonjour,

Tout est dit dans le message d'erreur
include_path='.;C:\PROGRA~1\EASYPH~1\\php\pear\'

par Invité » 01 févr. 2007, 13:52

Ok, la connexion à la bdd fonctionne. J'essaye d'effectuer une requête et bien entendu, ça ne marche pas. Pas d'erreur, juste une page blanche.
$sql = "select * from add_pays";
$result = $db->query($sql);
// Always check that $result is not an error
if (DB::isError($result)) {
 die ($result->getMessage());
}

while ($result->fetchInto($row)) {
 $id = $row[0];
}


$db->disconnect();
Habitués bienvenus pour un conseil...

par Invité » 01 févr. 2007, 13:44

je continue à poster car il y en a peut être que ça peut aider, je dois pas être le seul à galérer sur pear!

Le package DB fonctionne en mettant le paquet dans le répertoire suivant, en plus de tout ce qui a été fait précédemment:

C:\Program Files\EasyPHP1-8\php\pear\

par Invité » 01 févr. 2007, 13:09

Info: J'ai rajouté un password dans les privilèges mysql et dans le script, ça ne change rien.

par Invité » 01 févr. 2007, 13:02

j'ai finalement réussi a faire marcher quickform en faisant ceci:

Emplacement PEAR:
C:\Program Files\EasyPHP1-8\php\pear\

Emplacement Quick Form:
C:\Program Files\EasyPHP1-8\php\pear\HTML

Et dans mon script sur le serveur:
require_once "HTML/QuickForm.php";
$form = new HTML_QuickForm('frmTest', 'post');
$form->addElement('text', 'Pseudo', 'Votre pseudo : ');
$form->display();
ça marche à merveile...je décide donc d'ajouter le package DB de la même manière:

Je rajoute le package DB dans l'emplacement:
C:\Program Files\EasyPHP1-8\php\pear\DB

Et dans mon script:
$user = 'root';
$passwd = '';
$mysqlServer = 'localhost';
$dataBaseName ='afimmo';

require_once 'DB/DB.php';

$dsn ='mysql://'.$user.':'.$passwd.'@'.$mysqlServer.'/'.$dataBaseName;
$db =& DB::connect($dsn);
if (DB::isError($db)) {
    die($db->getMessage());
	}
echo 'la connexion a reussie' ; 
Et là, plus rien :roll:
Pas d'erreur, mais pas de connexion non plus, page blanche.
J'ai vraiment du mal à comprendre la logique de pear, malgré la quantité de doc que j'ai avalé sur le sujet.

Donc si vous avez un conseil pour faire marcher DB à partis des éléments postés, je vous en remercie d'avance.

petit pb avec pear

par Invité » 01 févr. 2007, 00:20

Bonjour,
ça fait quelques heures que j'essaye d'installer les packages pear sous XP mais j'ai du mal...html quickform par exemple. Voici ce que j'ai fait:

1-Sous easyphp 1.8, décompressé le package dans répertoire suivant:
c:/program files/easyphp1-8/php/pear/QForm

2- dans mon script sur serveur local, j'appelle le fichier
require_once "QForm/QuickForm.php";

$form = new HTML_QuickForm('frmTest', 'post'); //petit test
$form->addElement('text', 'Pseudo', 'Votre pseudo : ');
$form->display();
Je reçois l'erreur
Warning: main(PEAR.php): failed to open stream: No such file or directory in C:\PROGRA~1\EASYPH~1\php\pear\QForm\QuickForm.php on line 22

Fatal error: main(): Failed opening required 'PEAR.php' (include_path='.;C:\PROGRA~1\EASYPH~1\\php\pear\') in C:\PROGRA~1\EASYPH~1\php\pear\QForm\QuickForm.php on line 22
Qu'ai je oublié ou mal fait?
Merci pour vos réponses.