Ausgabe mit PHP
Ingo Siemon
- php
0 Dennis0 Ingo Siemon0 Dennis0 Ingo Siemon0 Dennis
0 wahsaga
Hallo
Ich habe ein Script (nit PHP), welches mir einen bestimmten Wert
ausgibt, wenn ich folgendes in die Adresszeile des Browsers eingebe:
http://example.org/script.cgiaction=ausgabe&url=http://example.org/muster.foo
Nun würde ich den ausgegebenen Wert gerne auf einer Weseite anzeigen.
Und das würde ich gerne mit PHP machen.
Aber irgendwie weiss ich nicht, wie ich das machen kann.
Folgendes funktioniert nicht:
<?php
echo http://example.org/script.cgiaction=ausgabe&url=http://example.org/muster.foo;
?>
Könntet Ihr mir da auf die Sprünge helfen,
da ich nur wenige Kenntnisse in PHP habe.
Womit muss ich mich beschäftigen, um auf die Lösung
meines Anliegens zu kommen?
Ist das denn überhaupt möglich, so wie ich mir das denke?
Gruß
Ingo
Hi Ingo,
Womit muss ich mich beschäftigen, um auf die Lösung
meines Anliegens zu kommen?
Du musst dich damit beschäftigen, wie du an externe Ressourcen z.B. über HTTP dran kommst. Wenn bei deinem PHP allow_url_fopen auf on gesetzt ist, geht das ganz einfach mit file_get_contents() oder mit fopen() und fread().
Wenn allow_url_fopen nicht auf on gesetzt ist, kannst du es mit fsockopen() versuchen (etwas komplizierter) oder es mit dem PEAR Package HTTP_Client, welches dir fertige Funktionen zum Abruf der URL zur Verfügung stellt, einfach mal in die Doku dazu schauen.
MfG, Dennis.
Lieber Dennis
Du musst dich damit beschäftigen, wie du an externe Ressourcen z.B. über HTTP dran kommst.
OK, vielen lieben Dank erstmal für Deine schnelle Hilfe.
Ich bin aber nicht ganz sicher, ob ich mich vielleicht
falsch ausgedrückt habe.
Diese Ressource, die ich auf meiner Seite mittels PHP anzeigen möchte,
ist im Grunde nicht extern, weil sie ebenfalls zu meiner
Seite gehört.
Also eher so:
http://spaceart.de/script.baz?action=ausgabe&url=http://spaceart.de/muster.foo
Und ausgegeben werden soll dieser Wert dann eben z.B. auf:
http://spaceart.de/trallalla.php
Gruß
Ingo
Hi Ingo,
Diese Ressource, die ich auf meiner Seite mittels PHP anzeigen möchte,
ist im Grunde nicht extern, weil sie ebenfalls zu meiner
Seite gehört.Also eher so:
http://spaceart.de/script.baz?action=ausgabe&url=http://spaceart.de/muster.fooUnd ausgegeben werden soll dieser Wert dann eben z.B. auf:
http://spaceart.de/trallalla.php
Auch in diesem Fall kannst du es genauso machen - dann fordert dein PHP-Script trallalla.php die Ausgabe von der ersten URI an und du kannst sie verwenden.
Die Frage ist nur, warum du dann nicht einfahc den PHP-Code aus script.baz (was ja wohl auch PHP ist) in die trallalla.php kopierst oder script.baz nicht einfach mit include() in trallalla.php einbindest - eine dieser Lösungen wäre der obigen Lösung zu bevorzugen, weil kein HTTP Request abgesetzt werden muss und das dadurch performanter ist.
MfG, Dennis.
Lieber Dennis
Auch in diesem Fall kannst du es genauso machen - dann fordert dein PHP-Script trallalla.php die Ausgabe von der ersten URI an und du kannst sie verwenden.
OK, dann werde ich mal sehen, ob ich das hinbekomme.
Die Frage ist nur, warum du dann nicht einfahc den PHP-Code aus script.baz (was ja wohl auch PHP ist) in die trallalla.php kopierst oder script.baz nicht einfach mit include() in trallalla.php einbindest ...
Das script.baz ist eben nicht PHP.
Da hatte ich mich in meinem ersten Posting vertippt ("nit" statt "nicht")
Und es macht auch noch viel mehr, als nur diese Ausgabe.
Gruß
Ingo
Hi Ingo,
Das script.baz ist eben nicht PHP.
Nun, dann sieht das natürlich anders aus - dann fallen die Include-Möglichkeiten natürlich flach. Wenn PHP bei dir als Apache-Modul läuft kannst du mal probieren die Funktion virtual() zu verwenden, andernfalls bleiben dir nur die von mir im ersten Posting genannten Möglichkeiten (welche aber Traffic erzeugen, nur so am Rande bemerkt).
MfG, Dennis.
Lieber Dennis
Nun, dann sieht das natürlich anders aus - dann fallen die Include-Möglichkeiten natürlich flach. Wenn PHP bei dir als Apache-Modul läuft kannst du mal probieren die Funktion virtual() zu verwenden, andernfalls bleiben dir nur die von mir im ersten Posting genannten Möglichkeiten (welche aber Traffic erzeugen, nur so am Rande bemerkt).
Ich habe es nun gelöst.
Vielen Dank für Deine nette Hilfe.
Gruß
Ingo
hi,
Nun würde ich den ausgegebenen Wert gerne auf einer Weseite anzeigen.
Und das würde ich gerne mit PHP machen.
Aber irgendwie weiss ich nicht, wie ich das machen kann.
Du benutzt also GET als Methode zur Parameterübergabe.
http://tut.php-q.net/get.html
http://www.php-faq.de/ch/ch-webvariablen.html
http://www.php.net/manual/de/language.variables.predefined.php
Und denke auch daran, den Wert vor der Ausgabe so zu behandeln, dass kein Einschleusen von Code in deine Seite darüber möglich ist, Stichwort Cross-Site Scripting.
Die Anwednung von htmlspecialchars() auf den Wert vor der Ausgabe dürfte dafür in so einem Falle idR. ausreichen.
gruß,
wahsaga
Hallo
Das Script, welches diesen Wert ausgibt ist kein PHP-Script.
Ich hatte mich da im ersten Posting vertippt ("nit" statt "nicht").
Und ich hatte mein Anliegen auch etas fehlerhaft formuliert.
Die richtige Formulierung habe ich schon nachgereicht.
Gruß
Ingo