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 12-07-2017, 14:48
fox_bw
 Registrierter Benutzer
Links : Onlinestatus : fox_bw ist offline
Registriert seit: Dec 2016
Beiträge: 13
fox_bw befindet sich auf einem aufstrebenden Ast
Standard Superglobal funktioniert in Konsole nicht

Hallo zusammen,

ich binde meine Servervariablen über eine externe Datei in meine PHP-Datei ein.

PHP-Code:
require($_SERVER['DOCUMENT_ROOT']."/Projektverwaltung/includes/server.inc"); 
Rufe ich die PHP-Datei auf meinem Server über den Browser auf, dann funktioniert auch alles.
Wenn ich nun die Datei über die Konsole von ubuntu aufrufen möchte mit

Code:
php import_txt.php
dann erscheint diese Fehlermeldung:

Code:
PHP Warning:  require(/Projektverwaltung/includes/server.inc): failed to open stream: No such file or directory in /var/www/html/Projektverwaltung/geo/import_txt.php on line 7
Warum funktioniert $_SERVER['DOCUMENT_ROOT'] über die Konsole nicht? Hintergrund der Sache ist, dass ich die Datei über crontab ausführen möchte, es dort aber auch nicht funktioniert.

Vielen Dank im Voraus für Eure Antworten.

fox_bw
Mit Zitat antworten
  #2 (permalink)  
Alt 12-07-2017, 16:06
bandit600
 Registrierter Benutzer
Links : Onlinestatus : bandit600 ist offline
Registriert seit: Jan 2010
Beiträge: 183
bandit600 befindet sich auf einem aufstrebenden Ast
Standard

Na warum wohl nicht? Du hast dann keinen Server und somit kann in $_SERVER auch nichts stehen.
Mit Zitat antworten
  #3 (permalink)  
Alt 12-07-2017, 16:57
fox_bw
 Registrierter Benutzer
Links : Onlinestatus : fox_bw ist offline
Registriert seit: Dec 2016
Beiträge: 13
fox_bw befindet sich auf einem aufstrebenden Ast
Standard

Hallo bandit600,

Zitat:
Zitat von bandit600 Beitrag anzeigen
Na warum wohl nicht? Du hast dann keinen Server und somit kann in $_SERVER auch nichts stehen.
dies verstehe ich nicht. Sowohl die Anfrage über den Browser als auch die Anfrage über die Konsole werden auf dem selben Server ausgeführt. Wenn es doch im Browser funktioniert muss doch ein Server vorhanden sein und di Variable gesetzt sein. Warum dann über die Konsole nicht? Das ist mir zu hoch.

fox_bw
Mit Zitat antworten
  #4 (permalink)  
Alt 12-07-2017, 20:15
bandit600
 Registrierter Benutzer
Links : Onlinestatus : bandit600 ist offline
Registriert seit: Jan 2010
Beiträge: 183
bandit600 befindet sich auf einem aufstrebenden Ast
Standard

Wenn du über den Browser gehst, dann wird der Webserver angesprochen, in der Konsole wird PHP direkt aufgerufen
Mit Zitat antworten
  #5 (permalink)  
Alt 13-07-2017, 13:17
fox_bw
 Registrierter Benutzer
Links : Onlinestatus : fox_bw ist offline
Registriert seit: Dec 2016
Beiträge: 13
fox_bw befindet sich auf einem aufstrebenden Ast
Standard

Hallo Bandit600,

vielen Dank für deine Erklärung, ist mir jetzt soweit klar.

Ich bin auf die Sach emit der Konsole eigentlich nur gekommen, weil ich über crontab php-Skripte ausführen lassen wollte, un dies aber irgendwie nicht funktioniert. Deshalb wollte ich über die Konsole eben versuchen, ob das Skript funktioniert oder nicht.
Gibt es eine Möglichkeit bei crontab sich Fehlermedlungen anzeigen zu lassen? Oder werden diese in eine LOG-Datei geschrieben? Oder kann man die Abfragen bei crontab simulieren?
Ich weiß, dass diese Fragen in diesem Forum vielleicht nicht ganz passend sind.
Sorry

fox_bw
Mit Zitat antworten
  #6 (permalink)  
Alt 13-07-2017, 14:25
bandit600
 Registrierter Benutzer
Links : Onlinestatus : bandit600 ist offline
Registriert seit: Jan 2010
Beiträge: 183
bandit600 befindet sich auf einem aufstrebenden Ast
Standard

Über die Konsole testen ist schon richtig, du musst bei den include-Anweisungen absolute Pfade verwenden und keine Server-Variablen benutzen, dann funktioniert das auch.
Mit Zitat antworten
  #7 (permalink)  
Alt 13-07-2017, 15:23
fox_bw
 Registrierter Benutzer
Links : Onlinestatus : fox_bw ist offline
Registriert seit: Dec 2016
Beiträge: 13
fox_bw befindet sich auf einem aufstrebenden Ast
Standard

Hallo bandit600,

Zitat:
Zitat von bandit600 Beitrag anzeigen
Über die Konsole testen ist schon richtig, du musst bei den include-Anweisungen absolute Pfade verwenden und keine Server-Variablen benutzen, dann funktioniert das auch.
Danke für deine Anmerkung.

Eine andere Möglichkeit der Fehlersuche warum crontab nicht richtig funktioniert gibt es nicht?

fox_bw
Mit Zitat antworten
  #8 (permalink)  
Alt 15-07-2017, 15:28
Benutzerbild von mermshaus mermshaus
 Registrierter Benutzer
Links : Onlinestatus : mermshaus ist offline
Registriert seit: Jun 2009
Beiträge: 451
mermshaus wird schon bald berühmt werden
Standard

Du kannst die Ausgaben (reguläre und Fehler) zum Beispiel in eine Datei schreiben lassen:

- https://unix.stackexchange.com/quest...om-within-cron

Ansonsten ist es für deinen Anwendungsfall vielleicht sinnvoll, das Script einfach trotzdem über HTTP aufzurufen und nicht über das Dateisystem des Servers. Direkt über den PHP-Interpreter wäre es möglicherweise schöner, aber mit HTTP müsstest du es unter Umständen nicht umschreiben oder gar zwei Varianten verwalten. Dazu kannst du im cronjob zum Beispiel curl nutzen.

Code:
/usr/bin/curl -s 'http://example.org' > /dev/null
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
jquery: Klasse wird nicht entfernt - in der Konsole schon matthias-nbg HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 1 26-11-2012 20:01
PHP funktioniert nicht so über die Konsole wie im Browser Churchill27 Fragen zu Installation & Konfiguration (LAMP, WAMP & Co.) 8 04-01-2007 18:26
Variablen Superglobal xmedia2000 PHP Developer Forum 20 11-08-2005 13:13
Superglobal: $_POST Gizmo23 PHP Developer Forum 8 03-03-2005 18:48
$_SESSION superglobal? Moqui PHP Developer Forum 1 11-05-2003 19:29

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

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni

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


 

Aktuelle PHP Scripte

ModuleStudio ansehen ModuleStudio

Modellgetriebene Entwicklung von Erweiterungen für das Open Source Framework Zikula.

15.01.2019 Guite | Kategorie: PHP ENTWICKLUNGSUMGEBUNG
FAQ Script PHP ansehen FAQ Script PHP

FAQ Script PHP is a simple knowledgebase script and you could use it as a Frequently Asked Question section on your website. It is written in PHP and MySQL.

14.01.2019 nevenov | Kategorie: PHP/ FAQ
Admidio Mitgliederverwaltung

Admidio ist eine kostenlose Online-Mitgliederverwaltung, die für Vereine, Gruppen und Organisationen optimiert ist. Sie besteht neben der Mitgliederverwaltung aus einer Vielzahl an Modulen (Foto-, Download-, Terminverwaltung), die in eine neue oder besteh

08.01.2019 webmaster52@ | Kategorie: PHP/ Groupware
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:43 Uhr.