![]() |
ENGLISH VERSION |
|
![]() |
Links | | | Forum | | | Kommentare | | | News melden |
![]() |
Chat | | | Umfragen | | | Newsticker | | | Archiv |
![]() |
amiga-news.de Forum > Programmierung > Perlelemente in PHP includen. | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
-1- | [ - Beitrag schreiben - ] |
09.01.2006, 18:16 Uhr Cj-Stroker Posts: 1343 Nutzer |
Hallo Zusammen, Ich hätte da eine Frage, die mich schon eine Weile beschäftigt. Ich hätte gerne auf meiner Hauptseite, daß die User im Forum und im Chat angezeigt werden. Ersteres war recht leicht zu realisieren, da das Forum ja auch in PHP ist. Letzteres stellt ein Problem dar, weil der Chat in Perl geschrieben ist und diese Scripte nur im CGI-BIN Ordner ausführbar sind. Gibt es hier vielleicht trotzdem eine Möglichkeit die Online-Anzeige einzubinden? MFG Cj-Stroker -- Webmaster of Amiforce and Abakus-Design http://www.Amiforce.de (Fight For Amiga) http://www.cj-stroker.de/Abakus/ (World of AMHuhn and more) Forum: http://amiforce-forum.cj-stroker.de [ - Antworten - Zitieren - Direktlink - ] |
09.01.2006, 18:40 Uhr Mad_Dog Posts: 1944 Nutzer |
@Cj-Stroker: Du könntest z.B. eine Enviroment-Variable zum Datentausch benutzen, falls Dein Webhoster das zulässt. Dort schreibt dann das eine Skript rein, wieviel user online (oder im Chat) sind und das andere Skript kann die Daten dann bequem auslesen. -- http://www.norman-interactive.com [ - Antworten - Zitieren - Direktlink - ] |
09.01.2006, 18:56 Uhr Cj-Stroker Posts: 1343 Nutzer |
Hi Mad_Dog, Wie finde ich das raus, ob der Provider sowas zuläßt? Ich kenne eben nur die Globalvars über die man ja auch bequem das Datum, den Browser usw. auslesen kann. Ehrlich gesagt bin ich auch nicht so firm in diesen Sachen. MFG Cj-Stroker -- Webmaster of Amiforce and Abakus-Design http://www.Amiforce.de (Fight For Amiga) http://www.cj-stroker.de/Abakus/ (World of AMHuhn and more) Forum: http://amiforce-forum.cj-stroker.de [ - Antworten - Zitieren - Direktlink - ] |
10.01.2006, 10:12 Uhr Mad_Dog Posts: 1944 Nutzer |
@Cj-Stroker: Wie so oft ist auch hier die Antwort "Self-HTML": http://de.selfhtml.org/servercgi/cgi/umgebungsvariablen.htm Umgebungsvariablen solltest Du auch vom Amiga kennen... -- http://www.norman-interactive.com [ - Antworten - Zitieren - Direktlink - ] |
10.01.2006, 15:50 Uhr _PAB_ Posts: 3016 Nutzer |
Soweit ich weiß, kann man in PHP ein include bzw. require auch aus einer URL holen, wo Du dann (indirekt) aus der PHP-Seite ein CGI aufrufen kannst. Müßte man aber erst noch genauer nachlesen: http://www.php.net Siehe: "include" => Beispiel 16-5. include() über HTTP [ Dieser Beitrag wurde von _PAB_ am 10.01.2006 um 15:51 Uhr geändert. ] [ - Antworten - Zitieren - Direktlink - ] |
10.01.2006, 16:32 Uhr Cj-Stroker Posts: 1343 Nutzer |
@Mad_Dog Mit Globalcars meinte ich genau das. ![]() Hab mich wohl sehr dumm ausgedrückt. Natürlich habe ich Zugriff auf alle Variablen und nutze diese auch sowohl in PHP, als auch CGI. Das habe ich oben aber geschrieben, als ich das mit dem Datum erwähnte. Hab mich nur etwas dümmlich ausgedrückt. Interessant finde ich in der Einleitung die Passage, daß man Variablen selbst mit Inhalten füllen kann. Würde man also die User als String ablegen, könnte man ja vielleicht diese von anderer Stelle aus auslesen. Ehrlich gesagt bin ich da etwas überfordert, wie ich da vozugehen hätte. @_PAB_ Du kannst natürlich auch per URL in PHP includen. Dummerweise wird das Script aber auf der Stelle ausgeführt, wo das Hauptdokument liegt in welches includet wird. Perlscripte können zumindest bei den meisten Providern aber nur in CGI-Bin ausgeführt werden. Von ausen kommste da also nicht dran. Ich hoffe, daß ich mich nicht gar zu dämlich ausgedrückt habe. MFG Cj-Stroker -- Webmaster of Amiforce and Abakus-Design http://www.Amiforce.de (Fight For Amiga) http://www.cj-stroker.de/Abakus/ (World of AMHuhn and more) Forum: http://amiforce-forum.cj-stroker.de [ - Antworten - Zitieren - Direktlink - ] |
10.01.2006, 16:50 Uhr bruZard Posts: 307 Nutzer |
Es gibt drei Möglichkeiten dass zu machen: 1. Du bindest das externe Script an eine HTML datei welche Du als Quelle in einem Inline Frame angibts. Aber ich könnte mir vorstellen dass das auf keinem Amiga Browser angezeigt wird ![]() 2. verwende die PHP Funktion "require_once" um einen externen Inhalt auszugeben. Auch hier wirst Du kein Glück mit der direkten Angabe eines Perl-Scripts haben, dieses muss widerum an eine HTML Datei gebunden sein. 3. schreibe den Chat in PHP/Java/ASP whatever und vergiss diesen Perl-Kram ... es ist nur noch eine Frage der Zeit bis niemand mehr in Perl was macht ![]() [ - Antworten - Zitieren - Direktlink - ] |
10.01.2006, 16:58 Uhr Cj-Stroker Posts: 1343 Nutzer |
@bruZardZitat:Wie du richtig erkannt hast können Amiga-Browser mit IFrames wenig anfangen. Zitat:Auch hier hast du dir die Antwort schon gegeben, da du von ausen nicht dran kommst. Sowas geht nur bei Providern, die das Ausführen von Perl auch auserhalb von CGI-Bin zulassen. Zitat:Dummerweise gibt es in PHP keinen Chat, der mit diesem vergleichbar wäre. Hier wird wieder wert auf Amiga-Browser gelegt. Vor allem kenne ich keinen, der auf Amiga-Browsern nach unten Scrollen kann. MFG Cj-Stroker -- Webmaster of Amiforce and Abakus-Design http://www.Amiforce.de (Fight For Amiga) http://www.cj-stroker.de/Abakus/ (World of AMHuhn and more) Forum: http://amiforce-forum.cj-stroker.de [ - Antworten - Zitieren - Direktlink - ] |
10.01.2006, 17:03 Uhr bruZard Posts: 307 Nutzer |
Soll ich Dir einen basteln? Sage mir welchen Du einbinden willst damit ich weiß wie er aussehen soll, gib mir 5 Tage Zeit und die Sache ist gegessen ... natürlich würde ich mich an AMIGA "Standards" halten. [ - Antworten - Zitieren - Direktlink - ] |
10.01.2006, 18:27 Uhr Cj-Stroker Posts: 1343 Nutzer |
Hi bruZard, Guck ihn dir doch einfach mal an. Nur kurz reggen und einloggen. Keine Angst. Die Daten werden nicht groß hinterlegt. Ist nur eine Textdatei für mich. mehr nicht. Also das sollte er schon können. Wichtig ist eben, daß er auf Amiga-Browsern scrollen kann, wenn der Text unten angekommen ist. Da gibt es nicht viele, die das können. MFG Cj-Stroker -- Webmaster of Amiforce and Abakus-Design http://www.Amiforce.de (Fight For Amiga) http://www.cj-stroker.de/Abakus/ (World of AMHuhn and more) Forum: http://amiforce-forum.cj-stroker.de [ - Antworten - Zitieren - Direktlink - ] |
11.01.2006, 10:43 Uhr Mad_Dog Posts: 1944 Nutzer |
Zitat: Genau das war ja meine Idee... probier mal etwas in der Art: code:$ENV{NAME_DER_ENV_VARIABLEN} = 'String mit dem Wert'; Übrigens: So ein Perl-Skript zum auslesen der Env-Variablen funktioniert auch prima offline auf dem heimischen Amiga... -- http://www.norman-interactive.com [ - Antworten - Zitieren - Direktlink - ] |
11.01.2006, 10:46 Uhr Mad_Dog Posts: 1944 Nutzer |
Zitat: Das würde aber sein Problem (Austausch von Variablen zwischen verschiedenen Programmen) auch nicht lösen. -- http://www.norman-interactive.com [ - Antworten - Zitieren - Direktlink - ] |
11.01.2006, 12:25 Uhr bruZard Posts: 307 Nutzer |
Doch, würde es lösen. Der Chat schreibt alle derzeit anwesenden User in die Datenbank, das Script welches diese Userliste anzeigen soll liest die Daten einfach wieder aus. code:Nicht sooo wahnsinnig kompliziert, oder?$result = MYSQL_QUERY("SELECT id,user FROM userliste ORDER BY id DESC"); while($row = MYSQL_FETCH_OBJECT($result)) { echo "$row->user<br>"; } ![]() [ - Antworten - Zitieren - Direktlink - ] |
11.01.2006, 12:36 Uhr Mad_Dog Posts: 1944 Nutzer |
Zitat: Das wäre die elegantere Methode. Allerdings kannst Du das in jeder x-beliebigen Sprache (z.B. auch Perl) machen. Es spricht ja nichts dagegen, daß er für den Chat ein Perl Skript und für den Rest php verwendet. Wenn er aber nur wissen will, wieviele User im Chat sind, reicht eine einfache ENV-Variable. -- http://www.norman-interactive.com [ - Antworten - Zitieren - Direktlink - ] |
11.01.2006, 16:04 Uhr Cj-Stroker Posts: 1343 Nutzer |
@bruZard Ich muß dich leider enttäuschen. Die User werden nicht in der Datenbank hinterlegt, da der Chat sowas garnicht unterstützt. Die User sind nur temporär da und werden da auch angezeigt. Du kannst also nix auslesen, wo nix ist. @Mad_Dog Die User werden im Loginscript angezeigt. http://www.cj-stroker.de/cgi-bin/chat/chat.cgi Sie werden unter "Zur Zeit im Chat" aufgelistet. Der einzigste Weg von ausen an irgendwas dranzukommen wäre der Weg über die ENV Variablen. Nur weis ich nicht, wie ich das da reinbekommen soll. Der Aufruf sieht übrigens so aus: # show usernames if ($show_users_on_login) { print << "[END]"; <P>Zur Zeit im Chat:<BR> [END] &usernames; } print << "[END]"; MFG Cj-Stroker -- Webmaster of Amiforce and Abakus-Design http://www.Amiforce.de (Fight For Amiga) http://www.cj-stroker.de/Abakus/ (World of AMHuhn and more) Forum: http://amiforce-forum.cj-stroker.de [ Dieser Beitrag wurde von Cj-Stroker am 11.01.2006 um 16:09 Uhr geändert. ] [ - Antworten - Zitieren - Direktlink - ] |
11.01.2006, 16:59 Uhr bruZard Posts: 307 Nutzer |
@Cj-Stroker: AHA! Dann machst Du folgendes nach code:if($show_users_on_login){ --> code:$ENV("usercount") = &usernames; Auf Deiner Seite (in PHP) machst Du dann das: code:echo getenv("usercount"); Habe das jetzt nicht getestet weil mir ein "schneller" Test in Perl zu zeitaufwändig ist, müsste aber so gehen. [ - Antworten - Zitieren - Direktlink - ] |
11.01.2006, 18:16 Uhr Cj-Stroker Posts: 1343 Nutzer |
Hi bruZard, Nee du, das geht nicht. MFG Cj-Stroker -- Webmaster of Amiforce and Abakus-Design http://www.Amiforce.de (Fight For Amiga) http://www.cj-stroker.de/Abakus/ (World of AMHuhn and more) Forum: http://amiforce-forum.cj-stroker.de [ - Antworten - Zitieren - Direktlink - ] |
11.01.2006, 18:33 Uhr Mad_Dog Posts: 1944 Nutzer |
Zitat: @bruZard: So wie's aussieht, ist &usernames hier eine Funktion und kein String. Da muß man sich erstmal anschauen, was die Funktion macht - eventuell gibt sie ja noch HTML-Tags aus, die man aber in einer ENV-Variablen nicht brauchen kann. @Cj-Stroker: Wenn Du nur die Zahl der User übergeben willst, suche nach der Variablen, in der dies gespeichert ist und mach eine entsprechende ENV-Variable draus. z.B. code:$ENV{USERIMCHAT} = "$ZAHLDERUSER" Falls Du die Namen der User übergeben willst, dann bastelst Du am besten erst einen gaaaanz langen String zusammen, der alle Namen der User im Chat enthält und machst dann einen String daraus, den Du in einer ENV-Variablen abspeicherst... Also sowas wie: code:$ENV{USERIMCHAT} = "$User1 $User2 $User3 $User4" Aber in der Praxis werden die Namen wahrscheinlich in einem Array oder ähnlichem gespeichert sein, dann mußt Du eben entsprechend umdenken... -- http://www.norman-interactive.com [ Dieser Beitrag wurde von Mad_Dog am 11.01.2006 um 18:42 Uhr geändert. ] [ - Antworten - Zitieren - Direktlink - ] |
-1- | [ - Beitrag schreiben - ] |
amiga-news.de Forum > Programmierung > Perlelemente in PHP includen. | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
![]() |
Impressum |
Datenschutzerklärung |
Netiquette |
Werbung |
Kontakt
Copyright © 1998-2025 by amiga-news.de - alle Rechte vorbehalten. |
![]() |