Wie PHP-Skripte auf der Serverseite zu debuggen? In einer Situation Client-Seite zeigt keine Antwort

8

Ich teste gerade ein Skript auf meinem Host. Dieses Skript soll PayPal IPN-Daten akzeptieren, einige Dinge tun (z. B. Datenverifizierung), notwendige Daten an eine bestimmte E-Mail-Adresse senden und mehr.

Ich verwende ein Test-Tool auf der PayPal-Website, um Testdaten in mein Skript zu schreiben. Mein Skript funktioniert nicht: Es sollte ein Code ausgegeben werden, aber ich kann den Fehler nicht sehen. Das Test-Tool in PayPal macht einfach den Post und scheint keine Antwort zu akzeptieren. Ich möchte sehen, was in meinem Skript passiert ist, damit ich es beheben kann. Wie kann ich Fehlermeldungen erhalten, die mein Skript ausgibt?

Irgendwelche Ideen?

    
Edward 10.08.2010, 11:59
quelle

5 Antworten

1

Ein besserer Ansatz wäre, die Fehler in einer Datei und nicht auf dem "Bildschirm" zu protokollieren. Wenn Sie eine serverweite Änderung vornehmen, sind wahrscheinlich andere Websites auf dem Server betroffen.

  • log_errors = Ein
  • display_errors = Aus
  • error_log = /tmp/php.log (oder ein besserer Pfad Ihrer Wahl; Datei muss wahrscheinlich vom Apache / Webserver beschreibbar sein).

Wenn Sie alle oben genannten Probleme nicht haben, installieren Sie xdebug und versuchen Sie, den Code zu debuggen - Sie können Zeile für Zeile durchgehen und Variablen nach Belieben untersuchen - vielleicht dies wird dir eine bessere Idee geben.

Wenn das nicht klappt, greifen Sie auf var_dump () und Freunde zurück.

    
David Goodwin 10.08.2010, 13:13
quelle
5

Nicht sicher, ob Sie das bereits getestet haben (am Anfang Ihres PHP-Skripts):

%Vor%

Wenn es nicht angezeigt wird, versuchen Sie es mit einem .htaccess (wenn auf Apache):

%Vor%

damit solltest du deinen Fehler bekommen. Wenn nicht, versuchen Sie Ihre Serverprotokolle oder, wenn es immer noch nicht hilft, versuchen Sie echo einige Kontrollwerte zu finden, wo es abstürzt ...

Natürlich dient dies nur dem Zweck der Fehlersuche und Sie sollten das bei der Produktion ausschalten.

    
AlexV 10.08.2010 12:28
quelle
1

In solchen Fällen sollten Sie sehen, was das $_POST -Array in der Konsole ausgibt. Verwenden Sie den folgenden Code am Anfang Ihrer Seite nach der Initialisierung mit allen erforderlichen Konfigurationen: -

%Vor%

Wenn das nicht funktioniert, dann müssen Sie einige Haltepunkte setzen, indem Sie einige " exit " -Anweisungen hinter irgendeinen Code setzen, jetzt & amp; dann, und führen Sie langsam so viel Code wie möglich Schritt für Schritt aus.

Ich hoffe, es hilft.

    
Knowledge Craving 10.08.2010 12:05
quelle
0

verwenden Sie Protokolldateien und lesen Sie sie dann.

Grundsätzlich am Anfang des Skripts öffnen Sie eine Datei, dann an verschiedenen Stellen im Code dump einige Variablen zu dieser Datei, dann können Sie durch diese Datei gehen und untersuchen Sie die Ausgabe und auf diese Weise können Sie sehen, was mit Ihrem Skript falsch ist

    
Ramuns Usovs 10.08.2010 12:55
quelle
0

Sie können einen (möglicherweise lokalen) Webserver verwenden, der beispielsweise PHP zusammen mit xdebug enthält. Einige Vorinstallationen wie UwAmp oder USBWebServer wird tun, wenn Sie in Windows debuggen.

    
Michael 04.09.2017 03:56
quelle

Tags und Links