2010-05-19 8 views
9

Ich bin ein echter Neuling, wenn es um PHP-Debugging geht, also verzeih meine Dummheit. Ich habe ein einfaches HTML-Formular, das an ein PHP-Skript übergeben wird, und ich möchte dieses Skript debuggen und sehen, was aus dem Formular gesendet wird.Debuggen von PHP in Aptana 2.0

Mein Aptana hat zwei zwei PHP-Interpreter installiert; Zend Debugger auf Port 10001 und XDebug auf 9000

Ich habe das Firefox Addon Aptana

installiert

ich meine HTML-Seite auf der folgenden URL haben, lokal ausgeführt;

http://3i/latest.html

In dem IDE ich den PHP-Skript öffnen und einige Haltepunkte hinzufügen, ich öffne dann die latest.html und ich auf dem Debug-Button klicken. Es startet die HTML-Seite auf einem lokalen Webserver, der unter läuft;

http://127.0.0.1:8000/3i/latest.html

ich dann das Formular ausfüllen und absenden an welchem ​​Punkt des Debugger sagt mir, das JS Debugger beendet hat, aber es an meinem Bruchstellen nicht zu stoppen.

Ich hatte eine gute Lektüre herum und ich kann nichts finden, was mir hilft, was mich denken lässt, dass es etwas ziemlich Einfaches ist und ich bin ein bisschen dumm.

+0

Für jeden liest dies, die Antwort Phill Pafford unten war die hilfreichere Antwort.Um ehrlich zu sein, hat niemand das Problem gelöst, aber der Link, den er lieferte, musste mit einem Firefox Plug-in umgehen. Ich wusste nicht, dass Stack automatisch die Punkte auf einem Kopfgeld vergab, wenn ich niemanden auswählte. – screenm0nkey

Antwort

3

Sie sagen, dass Sie sowohl XDebug als auch Zend Debug installiert haben - haben Sie die entsprechenden Änderungen an Ihrer lokalen php.ini vorgenommen? Sie können nicht beide gleichzeitig laufen lassen - Debugger agieren als Anwendungscontroller, kommunizieren mit Ihrem Webserver und geben Befehle zum Stoppen, Pausieren oder Fortsetzen der Ausführung Ihres Skripts, und die gleichzeitige Ausführung von zwei von ihnen kann dazu führen unerwartetes Debugging-Verhalten, wie Sie es beschrieben haben.

Angenommen, Sie möchten XDebug, würden Sie php.ini öffnen, nach [XDebug] (oder [Zend]) suchen. Kommentieren Sie alle Zend_ * Optionen und legen Sie die folgenden Optionen in:

[XDebug] 
;; Only Zend OR (!) XDebug 
zend_extension_ts="C:\xampp\php\ext\php_xdebug.dll" 
xdebug.remote_enable=true 
xdebug.remote_host=localhost 
xdebug.remote_port=9000 
xdebug.remote_handler=dbgp 
xdebug.profiler_enable=1 
xdebug.profiler_output_dir="C:\xampp\tmp" 

Ja, ich weiß, ich bin auf Windows im Moment - nicht stottern. Ersetzen Sie den Erweiterungspfad mit dem entsprechenden Pfad zu XDebug auf Ihrem Server. Wenn Sie Zend Debugger verwenden möchten, dann ist es ähnlich, deaktivieren Sie XDebug. Vergessen Sie nicht, Ihren Webserver neu zu starten.

EDIT - Ich habe vielleicht unklar gewesen; Sie können beide installiert haben, Sie können nicht beide gleichzeitig laufen lassen.

+0

Hi Jarrod, das habe ich gemacht. Nun, wie konfiguriere ich Aptana? Im Folgenden finden Sie die Informationen in meiner php.ini zend_extension_ts = D: \ WAMP \ bin \ php \ php5.2.6 \ ext \ php_xdebug-2.1.0RC1-5.2-vc6.dll xdebug.remote_enable = true xdebug. remote_host = localhost xdebug.remote_port = 9000 xdebug.remote_handler = DBGp xdebug.profiler_enable = 1 xdebug.profiler_output_dir = "D: \ WAMP \ tmp" – screenm0nkey

+0

muss ich mich jetzt, als PHP-Interpreter in Apatana hinzuzufügen. Wenn ich auf die Schaltfläche "Debug" klicke, wird die lokale ausführbare Datei "Aptana xdebug" verwendet, die im Ordner "Aptana plugins" vorhanden ist. – screenm0nkey

+0

Es sollte einen Bildschirm in Aptana namens "Edit PHP Interpreter" geben. Sie müssen den ausführbaren Pfad zu Ihrer eigenen Xdebug-Installation ändern und den Pfad (falls noch nicht vorhanden) zu der INI-Datei ändern, die Sie verwenden möchten. Grundsätzlich müssen Sie Ihren XDebug als Debugging-Server (und zielen auf den richtigen Port) in Aptana, und treffen Sie diesen Server beim Debuggen. –

0

Meine Vermutung ist, dass Sie keinen PHP-fähigen Webserver haben, der auf Ihrem lokalen Rechner läuft. Aptana 2.0 (im Gegensatz zu Aptana 1.5) ist nicht mit einem eingebauten PHP-fähigen Webserver ausgestattet. Um dies zu bestätigen, gehen Sie zu Ihrem Link (http://127.0.0.1:8000/3i/latest.html) in Firefox und Quelltext anzeigen. Wenn Sie den tatsächlichen PHP-Quellcode sehen, bedeutet das, dass er nicht über einen php-fähigen Webserver läuft.

Es gibt viele gute Möglichkeiten für PHP-Webserver da draußen (z. B. XAMPP, WAMP, EasyPHP, UniServer), googeln und installieren Sie einen. Sie müssen einen Apache-Alias ​​einrichten, der auf Ihren Aptana-Arbeitsbereich verweist, und Sie müssen xdebug möglicherweise auch separat installieren.

Ehrlich gesagt ist Aptana 2.0 keine sehr gute PHP IDE. Ich würde bei Aptana 1.5 bleiben, die mit dem integrierten php-fähigen Webserver ausgestattet ist.

+0

Hallo Seth, Danke für die Antwort. Ich betreibe Apache und PHP 5.2.6, die ich mit WAMP installiert habe. Der Benutzer http: //3i/latest.html läuft also unter Apache, aber wenn ich die Debug-Taste drücke, lädt er ihn auf den lokalen Webserver in Aptana. – screenm0nkey