php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 27-08-2009, 14:02
ways
 Member
Links : Onlinestatus : ways ist offline
Registriert seit: Nov 2003
Ort: Berlin-West :-)
Beiträge: 386
ways ist zur Zeit noch ein unbeschriebenes Blatt
Standard Hilfetips für Fehlersuche

Hi Leute,

könnte mir jemand tips zu meiner fehlersuche geben?

Ich habe ein script, welches beim Aufruf über den Browser anstandslos funktioniert, wenn ich das aber als cronjob laufen lasse, dann geht das nicht mehr.

ich hab das gefühl, dass es die Methode ftp_get ist, die mir da schwierigkeiten macht, aber ich weiß nicht wie ich rausfinden wieso das so ist

weiß da jemand ein wenig rat ?
__________________
Coder never die, they just GOSUB without RETURN

Mein System
Mit Zitat antworten
  #2 (permalink)  
Alt 27-08-2009, 14:04
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Logfiles. Reingucken!
Mit Zitat antworten
  #3 (permalink)  
Alt 27-08-2009, 14:06
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Hallo,

kommt denn keine Fehlermeldung? Was genau funktioniert denn nicht?

Tipps:
- sicherstellen, dass der Cronjob nicht eine andere PHP-Installation für CLI verwendet, als die für SAPI.
- display_startup_errors anschalten, falls Extensions fehlen oder sonst irgendwas in der php.ini nicht stimmt.

Gruß,

Anja
Mit Zitat antworten
  #4 (permalink)  
Alt 27-08-2009, 14:09
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Tipp #1: Lernen, dass "geht nicht" absolut keine Problembeschreibung ist.

Tipp #2: Grundlegende Debug-Techniken erlernen, so dass du schon erste Erkenntnisse vorliegen hast, bevor du dich genötigt siehst, ein "funzt nich"-Posting zu verfassen.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #5 (permalink)  
Alt 27-08-2009, 14:36
ways
 Member
Links : Onlinestatus : ways ist offline
Registriert seit: Nov 2003
Ort: Berlin-West :-)
Beiträge: 386
ways ist zur Zeit noch ein unbeschriebenes Blatt
Standard

die logfiles melden mir nur den zugriff per Browser:
HTTP/1.1" 200 88 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"

aber ich hab mir die fehlercodes mit error_reporting(E_ALL); ausgeben lassen:

6135.

@wahsaga:
Das mit dem Debug-KnowHow ist sicher nötig, ohne wenn und aber.
Dann würde ich mich warscheinlich auch nicht so rumquälen.

@AmicaNoctis

scheinbar geht das ftp_get() nicht, wenn ich es per cronjob laufen lassen.
die datei ist da, das verzeichnis... und der test als browseraufruf funktioniert ja einwandfrei.

wie kann ich sicherstellen, dass der Cronjob nicht eine andere PHP-Installation für CLI verwendet, als die für SAPI ?
__________________
Coder never die, they just GOSUB without RETURN

Mein System
Mit Zitat antworten
  #6 (permalink)  
Alt 27-08-2009, 14:46
combie
 PHP Expert
Links : Onlinestatus : combie ist offline
Registriert seit: May 2006
Beiträge: 3.296
combie wird schon bald berühmt werden
Standard

Zitat:
wie kann ich sicherstellen, dass der Cronjob nicht eine andere PHP-Installation für CLI verwendet,
In dem du ihn per wget, cronjob.de o.ä. aufrufst.
Aber warum?
Stell die Pfade richtig ein, dann klappt das auch.

Zitat:
Das mit dem Debug-KnowHow ist sicher nötig,
Jawoll!
Erzeuge einen eigenen Errorhandler, Bau dir ein eigenes Logging.
Übe, übe, übe.....
Mache Kontrollausgaben.
usw.

Zitat:
ich hab das gefühl, dass es die Methode ftp_get ist, die mir da schwierigkeiten macht
Überprüfe das, lass dir die Fehler zeigen, lass dir die Parameter zeigen.



Zitat:
aber ich hab mir die fehlercodes mit error_reporting(E_ALL); ausgeben lassen:
6135.
Und was bedeutet 6135 ???
Bitte lesen und anwenden: http://de.php.net/manual/de/book.errorfunc.php
__________________
Wir werden alle sterben

Geändert von combie (27-08-2009 um 14:52 Uhr)
Mit Zitat antworten
  #7 (permalink)  
Alt 27-08-2009, 14:47
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Zitat von ways Beitrag anzeigen
aber ich hab mir die fehlercodes mit error_reporting(E_ALL); ausgeben lassen:

6135.
Ähm, das ist aber kein Fehlercode, sondern das Loglevel, das vorher eingestellt war. Trotzdem ist error_reporting(E_ALL) nicht verkehrt, auch wenn du es falsch verstanden hast. In Wirklichkeit sorgt es dafür, dass alle Fehlermeldungen ausgegeben oder geloggt werden, Welches von beiden passiert und wo sie ggf. geloggt werden, hängt wieder von anderen Einstellungen ab.

Das Log, das du gefunden hast, sieht wie ein access.log aus. Findest du dort auch ein error.log? Das brauchst du.

Gruß,

Anja
Mit Zitat antworten
  #8 (permalink)  
Alt 27-08-2009, 23:46
ways
 Member
Links : Onlinestatus : ways ist offline
Registriert seit: Nov 2003
Ort: Berlin-West :-)
Beiträge: 386
ways ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von AmicaNoctis Beitrag anzeigen
Ähm, das ist aber kein Fehlercode, sondern das Loglevel, das vorher eingestellt war. Trotzdem ist error_reporting(E_ALL) nicht verkehrt, auch wenn du es falsch verstanden hast. In Wirklichkeit sorgt es dafür, dass alle Fehlermeldungen ausgegeben oder geloggt werden, Welches von beiden passiert und wo sie ggf. geloggt werden, hängt wieder von anderen Einstellungen ab.

Das Log, das du gefunden hast, sieht wie ein access.log aus. Findest du dort auch ein error.log? Das brauchst du.

Gruß,

Anja
Nabend!

ja, blöd.. es heisst sogar access_log ! error_logs kann ich leider nirgens entdecken und über die confixx auch nicht aktivieren oder so ...

gibts es eine Möglichkeit mir diese generieren zu lassen ?

auf meinem lokalen wamp hab ich sowas und nutze es auch immer... sehr hilfreich... aber bei meinem hoster scheint sowas nicht "drin" zu sein...

es ist sehr ärgerlich, dass ein script im vrowseraufruf geht, aber als cronjob nicht..

mittlerweile hab ich mir mal die systememails zuschicken lassen, was der cronjob für ein fehler meldet und der verwirrt mich erst recht, denn diesen kennen ich, kann ihn mit meinem KnowHow level aber nicht erklären !

Warning: ftp_get(/files_archives/mbln2009082724.csv.gz): failed to open stream: No such file or directory in /var/www/web/html/index.php on line 29

wieso erhalte ich diese Meldung nicht, wenn ich das script im Browser aufrufe... sondern alles klappt... ohne fehler, warnhinweis... und auch der Download der oben genannten *gz file klappt anstandslos !

wie kann denn ein Pfad so exestieren, aber für den cronjob nicht?
__________________
Coder never die, they just GOSUB without RETURN

Mein System
Mit Zitat antworten
  #9 (permalink)  
Alt 27-08-2009, 23:58
combie
 PHP Expert
Links : Onlinestatus : combie ist offline
Registriert seit: May 2006
Beiträge: 3.296
combie wird schon bald berühmt werden
Standard

Vergleiche die Pfade!!
(aber da sagte ich schon)
getcwd() wirds wohl ans Licht bringen.
__________________
Wir werden alle sterben
Mit Zitat antworten
  #10 (permalink)  
Alt 28-08-2009, 00:07
ways
 Member
Links : Onlinestatus : ways ist offline
Registriert seit: Nov 2003
Ort: Berlin-West :-)
Beiträge: 386
ways ist zur Zeit noch ein unbeschriebenes Blatt
Standard

bin auch schon dabei, mir solch ein error-logger zu schreiben...
das brauch ich ja echt.... so gehts das ja mal gar nicht !


@combie:

ok, ich werd das gleich mal mit getcwd() prüfen... mal gucken, ob ich anfange zu weinen denn ich habe sicher schon 10 std qualen investiert...
__________________
Coder never die, they just GOSUB without RETURN

Mein System
Mit Zitat antworten
  #11 (permalink)  
Alt 28-08-2009, 00:22
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Es kann auch an den Rechten liegen. PHP-Skripte die über den Server gehen (SAPI) laufen über den Benutzeraccount des Webservers und der hat unter Umständen andere Rechte auf die entsprechenden Verzeichnisse, als der Benutzeraccount für Kommandozeilenversion von PHP (CLI). Frag doch mal beim Hoster nach, ob das so ist.

Bis dahin kannst du versuchen, ob du mit einem SAPI-PHP-Skript die Rechte der Ordner verändern kannst, so dass auch CLI darauf zugreifen kann: 666 für Dateien, 777 für Verzeichnisse.
Mit Zitat antworten
  #12 (permalink)  
Alt 28-08-2009, 00:29
ways
 Member
Links : Onlinestatus : ways ist offline
Registriert seit: Nov 2003
Ort: Berlin-West :-)
Beiträge: 386
ways ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von combie Beitrag anzeigen
Vergleiche die Pfade!!
(aber da sagte ich schon)
getcwd() wirds wohl ans Licht bringen.
nun hast du mich zum weinen gebracht !

ich konnte den fehler aufdecken, wie es scheint !

ABER dennoch wäre es echt lieb, wenn mir jemand diesen umstand einfach mal erklären könnte... das sind ja dinge, die man echt nicht in büchern lernt.. zumindest nicht in meinen

wieso reicht (z.b bei der function ftp_get) die man über ein script im browser aufruft eine relative pfadangabe und das gleiche script als cronjob aber nicht, denn wie ich nun feststelle, benötigt es hierbei die absolute pfadangabe vom serververzeichnis !

ein kurzer hinweis würde mir schon die tränen trocken
__________________
Coder never die, they just GOSUB without RETURN

Mein System
Mit Zitat antworten
  #13 (permalink)  
Alt 28-08-2009, 00:33
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

SAPI-PHP-Skripte werden normalerweise in dem Verzeichnis ausgeführt, wo sie liegen. Relative Pfadangaben beziehen sich demnach auf dieses Verzeichnis.

CLI-Skripte dagegen starten normalerweise in dem Verzeichnis, wo PHP installiert ist. Am besten arbeitest du immer mit absoluten Pfaden.

Ab PHP5.3: file_get_contents(__DIR__ . "/relativer/Pfad/wie vorher.ext");
Vor PHP5.3: file_get_contents(dirname(__FILE__) . "/relativer/Pfad/wie vorher.ext");

Dann kann nichts mehr schief gehen.
Mit Zitat antworten
  #14 (permalink)  
Alt 28-08-2009, 00:38
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.105
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von AmicaNoctis Beitrag anzeigen
CLI-Skripte dagegen starten normalerweise in dem Verzeichnis, wo PHP installiert ist. Am besten arbeitest du immer mit absoluten Pfaden.
Nein, im aktuelle Arbeitsverzeichnis.
Mit Zitat antworten
  #15 (permalink)  
Alt 28-08-2009, 00:42
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Zitat von PHP-Desaster Beitrag anzeigen
Nein, im aktuelle Arbeitsverzeichnis.
Klar, sorry. Wie kam ich denn darauf?
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Fehlersuche ... steiner82 HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 4 13-07-2005 15:07
Fehlersuche Ocean SQL / Datenbanken 8 17-08-2004 23:54
Fehlersuche! Mc. PHP Developer Forum 6 22-01-2004 01:11
Fehlersuche! Mc. SQL / Datenbanken 7 16-01-2004 23:39
Fehlersuche Eni HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 9 09-01-2004 16:00

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 13:19 Uhr.