![]() |
![]() |
|
![]() |
![]() |
|
Programmierung Rat & Tat für Programmierer |
![]() |
|
Themen-Optionen | Ansicht |
![]() |
#1 |
Veteran
![]() Registriert seit: 13.11.1999
Beiträge: 466
|
![]() * Ein perl-script ruft eine ausgabe.html-Datei auf und gibt innerhalb eines html-Layouts Daten aus.
* Ich aendere den Namen der Datei auf ausgabe.php und passe den Aufruf entsprechend im perl-Script an. Soweit, so gut - alles funktioniert wie gewohnt. Schreibe ich allerdings ein paar Zeilen php in den html-Code, wird der php-Code einfach ignoriert. Warum ist das so? Danke ff |
![]() |
![]() |
![]() |
#2 |
Master
![]() |
![]() der webserver kann kein php?
![]()
____________________________________
Lang ist der Weg durch Lehren, kurz und wirksam durch Beispiele. Lucius Annaeus Seneca ...:::www.modellbaulexikon.org:::... www.acrobat-se.org | www.ams-8c.de.vu |
![]() |
![]() |
![]() |
#3 |
Veteran
![]() Registriert seit: 13.11.1999
Beiträge: 466
|
![]() Sehr wohl. Reine php-Scripts laufen problemlos.
|
![]() |
![]() |
![]() |
#4 |
Newbie
![]() |
![]() wir rufst du das PHP-Script auf?
per HTTP oder mit der Perl-Funktion open |
![]() |
![]() |
![]() |
#5 |
Veteran
![]() Registriert seit: 13.11.1999
Beiträge: 466
|
![]() open(F,"<data/ausgabe.php");
Der php-Code steht dann z.B. wie <?php print "hallo"; ?> im html-Teil und . . . wird nicht angezeigt. Ich finde keine logische Erklaerung fuer dieses Verhalten, da ja php gar nicht wissen kann, ob die php-Seite von einen Perl-Script aufgerufen/erzeugt wurde oder "normal". Meine Perl-Kenntnisse sind auf kleine Anpassungen beschraenkt, deshalb meine Anfrage hier. |
![]() |
![]() |
![]() |
#6 |
Newbie
![]() |
![]() Mit open öffnest du nur die Datei ohne das sie ausgeführt wird.
nur wenn die PHP-datei über HTTP aufgerufen wird, wird der PHP-Code ausgeführt. Fals PHP als CGI läuft oder die PHPversion >4.3(CLI) installiert ist kannst du mal das versuchen. open(F,"php -q <data/ausgabe.php |"); |
![]() |
![]() |
![]() |
#7 |
Inventar
![]() Registriert seit: 13.06.2001
Beiträge: 1.830
|
![]()
____________________________________
Join the DNRC | Godwin\'s Law (thx@stona) Documentation is like sex: If it\'s good, it\'s very, very good. If it\'s bad, it\'s better than nothing. \"In theory, theory and practice are the same. In practice, they are not\" (Lawrence Berra) |
![]() |
![]() |
![]() |
#8 |
Inventar
![]() Registriert seit: 08.02.2000
Beiträge: 1.696
|
![]() Eine andere Möglichkeit ist system/exec, und die php-Datei an den PHP-Interpreter zu übergeben (als Shell-Script).
mfg
____________________________________
Sex is like hacking. You get in, you get out, and you hope you didnt leave something behind that can be traced back to you. |
![]() |
![]() |
![]() |
#9 |
Veteran
![]() Registriert seit: 13.11.1999
Beiträge: 466
|
![]() @AAD
Es laeuft php 4.1 und ich moechte mit einem Update auf 5.0 warten. open(F,"php -q <data/ausgabe.php |"); funktioniert daher (noch) nicht. > Mit open öffnest du nur die Datei ohne das sie ausgeführt wird. Sollte nicht eine php-Datei automatisch beim oeffnen ausgefuehrt werden? Woher weiss der php-Interpreter, dass die Datei von einem Perl-Script geoeffnet wurde und nicht vom User, der die ausgabe.php direkt aufruft? Dann funktioniert der php-Code naemlich - die perl-Ausgabe dafuer natuerlich nicht . . . @jak schlecht. Kein php-Code wird in dem beschriebenen Fall ausgefuehrt. @SNo0py Klingt interessant, aber schaut mir nach umschreiben des "fremden" perl-Scripts aus. Da moechte ich mich nicht hineinarbeiten, nur um ein paar Zeilen php ins html zu integrieren. Jedenfalls herzlichen Dank an alle fuer eure Antworten ff |
![]() |
![]() |
![]() |
#10 | |
Newbie
![]() |
![]() Zitat:
Ganz einfach, mit open öffnet man die normale Text-Datei. Dem php-Interpreter muss angegeben werden, wann er die PHP-Datei ausführen soll. PHP als Apache-Modul installiert: Eintrag in der httpd.conf AddType application/x-httpd-php .php .phtml Der Webserver kontrolliert die Dateiendung, wenn diese im Eintrag application/x-httpd-php vorhanden ist, dann wird die Datei mit dem php-Interpreter ausgeführt. PHP als CGI auf Linux/Unix Webserver: bei CGI muss in der 1.Zeile der Interpreter angegeben werden, in welcher Sprache die Datei geschrieben ist. z.b. #!/usr/bin/php für PHP #!/usr/bin/perl für Perl |
|
![]() |
![]() |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|