Internetquellcode
Übersicht

CrystalBetreff: Internetquellcode |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hey, ich mal wieder... ![]() Leider komme ich gerade wieder nicht wirklich weiter. Ich habe eine PHP-Datei im Web und möchte davon den Code als String in meinem BB-Programm haben. OpenTCPStream liefert mit nur eine Zahl als String, aber an den Code komme ich irgendwie nicht ran. Mach ich da etwas falsch, oder geht das schlichtweg gar nicht mit OpenTCPStream? lg |
||
![]() |
M2M |
![]() Antworten mit Zitat ![]() |
---|---|---|
Da PHP eine Serverbasierte Programmiersprache ist, wird dir letztendlich nur der generierte HTML-Code geschickt (das was du im Browser siehst). Du kannst den PHP Code also nicht auslesen, sondern nur dessen Resultat. | ||
Crystal |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ja, das meine ich ja, ich lasse den html-Code nur per php anzeigen, weil er sich ändern kann (Datenbank) | ||
![]() |
Pummelie |
![]() Antworten mit Zitat ![]() |
---|---|---|
OpenTCPStream![]() |
||
It's done when it's done. |
Crystal |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ist das wirklich so kompliziert?
Die Datei beinhaltet nur einen Satz, den ich im Spiel anzeigen lassen will. Danke schon mal für die Antworten |
||
![]() |
Pummelie |
![]() Antworten mit Zitat ![]() |
---|---|---|
Nunja... kompleziert würde ich es nicht nennen...
Hier ist mal ein Code der genau das macht, was du willst... Ich habe eine test.php auf pummelie.de angelegt, die den String "Hallo Welt" beeinhaltet, als Echo. BlitzBasic: [AUSKLAPPEN] Local test_request$=ReadPHPEcho$("pummelie.de","test.php") Testdatei: Code: [AUSKLAPPEN] <?php
echo "Hallo Welt!"; ?> Sobalt du das Verstanden hast, kannst du es sicher für deine Zwecke modifizieren. |
||
It's done when it's done. |
Crystal |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
danke für den tollen code ![]() |
||
Crystal |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
da gibt es doch noch ein Problem
und zwar: wenn ich "pummelie.de" durch meine homepage "blaccul.bplaced.net" ersetzte, auf der die Datei "version.php" liegt, dann läuft die Sache nicht. Er verbindet sich zwar mit bplaced, aber nicht auf meine Seite sondern auf eine die es anscheinend nicht gibt. Woran kann das liegen? |
||
![]() |
Starwar |
![]() Antworten mit Zitat ![]() |
---|---|---|
Teste mal
Zitat: "/version.php" oder "./version.php"
Achte unbedingt auf Groß-/Kleinschreibung. MFG |
||
Crystal |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hab ich getestet, aber immer das gleiche Ergebnis
Was meinst du mit Groß- und Kleinschreibung? |
||
Crystal |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hier mal mein Code
Code: [AUSKLAPPEN] Local test_request$=ReadPHPEcho$("blaccul.bplaced.net","version.php")
Function ReadPHPEcho$(server$,php_file$) Local php_stream=OpenTCPStream(server$,80),size,alt_msg$ WriteLine(php_stream,"GET /"+php_file$+" HTTP/1.0") Print server$ Print php_file$ WriteLine(php_stream,"") Repeat Local tmp_line$=ReadLine$(php_stream) If tmp_line$="" Or tmp_line$=0 Then Exit If Left$(tmp_line$,14)="Content-Length" Then size=Right$(tmp_line$,Len(tmp_line$)-16) Forever If size<>0 Then ;Wenn der Server eine Content größe sendet... Local read_bank=CreateBank(size+1) ReadBytes(read_bank,php_stream,0,BankSize(read_bank)) CloseTCPStream(php_stream) Local msg$=Char$(read_bank) DebugLog(msg$) Return(msg$) EndIf Repeat ;Wenn nicht... Local tmp_read$=ReadLine$(php_stream) If tmp_read$="" Then Exit alt_msg$=alt_msg$+tmp_read$ Forever DebugLog(alt_msg$) Return(alt_msg$) End Function Function Char$(bank) Local i,out$ For i=0 To BankSize(bank)-1 out$=out$+Chr$(PeekByte(bank,i)) Next Return(out$) End Function |
||
![]() |
ZaP |
![]() Antworten mit Zitat ![]() |
---|---|---|
version.php vs Version.php | ||
Starfare: Worklog, Website (download) |
Crystal |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das ist es auch nicht
langsam versteh ich nix mehr!? |
||
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
Im HTTP-Protokoll sind eine Vielzahl von zusätzlichen Angaben vorgesehen, die bei einer Anfrage mitgesendet werden (können).
Eine sehr wichtige, ohne die dir bplaced vermutlich einen "Bad Request" vorwirft wäre "Host: ". Damit ich nicht nur in Rätseln spreche, das heißt der Anfang müsste so in etwa sein: Code: [AUSKLAPPEN] Local php_stream=OpenTCPStream(server$,80),size,alt_msg$
WriteLine(php_stream,"GET /"+php_file$+" HTTP/1.0") Print server$ Print php_file$ WriteLine(php_stream,"Host: "+server) WriteLine(php_stream,"") Hab grad kein funktionierendes Beispiel zur Hand zum Vergleichen. Wenns das noch immer nicht war, dann versuche es mit HTTP/1.1 und event. weiteren Angaben. Alles weitere auf Wikipedia. mfG, Christoph. Nachtrag: Und wenn es partout nicht geht, dann lass dir auch mal das, was in der ersten Repeat Schleife (wo "size" bestimmt wird) ausgelesen wird, anzeigen. Enthält die genaue Rückmeldung vom Server was ihm nicht passt. |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
- Zuletzt bearbeitet von Eingeproggt am Do, Okt 28, 2010 15:16, insgesamt einmal bearbeitet
Crystal |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das mit dem Host läuft, herzlichen Dank ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group