PHP-Code wird nicht ausgeführt, aber der Code wird im Browser-Quellcode angezeigt
Lesezeit: 5 Minuten
Gui
Ich versuche, PHP-Code für ein Projekt auszuführen (mit Dreamweaver), aber der Code wird nicht ausgeführt.
Wenn ich den Quellcode überprüfe, erscheint der PHP-Code als HTML-Tags (ich kann es im Quellcode sehen). Apache läuft ordnungsgemäß (ich arbeite mit XAMPP), die PHP-Seiten werden ordnungsgemäß geöffnet, aber der PHP-Code wird nicht ausgeführt.
Hat jemand einen Vorschlag was los ist?
Notiz: Die Datei ist bereits benannt als filename.php
Bearbeiten:
Der Code..:
<?
include_once("/code/configs.php");
?>
Verwenden Sie kurze Tags <? anstatt <?php?
– Dan Grossmann
25. Februar 2011 um 19:09 Uhr
Verwenden Sie NIEMALS kurze Tags. ( <? ). Sie sind veraltet, funktionieren an vielen Stellen nicht wirklich und sind ansonsten völlig unnötig. Das Einsparen von drei Tastenanschlägen ist kein gültiger Grund, um zuzulassen, dass Ihr Code auf wahrscheinlich der Hälfte der Server, auf denen er ausgeführt wird, möglicherweise fehlschlägt.
– mopsyd
11. Februar 2015 um 19:53 Uhr
@mopsyd Wo steht, dass kurze Tags veraltet sind? Bitte beachte, dass kurze Tags sind nicht dasselbe wie kurze Echo-Tagsund kurze Echo-Tags werden seit PHP 5.4 standardmäßig unterstützt, unabhängig von der short_open_tag Einstellung.
– Kyle Anderson
15. März 2016 um 19:23 Uhr
Mir ist bewusst, dass Short-Tags keine Short-Echo-Tags sind, weshalb ich im Kommentar angegeben habe, wovon ich spreche. Zum Zeitpunkt des Verfassens dieses Artikels wurden Short-Tags für die Veröffentlichung von PHP 6 als veraltet gekennzeichnet, obwohl sich das seitdem anscheinend geändert hat. Das Problem besteht immer noch, dass viele Server sie deaktiviert haben, was Ihren Code erheblich weniger portabel macht. Dies gilt nicht für kurze Echo-Tags (<?=), die unabhängig von den Servereinstellungen auf PHP 5.4+ problemlos laufen sollte.
– mopsyd
18. März 2016 um 0:44 Uhr
dummes Gerede über kurze Tags. Lange Etiketten sind scheiße und sie sind hässlich. Ich hatte noch nie ein Problem in 10 Jahren PHP-Programmierung. Sie sind fast nie das Problem
Während dieses Code-Snippet die Frage lösen kann, einschließlich einer Erklärung von wie und warum das löst das Problem würde wirklich helfen um die Qualität Ihres Beitrags zu verbessern. Denken Sie daran, dass Sie die Frage für zukünftige Leser beantworten, nicht nur für die Person, die jetzt fragt! Bitte bearbeiten Sie Ihre Antwort, um eine Erklärung hinzuzufügen, und geben Sie an, welche Einschränkungen und Annahmen gelten.
– Toby Speight
6. Februar 2017 um 18:31 Uhr
Diese Antwort bezieht sich auf Linux. Der Themenstarter verwendet eindeutig Windows.
– Raymond Nijland
24. April 2017 um 11:53 Uhr
@RaymondNijland stimmt, aber das ist kanonisch und ich habe diese Frage gefunden und sie hat mich nach über einer Stunde Fehlerbehebung gerettet.
– Gans
5. Mai 2017 um 20:57 Uhr
Wie und warum: Dies passiert, wenn PHP7 den standardmäßigen Fast-CGI-Dienst nicht im Make-Skript konfiguriert. sudo a2enmod proxy_fcgi setenvif erstellt drei neue Mods /mods-available/proxy.conf proxy_fcgi.load proxy.load Gleichfalls, sudo a2enconf php7.0-fpm erstellt eine Konfigurationsdatei /conf-available/php7.0-fpm.conf Sobald dies erledigt ist, kann Apache2 das PHP7-Modul als schnellen CGI-Dienst ausführen.
– Talvi Watia
21. November 2017 um 12:49 Uhr
Bitte fügen Sie eine Erklärung hinzu
– tmath
12. Oktober 2020 um 0:12 Uhr
Hinweis für Benutzer von PHP 7, fügen Sie dies Ihrer httpd.conf-Datei hinzu:
Nur um anderen bei diesem Problem zu helfen. Die httpd.conf Datei befindet sich in /etc/apache2/httpd.conf Wenn Sie Ubuntu verwenden, wäre es apache2.conf im selben Verzeichnis, das für PHP7 geändert werden muss.
– Ahmed Sagarwala
14. August 2018 um 19:07 Uhr
Ankunft
Ich habe ein anderes Problem gefunden, das dieses Problem verursacht, und es bereits gelöst. Ich habe versehentlich mein Skript in gespeichert UTF-16 Codierung. Es scheint, dass PHP5 es nicht erkennen kann <?php -Tag standardmäßig in 16-Bit-Codierung.
Nur um anderen bei diesem Problem zu helfen. Die httpd.conf Datei befindet sich in /etc/apache2/httpd.conf Wenn Sie Ubuntu verwenden, wäre es apache2.conf im selben Verzeichnis, das für PHP7 geändert werden muss.
– Ahmed Sagarwala
14. August 2018 um 19:07 Uhr
Escherholz
Sie öffnen gerade Ihre PHP-Datei im Browser. Sie müssen es mit der localhost-URL öffnen. Wenn Sie eine Datei direkt aus Ihrem Verzeichnis öffnen, wird der PHP-Code in keinem Fall ausgeführt.
verwenden: http://locahost/index.php oder http:127.0.0.1/index.php
Aktivieren Sie den PHP-Kurzcode. In Ihrem Fall verwenden Sie <? das ist PHP-Kurzcode für <?php. Standardmäßig sind PHP-Funktionscodes deaktiviert.
Benutze auch: sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt wenn Sie ein Ubuntu-Benutzer sind.
Warum ist mcrypt erforderlich, wenn ich nur eine Datei einfüge? Sie sollten bemerkt haben, dass diese Frage alt ist und das Problem mit kurzen Tags 16 Mal erwähnt wurde, auch im obersten Kommentar meiner Frage.
– GUI
6. Dezember 2016 um 16:20 Uhr
Ich teile nur meine Lösung, ich hatte auch den gleichen Fehler und nachdem ich diesen Befehl von mcrypt ausgeführt hatte, war mein Problem gelöst. Sie können es auch versuchen.
– Hasan Baig
7. Dezember 2016 um 7:43 Uhr
Standardmäßig sind PHP-Funktionscodes aktiviert. short_open_tag=Ein (Standardwert=EIN) in PHP 5.6
– Zone
26. Januar 2017 um 13:38 Uhr
Das war mein Problem, meine virtualmin/Apache-Konfiguration war für 127.0.0.2, aber ich habe meine externe IP-Adresse in den Browser eingegeben, ich habe gerade meine v/a-Konfiguration aktualisiert und jetzt funktioniert es
– Hayden Thring
15. Januar 2019 um 20:14 Uhr
Mir fehlte nur die libapache2-mod-php7.3 .
– dxvargas
7. Dezember 2019 um 0:00 Uhr
9946000cookie-checkPHP-Code wird nicht ausgeführt, aber der Code wird im Browser-Quellcode angezeigtyes
Verwenden Sie kurze Tags
<?
anstatt<?php
?– Dan Grossmann
25. Februar 2011 um 19:09 Uhr
Verwenden Sie NIEMALS kurze Tags. (
<?
). Sie sind veraltet, funktionieren an vielen Stellen nicht wirklich und sind ansonsten völlig unnötig. Das Einsparen von drei Tastenanschlägen ist kein gültiger Grund, um zuzulassen, dass Ihr Code auf wahrscheinlich der Hälfte der Server, auf denen er ausgeführt wird, möglicherweise fehlschlägt.– mopsyd
11. Februar 2015 um 19:53 Uhr
@mopsyd Wo steht, dass kurze Tags veraltet sind? Bitte beachte, dass kurze Tags sind nicht dasselbe wie kurze Echo-Tagsund kurze Echo-Tags werden seit PHP 5.4 standardmäßig unterstützt, unabhängig von der
short_open_tag
Einstellung.– Kyle Anderson
15. März 2016 um 19:23 Uhr
Mir ist bewusst, dass Short-Tags keine Short-Echo-Tags sind, weshalb ich im Kommentar angegeben habe, wovon ich spreche. Zum Zeitpunkt des Verfassens dieses Artikels wurden Short-Tags für die Veröffentlichung von PHP 6 als veraltet gekennzeichnet, obwohl sich das seitdem anscheinend geändert hat. Das Problem besteht immer noch, dass viele Server sie deaktiviert haben, was Ihren Code erheblich weniger portabel macht. Dies gilt nicht für kurze Echo-Tags (
<?=
), die unabhängig von den Servereinstellungen auf PHP 5.4+ problemlos laufen sollte.– mopsyd
18. März 2016 um 0:44 Uhr
dummes Gerede über kurze Tags. Lange Etiketten sind scheiße und sie sind hässlich. Ich hatte noch nie ein Problem in 10 Jahren PHP-Programmierung. Sie sind fast nie das Problem
– Daniel
7. Dezember 2016 um 21:35 Uhr