Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 07-04-2008 07:35:39

whitespirit
Membre
Date d'inscription: 25-01-2008
Messages: 393

Comment utiliser le debugger de Zend ?

Bonjour,

Je souhaiterai utiliser le debugger de Zend. Je n'ai jamais utilisé de debugger php, je ne comprends pas comment aller vers une page.

De plus, lorsque je lance le debuguage sur mon site actuel qui fonctionne depuis firefox, je récupère l'erreur suivant sur le debugger zend :

Code:

Fatal error: Uncaught exception 'Zend_Db_Adapter_Exception' with message 'The mysql driver is not 
currently installed' in C:\wamp\www\location\library\Zend\Db\Adapter\Pdo\Abstract.php:104 Stack trace: #0 
C:\wamp\www\location\library\Zend\Db\Adapter\Abstract.php(390): 
Zend_Db_Adapter_Pdo_Abstract->_connect() #1 
C:\wamp\www\location\library\Zend\Db\Adapter\Pdo\Abstract.php(206): 
Zend_Db_Adapter_Abstract->query('DESCRIBE `resso...', Array) #2 
C:\wamp\www\location\library\Zend\Db\Adapter\Pdo\Mysql.php(137): 
Zend_Db_Adapter_Pdo_Abstract->query('DESCRIBE `resso...') #3 
C:\wamp\www\location\library\Zend\Db\Table\Abstract.php(605): 
Zend_Db_Adapter_Pdo_Mysql->describeTable('ressource', NULL) #4 
C:\wamp\www\location\library\Zend\Db\Table\Abstract.php(534): Zend_Db_Table_Abstract->_setupMetadata()
 #5 C:\wamp\www\location\library\Zend\Db\Table\Abstract.php(269): Zend_Db_Table_Abstract->_setup() #6
 C:\wamp\www\location\application\_includes\classes\MyAcl.php(34): Zend_Db_Table_Abstract->__construct()
 #7 C:\wamp\www\location\applicatio in C:\wamp\www\location\library\Zend\Db\Adapter\Pdo\Abstract.php on line 104

A coup d'echo je suis remonté dans mon source et dans mes acl, j'ai cette ligne :

Code:

//-- créer une instance du modèle Ressource
$ressource = new Ressource();
        $tab = $ressource->getTabID();

C'est cette ligne qui lance l'exception depuis le debugger. Je ne sais pas comment y remedier car d'une part, en localhost, ça fonctionne (un controller est chargé), et d'autre part, dans mon bootstrap, tout est censé être bien configuré.


Enfin bref, si quelqu'un pourrait m'aider, je sèche. Merci d'avance.

Dernière modification par whitespirit (07-04-2008 08:07:57)

Hors ligne

 

#2 07-04-2008 09:01:10

whitespirit
Membre
Date d'inscription: 25-01-2008
Messages: 393

Re: Comment utiliser le debugger de Zend ?

Je viens de tomber sur un post interessant :

Malgré le fait que les bases de données soient présentes dans la fenêtre "Gestionnaire de fichiers" , il se peut qu'il y ait une erreur à l'éxecution :


Erreur fatale, call to undefied function mysql_connect()...
               

Dans ce cas, il vous faut configurer la connexion à MySQL, de la manière suivante :

    * Ouvrir le fichier :


C:\Program Files\Zend\ZendStudioClient-5.1.0\bin\php5\php.ini
               

    * Ajouter les lignes suivantes :


extension_dir="c:/php5/ext"
extension=php_mysql.dll

Mais ça ne fonctionne toujours pas (j'ai tout essayé pour l'extension_dir comme chemin vers les extensions php)

Hors ligne

 

#3 07-04-2008 09:25:09

Julien
Membre
Date d'inscription: 16-03-2007
Messages: 501

Re: Comment utiliser le debugger de Zend ?

Non ca c'est pour le débuggage interne.
Ton erreur vient du fait qu'il manque une extension, donc des fonctions. (pdo_mysql.dll ?)

Pour le debuggage serveur, il faut déja le cocher dans ton IDE, puis rajouter dans le php.ini (Windows)
zend_extension_ts=chemin/vers/le/fichier/ZendDebugger.dll
zend_debugger.allow_hosts=127.0.0.1
zend_debugger.expose_remotely=always

Hors ligne

 

#4 07-04-2008 11:32:00

whitespirit
Membre
Date d'inscription: 25-01-2008
Messages: 393

Re: Comment utiliser le debugger de Zend ?

Non, j'ai bien cette extension mais j'ai toujours ce message d'erreur sous Zend. Une autre idée ?

Hors ligne

 

#5 07-04-2008 11:39:02

Julien
Membre
Date d'inscription: 16-03-2007
Messages: 501

Re: Comment utiliser le debugger de Zend ?

non aucune désolé

Hors ligne

 

#6 07-04-2008 12:07:24

philippe
Administrateur
Lieu: Grenoble
Date d'inscription: 01-03-2007
Messages: 1624

Re: Comment utiliser le debugger de Zend ?

whitespirit,

Je ne connais pas le débuggeur Zend, mais Titerm avait fait un tuto magistral sur l'installation de xdebug :
http://www.z-f.fr/forum/viewtopic.php?id=536#p2894
Chez moi ça a marché sans problème.

A+, Philippe


twitter : @plv ; kitpages.fr : Création de sites internet à Grenoble et Paris

Hors ligne

 

#7 19-04-2008 10:59:35

whitespirit
Membre
Date d'inscription: 25-01-2008
Messages: 393

Re: Comment utiliser le debugger de Zend ?

Je relance ce post, car je n'ai toujours pas réussi à faire fonctionner le debugger de Zend Studio. Ca m'ennuie vraiment car je trouve cet ide extraordinaire et je souhaiterai vraiment utiliser le debugger et profiler.J'ai bien ces lignes dans le fichier php.ini (windows)

zend_extension_ts=chemin/vers/le/fichier/ZendDebugger.dll
zend_debugger.allow_hosts=127.0.0.1
zend_debugger.expose_remotely=always

Peut-être que mon problème viens de la configuration du debuggage ? Pourrais-je voir vos paramètres ?

Merci

Hors ligne

 

#8 19-04-2008 11:14:46

Azema
Membre
Lieu: Paris
Date d'inscription: 26-09-2007
Messages: 51
Site web

Re: Comment utiliser le debugger de Zend ?

Salut

Chez moi cela fonctionne correctement.

Pour ça, il faut obligatoirement enlever le module XDEBUG dans ton php.ini si celui ci est chargé et ensuite redemarré Apache.

Il faut aussi vérifier les ports de connexion entre Zend Studio et ton serveur, mais normalement les paramètres par défaut sont bons.

As tu regardé dans les logs d'erreurs de ton serveur Apache ?

Cordialement, Azema.

Hors ligne

 

#9 21-04-2008 12:35:39

whitespirit
Membre
Date d'inscription: 25-01-2008
Messages: 393

Re: Comment utiliser le debugger de Zend ?

Je n'ai pas de module XDebug dans mon wamp. Je n'ai pas d'erreurs à ce sujet dans le fichier .log d'apache.

Peux tu me donner tes paramètres dans Zend Studio ?

Merci

Hors ligne

 

#10 25-05-2008 22:23:31

PsY
Membre
Lieu: Paris
Date d'inscription: 21-08-2007
Messages: 21

Re: Comment utiliser le debugger de Zend ?

Hello, je ne sais pas si tu as déjà trouvé, mais je viens de finir mon installation de Wamp Server 2.0c + Zend Studio 5.5.0 + debugger.

J'ai pas mal cherché sur le net sans trouver mon bonheur, mais en fait c'est tout simple.

Tout d'abord installation de wemp server
www.wampserver.com/

Ensuite installation du studio 5.5.0 (il y a Zend Studio Néon, mais encore trop buggué à mon gout)

Téléchargement de la partie "débuggueur"
Rendez-vous sur http://www.zend.com/fr/products/studio/downloads et sélectionnez dans
la liste l’archive correspondant au système d’exploitation de votre serveur. Décompressez
son contenu dans un répertoire temporaire.

Sélectionnez, dans le sous-dossier correspondant à votre version de PHP*, le fichier
ZendDebugger.dll . Copiez cette extension "ZendDebugger.dll" dans un endroit que vous retrouverez, comme par exemple "D:/wamp/bin/php/php5.2.6/" <- là où j'ai installé wamp (D:/wamp/)

Attention : sous Windows, il vous faut vérifier si votre version de PHP est « Thread Safe »
ou non. Si c’est le cas, téléchargez l’extension portant le suffixe « _ts ». Pour déterminer
si votre version est « Thread Safe » ou non, consultez phpinfo() et cherchez la chaîne
« Thread Safety ». Si sa valeur est « enabled », votre version de PHP est « Thread
Safe ».

Modification du php.ini (je les aies mises à la fin du fichier)  - les ";" en début de ligne sont des commentaires - avec les valeurs:

[Zend]
;PHP < 5.2 : zend_extension_ts = ”chemin complet de ZendDebugger.dll”
;PHP >= 5.2 : zend_extension = ”chemin complet de ZendDebugger.dll”
zend_extension_ts="D:/wamp/bin/php/php5.2.6/ZendDebugger.dll"
zend_debugger.allow_tunnel=127.0.0.1/32
;zend_debugger.allow_hosts= addresse_ip_du client
zend_debugger.allow_hosts=127.0.0.1/32,192.168.0.0/32
zend_debugger.expose_remotely=always
zend_debugger.connector_port=10000

Dans l’archive du Zend Débogueur, vous trouverez également un fichier nommé dummy.php, qu’il
vous faut copier à la racine de votre serveur web (le chemin configuré dans la directive
DocumentRoot d’Apache).

Après avoir fait ces modifications, il ne vous reste plus qu’à redémarrer le serveur web...

Vous devez avoir dans phpinfo () quelque chose du genre:

Code:

Zend Debugger
Passive Mode Timeout     20 seconds

Directive    Local Value    Master Value
zend_debugger.allow_hosts    127.0.0.1/32,192.168.0.0/32    127.0.0.1/32,192.168.0.0/32
zend_debugger.allow_tunnel    127.0.0.1/32    127.0.0.1/32
zend_debugger.connect_password    no value    no value
zend_debugger.deny_hosts    no value    no value
zend_debugger.expose_remotely    always    always
zend_debugger.httpd_uid    -1    -1
zend_debugger.max_msg_size    2097152    2097152
zend_debugger.tunnel_max_port    65535    65535
zend_debugger.tunnel_min_port    1024    1024

pour les paramètres de Zend studio:

on va dans l'onglet "débogage";

mode de débogage: serveur
Url du serveur de débogage: http://       127.0.0.1
Ip du client : Défaut
Fichier dummy : dummy.php
port de débogage client: 10000
port de broadcast: 20080
Expiration du délai de réponse (secondes): 60

Voilà, j'espère que ça aidera des gens ;-)

Psy

Dernière modification par PsY (25-05-2008 22:28:55)


PEBKAC !

Hors ligne

 

#11 27-05-2008 08:27:22

whitespirit
Membre
Date d'inscription: 25-01-2008
Messages: 393

Re: Comment utiliser le debugger de Zend ?

Génial, merci d'avoir répondu.

Alors j'ai des problèmes :

Vous devez avoir dans phpinfo () quelque chose du genre:

Je n'ai pas de menu Zend Debugger.

on va dans l'onglet "débogage";

J'utilise Zend Studio V 5.5, cet onglet n'y est pas. Comment faire ?

je n'ai jamais utilisé de débuggeur php, je m'y perds un peu.

Hors ligne

 

#12 27-05-2008 09:23:14

PsY
Membre
Lieu: Paris
Date d'inscription: 21-08-2007
Messages: 21

Re: Comment utiliser le debugger de Zend ?

Évidemment, il faut faire les modifications dans ton php.ini puis redémarrer ton serveur web. Ensuite tu trouveras les infos dans phpinfo().

Dans Zend studio 5.5 justement, va dans le menu outils->personnalisation. là tu auras onglet "débogage".
@+

Dernière modification par PsY (27-05-2008 09:24:00)


PEBKAC !

Hors ligne

 

#13 27-05-2008 18:09:34

whitespirit
Membre
Date d'inscription: 25-01-2008
Messages: 393

Re: Comment utiliser le debugger de Zend ?

Non, le phpinfo() ne m'affiche pas ces valeurs. Voici exactement ce que j'ai à la fin de mon php.ini (que j'accède depuis le menu wamp dans la barre des taches; je le précise car dans le répertoire /wam/bin/php/php.5.2.6 j'ai aussi un fichier php.ini que, dans le doute j'ai aussi modifié):

Code:

[Zend]
;PHP < 5.2 : zend_extension_ts = ”chemin complet de ZendDebugger.dll”
PHP >= 5.2 : zend_extension = ”C:/wamp/bin/php/ZendDebugger.dll”
zend_extension_ts="C:/wamp/bin/php/ZendDebugger.dll"
zend_debugger.allow_tunnel=127.0.0.1/32
;zend_debugger.allow_hosts= addresse_ip_du client
zend_debugger.allow_hosts=127.0.0.1/32,192.168.1.0/32
zend_debugger.expose_remotely=always
zend_debugger.connector_port=10000

Et évidemment, j'ai bien redémarrer wamp. Je suis très très frustré d'être bloqué là-dessus.

Dernière modification par whitespirit (27-05-2008 18:11:46)

Hors ligne

 

#14 27-05-2008 18:38:17

PsY
Membre
Lieu: Paris
Date d'inscription: 21-08-2007
Messages: 21

Re: Comment utiliser le debugger de Zend ?

commente aussi la ligne
PHP >= 5.2 : zend_extension = ”C:/wamp/bin/php/ZendDebugger.dll”
->
;PHP >= 5.2 : zend_extension = ”C:/wamp/bin/php/ZendDebugger.dll”
attention si tu as une version 5.2.6 de php, il faut avoir la directive zend_extension et non zend_extension_ts.

regarde aussi ton fichier error_log.log (ou autre nom) pour voir  si tu as des erreur dans le chargement de apache


PEBKAC !

Hors ligne

 

#15 27-05-2008 18:59:55

whitespirit
Membre
Date d'inscription: 25-01-2008
Messages: 393

Re: Comment utiliser le debugger de Zend ?

Ok, j'ai trouvé le pb !!! Je n'avais pas pris le bon ZendDebugger.dll (j'ai choisi le répertoire :5_2_x_nts_comp)... Merci beaucoup !!! Maintenant je peux me lancer dans l'étude d'un débugger !!! Je te tiendrai au courant ! Si t'as d'autres informations, n'hésite pas, je suis preneur! Encore une fois, merci beaucoup pour ton post !!!

[edit]
Oui, je suis preneur de davantage informations pour faire fonctionner le débugger ! J'ai une erreur sur le fichier index.php. Par exemple, le debugger ne voit pas la classe Zend_Loader, même si j'ai mis l'include "Zend/Loader.php". Mais bon, chez moi il est 21h, après avoir passé 12h aujourd'hui sur le web, à tapper du code, peut-être que demain matin, j'aurai un éclair de génie.
[/edit]

Dernière modification par whitespirit (27-05-2008 19:04:38)

Hors ligne

 

#16 27-05-2008 23:32:34

PsY
Membre
Lieu: Paris
Date d'inscription: 21-08-2007
Messages: 21

Re: Comment utiliser le debugger de Zend ?

Super, je suis content que tu aies trouvé la solution.

Attention, avec le Zend studio, il faut absolument que tu fasses un projet avec les fichiers (le mieux c'est les répertoire) dans lesquels le debuggeur va passer, sinon, tu risques de tomber sur des soucis....
SURTOUT quand tu as par exemple un fichier app1/toto.php dans lequel tu veux débugger, mais que dans le studio tu as un app2/toto.php d'ouvert, mais depuis un autre répertoire.... le debugger s'emmêlera les pinceaux et travaillera avec la mauvais fichier !.
Je sais pas si j'ai été très clair, mais tiens moi au courant.

PsY


PEBKAC !

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages