IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[PEAR] Installation et utilisation de PEAR


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    skandhal
    Invité(e)
    Par défaut [PEAR] Installation et utilisation de PEAR
    Bonjour à toutes et tous,

    Comme à mon habitude, voici là situation:

    J'utilise WampServer2.0i que j'ai quelque peu modifié pour accueillir:
    - Apache 2.2.17
    - PHP 5.3.3
    - MySQL 5.1.53
    - PhpMyAdmin 3.3.8.1

    Tout ce petit monde cohabite et fonctionne à merveille

    Maintenant, j'ai besoin d'installe PEAR pour pouvoir utiliser les fonctions d'envois d'email avec authentification au smtp.

    Donc j'ai modifié go-pear.bat pour ne plus avoir de message d'erreur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    @ECHO OFF
    set PHP_BIN=php.exe
    %PHP_BIN% -d output_buffering=0 -d phar.require_hash=0 PEAR\go-pear.phar
    pause
    Ce script s'exécute bien et il me propose bien d'installer PEAR

    Par contre j'ai un doute au moment du choix des dossiers (2ème étape de l'installation)

    En fait, j'ai à l'écran ce qui suis:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    c:\wamp\bin\php\php5.3.3>go-pear.bat
    
    Are you installing a system-wide PEAR or a local copy?
    (system|local) [system] :
    
    Below is a suggested file layout for your new PEAR installation.  To
    change individual locations, type the number in front of the
    directory.  Type 'all' to change all of them or simply press Enter to
    accept these locations.
    
     1. Installation base ($prefix)                   : C:\wamp\bin\php\php5.3.3
     2. Temporary directory for processing            : C:\wamp\bin\php\php5.3.3\tmp
     3. Temporary directory for downloads             : C:\wamp\bin\php\php5.3.3\tmp
     4. Binaries directory                            : C:\wamp\bin\php\php5.3.3
     5. PHP code directory ($php_dir)                 : C:\wamp\bin\php\php5.3.3\pear
     6. Documentation directory                       : C:\wamp\bin\php\php5.3.3\docs
     7. Data directory                                : C:\wamp\bin\php\php5.3.3\data
     8. User-modifiable configuration files directory : C:\wamp\bin\php\php5.3.3\cfg
     9. Public Web Files directory                    : C:\wamp\bin\php\php5.3.3\www
    10. Tests directory                               : C:\wamp\bin\php\php5.3.3\tests
    11. Name of configuration file                    : C:\Windows\pear.ini
    12. Path to CLI php.exe                           : .
    
    1-12, 'all' or Enter to continue:
    Pour le premier choix (SYSTEM ou LOCAL) j'ai choisi: SYSTEM (choix par défaut)

    Pour les dossiers je constate notamment qu'il me propose
    Pour le dossier WWW: C:\wamp\bin\php\php5.3.3\www
    alors que mon dossier WWW est celui de Wamp c'est à dire: C:\wamp\www\
    Pour le dossier data: C:\wamp\bin\php\php5.3.3\data
    alors que mon dossier data est celui de MySQL c'est à dire: C:\wamp\bin\mysql\mysql5.1.53\data

    Dois-je changer les paramètres que me propose l'installation de PEAR ? Pour trouver dans la liste des dossiers:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     1. Installation base ($prefix)                   : C:\wamp\bin\php\php5.3.3
     2. Temporary directory for processing            : C:\wamp\bin\php\php5.3.3\tmp
     3. Temporary directory for downloads             : C:\wamp\bin\php\php5.3.3\tmp
     4. Binaries directory                            : C:\wamp\bin\php\php5.3.3
     5. PHP code directory ($php_dir)                 : C:\wamp\bin\php\php5.3.3\pear
     6. Documentation directory                       : C:\wamp\bin\php\php5.3.3\docs
     7. Data directory                                : C:\wamp\bin\mysql\mysql5.1.53\data
     8. User-modifiable configuration files directory : C:\wamp\bin\php\php5.3.3\cfg
     9. Public Web Files directory                    : C:\wamp\www\
    10. Tests directory                               : C:\wamp\bin\php\php5.3.3\tests
    11. Name of configuration file                    : C:\Windows\pear.ini
    12. Path to CLI php.exe                           : .
    Voilà j'attends vos suggestions avant de poursuivre cette installation. Merci par avance à ceux qui pourront me renseigner
    Dernière modification par skandhal ; 03/12/2010 à 14h14. Motif: Changement du titre

  2. #2
    skandhal
    Invité(e)
    Par défaut
    Bon j'ai installé PEAR en changeant les dossiers data et www n'ayant pas eu réponse.

    Maintenant lorsque je souhaite utiliser des fonctions de PEAR j'ai un message d'erreur qui s'affiche dans mon navigateur:

    Warning: require_once(Pager.php) [function.require-once]: failed to open stream: No such file or directory in C:\wamp\www\site\registering.php on line 4

    Fatal error: require_once() [function.require]: Failed opening required 'Pager.php' (include_path='.;C:\php5\pear') in C:\wamp\www\site\registering.php on line 4
    Je souhaite utiliser la fonction d'envoi d'e-mail, donc Mail() de PEAR.

    Voici le code php de ma page registering.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
     
    <?php
    	session_start();
    	$page="registering";
    	require_once 'Pager.php'; /* ligne 4 */
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <!-- CODE HTML ... -->
    <?php
    	if(isset($_POST['name'])
    	&& isset($_POST['firstname'])
    	&& isset($_POST['company'])
    	&& isset($_POST['rcs'])
    	&& isset($_POST['mail'])
    	&& isset($_POST['password'])
    	&& isset($_POST['password2']))
    	{
    		if(!empty($_POST['name'])
    		&& !empty($_POST['firstname'])
    		&& !empty($_POST['company'])
    		&& !empty($_POST['rcs'])
    		&& !empty($_POST['mail'])
    		&& !empty($_POST['password'])
    		&& !empty($_POST['password2']))
    		{
    			/* Traitement et Vérification pour BDD */
    			/* ... */
     
    			/* Après traitement création et envoie du mail */
    			$mail_body = '<html><head><title>Liste de site à visiter</title></head><body><p>Test d'envoi d'email</body></html>';
    			$mail_from = "arnaud.nicole.84@gmail.com";
    			$mail_to = "arnaud.nicole.84@gmail.com";
    			$mail_subject = "Hi!";
    			$mail_body = $message;
     
    			$mail_host = "smtp.gmail.com";
    			$mail_username = "arnaud.nicole.84@gmail.com";
    			$mail_password = "mypassword";
     
    			$mail_headers = array ('From' => $mail_from, 'To' => $mail_to, 'Subject' => $mail_subject);
    			$smtp = factory('smtp', array ('host' => $mail_host, 'auth' => true, 'username' => $mail_username, 'password' => $mail_password));
    			$mail = $smtp->send($mail_to, $mail_headers, $mail_body);
     
    			if (PEAR::isError($mail)) echo("<p>" . $mail->getMessage() . "</p>");
    			else echo("<p>Message successfully sent!</p>");
    		}
    		else /* Traitement de l'erreur 2*/
    	}
    	else /* Traitement de l'erreur 1*/
    ?>
    Dans l'erreur il est indiqué: include_path='.;C:\php5\pear' alors que mon php se trouve dans le dossier c:\wamp\bin\php\php5.3.3\ dans lequel j'ai un sous-dossier pear.

    Mon problème c'est que je ne sais pas quel fichier il faut que je modifie pour avoir le bon chemin d'accès. C:\php5\pear n'existe pas dans php.ini

    Par contre j'ai bien include_path dans php.ini ajouté par l'installation de PEAR qui pointe bien sur le bon dossier de pear ( c:\wamp\bin\php\php5.3.3\pear )

    Je ne comprends pas pourquoi ça veut pas fonctionner...
    Dernière modification par skandhal ; 03/12/2010 à 15h14.

  3. #3
    skandhal
    Invité(e)
    Par défaut
    Bonsoir/jour à toutes et tous,

    Bon je pense avoir résolu mon problème, grâce à un cours que j'ai mis un moment à trouver sur le site de Developpez.net

    Pour info:

    Guide d'installation de la bibliothèque PEAR de Jérôme CHABAUD

    Je n'ai pas de lien en post-it (ou alors je ne l'ai pas vu) vers ce mini-guide très pertinent. Peut-être qu'il faudrait le mettre, j'ai vu qu'il y avait beaucoup de questions similaires à la mienne. Je pense que ça peut aider plus d'un personne.


    [POUR INFOS et SOLUTIONS] Rappel du mini-guide de Jérôme CHABAUD que j'ai commenté pour la clarté. Vous verrez qu'il est à peu de chose prêt identique à celui du guide.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    <?php
    	echo 'Paramétrage de PEAR et test<br />';
     
    	$path = 'C:\wamp\bin\php\php5.3.3\PEAR'; /* Le dossier racine de PEAR */
     
    	/* Ajouter $path temporairement (le temps d'exécution du script) au path de PHP*/
    	set_include_path(get_include_path() . PATH_SEPARATOR . $path); /* Permet de l'ajouter au path */
     
    	/* Paramètre de connexion pour la base de donnée maBase (MySQL) */
    	$user = 'root';
    	$passwd = '';
    	$mysqlServer = '127.0.0.1';
    	$dataBaseName ='maBase';
     
    	/*Package du Framework à utiliser -
    	 * Pour l'installer:
    	 * - ouvrir une console (cmd sous windows)
    	 * - et taper: PEAR install db 
    	 * (si ça ne fonctionne pas aller dans le dossier racine de PEAR grâce à la commande cd)
    	 * et retaper la commande précédente.
    	 * /
    	
    	require_once 'DB.php'; /* Le package dont on a besoin */
     
    	/* Utilisation du package - Si la connexion à votre base de données MySQL fonctionne le message "la connexion a réussie"
    	 * se présent. Il ne vous reste plus qu'a installer les packages dont vous avez besoin 
    	 */
    	$dsn ='mysql://'.$user.':'.$passwd.'@'.$mysqlServer.'/'.$dataBaseName;
    	$db =& DB::connect($dsn);
    	if (DB::isError($db)) die($db->getMessage());
    	echo 'la connexion a reussie' ; 
    	$db->disconnect();
     
    ?>
    Bonne utilisation de PEAR à toutes et tous

    PS: Dans mon premier post de ce topic se trouve une question sur les chemins d'accès a www et data. Il faut que vous spécifier vous même les chemins en les modifiant grâce à leur numéro respectif.

    En tout cas ça à l'air de fonctionner comme sur des roulettes

    Amicalement.
    Dernière modification par skandhal ; 04/12/2010 à 05h43.

Discussions similaires

  1. [PEAR][HTML_QuickForm] Comment utiliser HTML_Quickform ?
    Par lamarre aisha dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 26/12/2006, 21h51
  2. [PEAR][HTML_QuickForm] Installation manuelle de packages PEAR
    Par elitemedia dans le forum Bibliothèques et frameworks
    Réponses: 7
    Dernier message: 22/08/2006, 12h50
  3. [PEAR][DB] Installation et utilisation
    Par jojona dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 26/07/2006, 09h29
  4. [PEAR] Paramétrer le bon path (inclure_path) pour l'utilisation
    Par rteuteu55 dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 05/06/2006, 11h36
  5. Installation de la bibliotheque PEAR
    Par cedsun dans le forum Apache
    Réponses: 1
    Dernier message: 02/12/2005, 10h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo