 |
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
Verfasst am: 02.09.2007, 17:19 Titel: Sockets Frage... |
|
|
Hallo!
Mir ist dieser Topic bekannt, allerdings sind ein paar Fragen noch da:
-Es muss mit den Win-Sockets realisiert sein.
-Wie übertrage ich da die POST-Daten, und wie bekomme ich das, was das Skript vermeldet zurück? _________________ If hilfreicher_Beitrag then klick(location.here)
Klick |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
Verfasst am: 02.09.2007, 19:16 Titel: |
|
|
OK, ich dachte zuerst SDL wäre zugross, aber es geht doch xD
Ok, aber das hier funzt net:
Code: | #INCLIB "SDL_net"
'Global Information from SDL_net
TYPE Uint16 AS USHORT
TYPE Uint32 AS UINTEGER
TYPE IPaddress
host AS Uint32
port AS Uint16
END TYPE
TYPE TCPsocket AS _TCPsocket PTR
EXTERN "c"
DECLARE FUNCTION SDLNet_Init () AS INTEGER
DECLARE FUNCTION SDLNet_ResolveHost (BYVAL address AS IPaddress PTR, BYVAL host AS ZSTRING PTR, BYVAL port AS Uint16) AS INTEGER
DECLARE FUNCTION SDLNet_TCP_Open (BYVAL ip AS IPaddress PTR, BYVAL Port AS INTEGER=80) AS TCPsocket
DECLARE FUNCTION SDLNet_TCP_Recv (BYVAL sock AS TCPsocket, BYVAL DATA AS ANY PTR, BYVAL maxlen AS INTEGER) AS INTEGER
DECLARE FUNCTION SDLNet_TCP_Send (BYVAL sock AS TCPsocket, BYVAL DATA AS ANY PTR, BYVAL LEN AS INTEGER) AS INTEGER
DECLARE SUB SDLNet_TCP_Close (BYVAL sock AS TCPsocket)
DECLARE SUB SDLNet_Quit ()
END EXTERN
'Standart COLOR: RGB(255, 163, 79);">HTTP Functions
CONST recv_timeout = 5 '100 seconds
CONST RECVBUFFLEN = 8192
CONST NEWLINE = !"\r\n"
CONST Referer = ""
DECLARE FUNCTION TCP_open (BYVAL hostname AS STRING, BYVAL Port AS INTEGER=80) AS TCPSocket
DECLARE FUNCTION TCP_http (BYVAL method AS STRING="GET", BYVAL Socket AS TCPSocket, BYVAL hostname AS STRING, BYVAL path AS STRING="") AS INTEGER
DECLARE FUNCTION TCP_recv (BYVAL socket AS TCPSocket) AS STRING
DECLARE FUNCTION TCP_close (BYVAL socket AS TCPSocket) AS INTEGER
'****************************************************************
FUNCTION TCP_open (BYVAL hostname AS STRING, BYVAL Port AS INTEGER=80) AS TCPSocket
'****************************************************************
'' init
IF( SDLNet_Init <> 0 ) THEN
'PRINT "ERROR: SDLNet_Init failed"
RETURN 0
END IF
'' resolve
DIM ip AS IPAddress
DIM socket AS TCPSocket
IF( SDLNet_ResolveHost( @ip, hostname, Port ) <> 0 ) THEN
'PRINT "ERROR: SDLNet_ResolveHost failed"
RETURN 0
END IF
'' OPEN
socket = SDLNet_TCP_Open( @ip )
IF( socket = 0 ) THEN
'PRINT "ERROR: SDLNet_TCP_Open failed"
RETURN 0
END IF
RETURN socket
'****************************************************************
END FUNCTION 'TCP_open
'****************************************************************
'****************************************************************
FUNCTION TCP_http (BYVAL method AS STRING="GET", _
BYVAL Socket AS TCPSocket, _
BYVAL hostname AS STRING, _
BYVAL path AS STRING="") AS INTEGER
'****************************************************************
'' send COLOR: RGB(255, 163, 79);">HTTP request
DIM sendbuffer AS STRING
DIM MString AS STRING
SELECT CASE LCASE (method)
CASE "post"
MString="POST /"
CASE ELSE
MString="GET /"
END SELECT
SendBuffer= _
MString+path+"HTTP/1.1"+NEWLINE+ _
"Connection: CLOSE"+NEWLINE
'"Host: "+hostname+NEWLINE+ _
'"Connection: CLOSE"+NEWLINE
'IF MString="POST" THEN SendBuffer+= _
'"Accept-ENCODING: gzip"+NEWLINE
SendBuffer+= _
"User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4"+NEWLINE
'"Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5"+NEWLINE+ _
'"Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3"+NEWLINE+ _
'"Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7"+NEWLINE+ _
'"Referer: "+Referer+NEWLINE
IF MString="POST /" THEN SendBuffer+= _
"Content-TYPE: application/x-www-form-urlencoded"+NEWLINE
SendBuffer+=NEWLINE
IF( SDLNet_TCP_Send( socket, STRPTR( sendbuffer ), LEN( sendbuffer ) ) < LEN( sendbuffer ) ) THEN
'PRINT "ERROR: SDLNet_TCP_Send failed"
RETURN -1
END IF
RETURN 0
'****************************************************************
END FUNCTION 'TCP_http
'****************************************************************
'****************************************************************
FUNCTION TCP_recv (BYVAL socket AS TCPSocket) AS STRING
'****************************************************************
DIM TimeOut AS SINGLE
DIM TimeOutX AS SINGLE
TimeOut=TIMER
'' receive til connection IS closed
DIM recvbuffer AS ZSTRING * RECVBUFFLEN+1
DIM recv_Buffer AS STRING
DIM bytes AS INTEGER
DO
IF TimeOutX>recv_TimeOut THEN EXIT DO
bytes = SDLNet_TCP_Recv( socket, STRPTR( recvbuffer ), RECVBUFFLEN )
IF( bytes <= 0 ) THEN
'SLEEP (100),1
EXIT DO
ELSE
timeout=TIMER
END IF
'' ADD the null-terminator
recvbuffer[bytes] = 0
'' PRINT it AS STRING
'PRINT recvbuffer;
recv_Buffer+=recvbuffer
TimeOutX=TIMER-TimeOut
LOOP WHILE INSTR(LCASE(recvbuffer),"</html>")=0
RETURN recv_Buffer
'****************************************************************
END FUNCTION 'TCP_recv
'****************************************************************
'****************************************************************
FUNCTION TCP_close (BYVAL socket AS TCPSocket) AS INTEGER
'****************************************************************
'' CLOSE socket
SDLNet_TCP_Close( socket )
'' quit
SDLNet_Quit
RETURN 0
'****************************************************************
END FUNCTION 'TCP_close
'****************************************************************
dim my as TCPSocket
my=TCP_open ("http://csderats.cs.funpic.de", 80)
TCP_http (, _
my, _
"http://csderats.cs.funpic.de", _
"/")
print TCP_recv (my)
TCP_close (my)
sleep
end
|
_________________ If hilfreicher_Beitrag then klick(location.here)
Klick |
|
Nach oben |
|
 |
Eternal_pain

Anmeldungsdatum: 08.08.2006 Beiträge: 1783 Wohnort: BW/KA
|
Verfasst am: 02.09.2007, 19:29 Titel: |
|
|
lass mal die http:// und den / wenn kein path ist, weg....
Code: |
my=TCP_open ("csderats.cs.funpic.de", 80)
TCP_http (, _
my, _
"csderats.cs.funpic.de", _
"")
print TCP_recv (my)
TCP_close (my)
sleep
end |
sollte gehen
Edit: die SDL funktionen lassen sich auch fast 1:1 fuer Winsock uebernehmen, die Funktionen haben nur etwas andere namen, aber von der Funktion her sind sie soweit ich noch weiss, gleich.... _________________
 |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
Verfasst am: 02.09.2007, 19:45 Titel: |
|
|
Merkwürdig
Bei mir kommt das hier raus (Mit deiner Änderung):
Code: | <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>302 Found</title>
</head><body>
<h1>Found</h1>
<p>The document has moved <a href="http://404.funpic.de/404.html">here</a>.</p>
</body></html> |
_________________ If hilfreicher_Beitrag then klick(location.here)
Klick |
|
Nach oben |
|
 |
Eternal_pain

Anmeldungsdatum: 08.08.2006 Beiträge: 1783 Wohnort: BW/KA
|
Verfasst am: 02.09.2007, 19:56 Titel: |
|
|
ich konnte jetzt nicht alle aenderungen die Du gemacht hast ueberblicken, aber mit den Original so wie ich es in dem anderen Thread gepostet habe, gehts....
Edit:
Code: | dim my as TCPSocket |
gehort noch dazu  _________________
 |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
Verfasst am: 02.09.2007, 19:58 Titel: |
|
|
Hmm.
0.18.1b
Zitat: | M:\\fbc -s console "SDL_net.bas"
SDL_net.bas(83) error 41: Variable not declared, post in 'CASE "COLOR: RGB(255, 163, 79);">post"'
SDL_net.bas(83) warning 12(0): Implicit variable allocation, post
SDL_net.bas(83) error 3: Expected End-of-Line in 'CASE "COLOR: RGB(255, 163, 79);">post"'
SDL_net.bas(84) error 21: Type mismatch in 'MString="COLOR: RGB(255, 163, 79);">POST /"'
SDL_net.bas(91) error 41: Variable not declared, HTTP in 'MString+path+" COLOR: RGB(255, 163, 79);">HTTP/1.1"+NEWLINE+ _'
SDL_net.bas(91) warning 12(0): Implicit variable allocation, HTTP
SDL_net.bas(92) error 109: Cannot modify a constant, before '+' in '"Host: "+hostname+NEWLINE+ _'
SDL_net.bas(95) error 21: Type mismatch in 'IF MString="COLOR: RGB(255, 163, 79);">POST /" THEN SendBuffer+= _'
SDL_net.bas(96) error 109: Cannot modify a constant, before '+' in '"Accept-ENCODING: gzip"+NEWLINE'
SDL_net.bas(105) error 21: Type mismatch in 'IF MString="COLOR: RGB(255, 163, 79);">POST /" THEN SendBuffer+= _'
SDL_net.bas(106) error 109: Cannot modify a constant, before '+' in '"Content-TYPE: application/x-www-form-urlencoded"+NEWLINE'
SDL_net.bas(116) error 33: Expected 'END IF', found 'END' in 'END FUNCTION 'TCP_http'
SDL_net.bas(116) error 123: Too many errors, exiting
Build error(s) |
Scheint wohl so, als ob er mit dem " COLOR: RGB(255, 163, 79);"> nicht klarkommen würde
Was heißt das überhaupt?? _________________ If hilfreicher_Beitrag then klick(location.here)
Klick |
|
Nach oben |
|
 |
Eternal_pain

Anmeldungsdatum: 08.08.2006 Beiträge: 1783 Wohnort: BW/KA
|
Verfasst am: 02.09.2007, 19:59 Titel: |
|
|
Code: | '----------------------------------------------------------------------------------------------------------------------------------------------------------'
#INCLIB "SDL_net"
'Global Information from SDL_net
TYPE Uint16 AS USHORT
TYPE Uint32 AS UINTEGER
TYPE IPaddress
host AS Uint32
port AS Uint16
END TYPE
TYPE TCPsocket AS _TCPsocket PTR
EXTERN "c"
DECLARE FUNCTION SDLNet_Init () AS INTEGER
DECLARE FUNCTION SDLNet_ResolveHost (BYVAL address AS IPaddress PTR, BYVAL host AS ZSTRING PTR, BYVAL port AS Uint16) AS INTEGER
DECLARE FUNCTION SDLNet_TCP_Open (BYVAL ip AS IPaddress PTR, BYVAL Port AS INTEGER=80) AS TCPsocket
DECLARE FUNCTION SDLNet_TCP_Recv (BYVAL sock AS TCPsocket, BYVAL DATA AS ANY PTR, BYVAL maxlen AS INTEGER) AS INTEGER
DECLARE FUNCTION SDLNet_TCP_Send (BYVAL sock AS TCPsocket, BYVAL DATA AS ANY PTR, BYVAL LEN AS INTEGER) AS INTEGER
DECLARE SUB SDLNet_TCP_Close (BYVAL sock AS TCPsocket)
DECLARE SUB SDLNet_Quit ()
END EXTERN
'----------------------------------------------------------------------------------------------------------------------------------------------------------'
'Standart HTTP Functions
CONST recv_timeout = 5 '100 seconds
CONST RECVBUFFLEN = 8192
CONST NEWLINE = !"\r\n"
CONST Referer = ""
DECLARE FUNCTION TCP_open (BYVAL hostname AS STRING, BYVAL Port AS INTEGER=80) AS TCPSocket
DECLARE FUNCTION TCP_http (BYVAL method AS STRING="GET", BYVAL Socket AS TCPSocket, BYVAL hostname AS STRING, BYVAL path AS STRING="") AS INTEGER
DECLARE FUNCTION TCP_recv (BYVAL socket AS TCPSocket) AS STRING
DECLARE FUNCTION TCP_close (BYVAL socket AS TCPSocket) AS INTEGER
'----------------------------------------------------------------------------------------------------------------------------------------------------------'
'****************************************************************
FUNCTION TCP_open (BYVAL hostname AS STRING, BYVAL Port AS INTEGER=80) AS TCPSocket
'****************************************************************
'' init
IF( SDLNet_Init <> 0 ) THEN
'PRINT "ERROR: SDLNet_Init failed"
RETURN 0
END IF
'' resolve
DIM ip AS IPAddress
DIM socket AS TCPSocket
IF( SDLNet_ResolveHost( @ip, hostname, Port ) <> 0 ) THEN
'PRINT "ERROR: SDLNet_ResolveHost failed"
RETURN 0
END IF
'' OPEN
socket = SDLNet_TCP_Open( @ip )
IF( socket = 0 ) THEN
'PRINT "ERROR: SDLNet_TCP_Open failed"
RETURN 0
END IF
RETURN socket
'****************************************************************
END FUNCTION 'TCP_open
'****************************************************************
'****************************************************************
FUNCTION TCP_http (BYVAL method AS STRING="GET", _
BYVAL Socket AS TCPSocket, _
BYVAL hostname AS STRING, _
BYVAL path AS STRING="") AS INTEGER
'****************************************************************
'' send HTTP request
DIM sendbuffer AS STRING
DIM MString AS STRING
SELECT CASE LCASE (method)
CASE "post"
MString="POST /"
CASE ELSE
MString="GET /"
END SELECT
SendBuffer= _
MString+path+" HTTP/1.1"+NEWLINE+ _
"Host: "+hostname+NEWLINE+ _
"Connection: CLOSE"+NEWLINE
IF MString="POST /" THEN SendBuffer+= _
"Accept-ENCODING: gzip"+NEWLINE
SendBuffer+= _
"Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5"+NEWLINE+ _
"Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3"+NEWLINE+ _
"Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7"+NEWLINE+ _
"User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4"+NEWLINE+ _
"Referer: "+Referer+NEWLINE
IF MString="POST /" THEN SendBuffer+= _
"Content-TYPE: application/x-www-form-urlencoded"+NEWLINE
SendBuffer+=NEWLINE
IF( SDLNet_TCP_Send( socket, STRPTR( sendbuffer ), LEN( sendbuffer ) ) < LEN( sendbuffer ) ) THEN
'PRINT "ERROR: SDLNet_TCP_Send failed"
RETURN -1
END IF
RETURN 0
'****************************************************************
END FUNCTION 'TCP_http
'****************************************************************
'****************************************************************
FUNCTION TCP_recv (BYVAL socket AS TCPSocket) AS STRING
'****************************************************************
DIM TimeOut AS SINGLE
DIM TimeOutX AS SINGLE
TimeOut=TIMER
'' receive til connection IS closed
DIM recvbuffer AS ZSTRING * RECVBUFFLEN+1
DIM recv_Buffer AS STRING
DIM bytes AS INTEGER
DO
IF TimeOutX>recv_TimeOut THEN EXIT DO
bytes = SDLNet_TCP_Recv( socket, STRPTR( recvbuffer ), RECVBUFFLEN )
IF( bytes <= 0 ) THEN
'SLEEP (100),1
EXIT DO
ELSE
timeout=TIMER
END IF
'' ADD the null-terminator
recvbuffer[bytes] = 0
'' PRINT it AS STRING
'PRINT recvbuffer;
recv_Buffer+=recvbuffer
TimeOutX=TIMER-TimeOut
LOOP WHILE INSTR(LCASE(recvbuffer),"</html>")=0
RETURN recv_Buffer
'****************************************************************
END FUNCTION 'TCP_recv
'****************************************************************
'****************************************************************
FUNCTION TCP_close (BYVAL socket AS TCPSocket) AS INTEGER
'****************************************************************
'' CLOSE socket
SDLNet_TCP_Close( socket )
'' quit
SDLNet_Quit
RETURN 0
'****************************************************************
END FUNCTION 'TCP_close
'****************************************************************
'----------------------------------------------------------------------------------------------------------------------------------------------------------'
dim my as TCPSocket
my=TCP_open ("csderats.cs.funpic.de", 80)
TCP_http (, _
my, _
"csderats.cs.funpic.de", _
"")
PRINT TCP_recv (my)
TCP_close (my)
SLEEP
END |
gleiche FBC keine fehler  _________________
 |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
Verfasst am: 02.09.2007, 20:01 Titel: |
|
|
grade habe ich eine Lösung gefunden die geht:
Code: | '----------------------------------------------------------------------------------------------------------------------------------------------------------'
#INCLIB "SDL_net"
'Global Information from SDL_net
TYPE Uint16 AS USHORT
TYPE Uint32 AS UINTEGER
TYPE IPaddress
host AS Uint32
port AS Uint16
END TYPE
TYPE TCPsocket AS _TCPsocket PTR
EXTERN "c"
DECLARE FUNCTION SDLNet_Init () AS INTEGER
DECLARE FUNCTION SDLNet_ResolveHost (BYVAL address AS IPaddress PTR, BYVAL host AS ZSTRING PTR, BYVAL port AS Uint16) AS INTEGER
DECLARE FUNCTION SDLNet_TCP_Open (BYVAL ip AS IPaddress PTR, BYVAL Port AS INTEGER=80) AS TCPsocket
DECLARE FUNCTION SDLNet_TCP_Recv (BYVAL sock AS TCPsocket, BYVAL DATA AS ANY PTR, BYVAL maxlen AS INTEGER) AS INTEGER
DECLARE FUNCTION SDLNet_TCP_Send (BYVAL sock AS TCPsocket, BYVAL DATA AS ANY PTR, BYVAL LEN AS INTEGER) AS INTEGER
DECLARE SUB SDLNet_TCP_Close (BYVAL sock AS TCPsocket)
DECLARE SUB SDLNet_Quit ()
END EXTERN
'----------------------------------------------------------------------------------------------------------------------------------------------------------'
'Standart COLOR: RGB(255, 163, 79);">HTTP Functions
CONST recv_timeout = 5 '100 seconds
CONST RECVBUFFLEN = 8192
CONST NEWLINE = !"\r\n"
CONST Referer = ""
DECLARE FUNCTION TCP_open (BYVAL hostname AS STRING, BYVAL Port AS INTEGER=80) AS TCPSocket
DECLARE FUNCTION TCP_http (BYVAL method AS STRING="GET", BYVAL Socket AS TCPSocket, BYVAL hostname AS STRING, BYVAL path AS STRING="") AS INTEGER
DECLARE FUNCTION TCP_recv (BYVAL socket AS TCPSocket) AS STRING
DECLARE FUNCTION TCP_close (BYVAL socket AS TCPSocket) AS INTEGER
'----------------------------------------------------------------------------------------------------------------------------------------------------------'
'****************************************************************
FUNCTION TCP_open (BYVAL hostname AS STRING, BYVAL Port AS INTEGER=80) AS TCPSocket
'****************************************************************
'' init
IF( SDLNet_Init <> 0 ) THEN
'PRINT "ERROR: SDLNet_Init failed"
RETURN 0
END IF
'' resolve
DIM ip AS IPAddress
DIM socket AS TCPSocket
IF( SDLNet_ResolveHost( @ip, hostname, Port ) <> 0 ) THEN
'PRINT "ERROR: SDLNet_ResolveHost failed"
RETURN 0
END IF
'' OPEN
socket = SDLNet_TCP_Open( @ip )
IF( socket = 0 ) THEN
'PRINT "ERROR: SDLNet_TCP_Open failed"
RETURN 0
END IF
RETURN socket
'****************************************************************
END FUNCTION 'TCP_open
'****************************************************************
'****************************************************************
FUNCTION TCP_http (BYVAL method AS STRING="GET", _
BYVAL Socket AS TCPSocket, _
BYVAL hostname AS STRING, _
BYVAL path AS STRING="") AS INTEGER
'****************************************************************
'' send COLOR: RGB(255, 163, 79);">HTTP request
DIM sendbuffer AS STRING
DIM MString AS STRING
SELECT CASE LCASE (method)
CASE "COLOR: RGB(255, 163, 79);>post"
MString="COLOR: RGB(255, 163, 79);>POST /"
CASE ELSE
MString="GET /"
END SELECT
SendBuffer= _
MString+path+" COLOR: RGB(255, 163, 79);>HTTP/1.1"+NEWLINE+ _
"Host: "+hostname+NEWLINE+ _
"Connection: CLOSE"+NEWLINE
IF MString="COLOR: RGB(255, 163, 79);>POST /" THEN SendBuffer+= _
"Accept-ENCODING: gzip"+NEWLINE
SendBuffer+= _
"Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5"+NEWLINE+ _
"Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3"+NEWLINE+ _
"Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7"+NEWLINE+ _
"User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4"+NEWLINE+ _
"Referer: "+Referer+NEWLINE
IF MString="COLOR: RGB(255, 163, 79);>POST /" THEN SendBuffer+= _
"Content-TYPE: application/x-www-form-urlencoded"+NEWLINE
SendBuffer+=NEWLINE
IF( SDLNet_TCP_Send( socket, STRPTR( sendbuffer ), LEN( sendbuffer ) ) < LEN( sendbuffer ) ) THEN
'PRINT "ERROR: SDLNet_TCP_Send failed"
RETURN -1
END IF
RETURN 0
'****************************************************************
END FUNCTION 'TCP_http
'****************************************************************
'****************************************************************
FUNCTION TCP_recv (BYVAL socket AS TCPSocket) AS STRING
'****************************************************************
DIM TimeOut AS SINGLE
DIM TimeOutX AS SINGLE
TimeOut=TIMER
'' receive til connection IS closed
DIM recvbuffer AS ZSTRING * RECVBUFFLEN+1
DIM recv_Buffer AS STRING
DIM bytes AS INTEGER
DO
IF TimeOutX>recv_TimeOut THEN EXIT DO
bytes = SDLNet_TCP_Recv( socket, STRPTR( recvbuffer ), RECVBUFFLEN )
IF( bytes <= 0 ) THEN
'SLEEP (100),1
EXIT DO
ELSE
timeout=TIMER
END IF
'' ADD the null-terminator
recvbuffer[bytes] = 0
'' PRINT it AS STRING
'PRINT recvbuffer;
recv_Buffer+=recvbuffer
TimeOutX=TIMER-TimeOut
LOOP WHILE INSTR(LCASE(recvbuffer),"</html>")=0
RETURN recv_Buffer
'****************************************************************
END FUNCTION 'TCP_recv
'****************************************************************
'****************************************************************
FUNCTION TCP_close (BYVAL socket AS TCPSocket) AS INTEGER
'****************************************************************
'' CLOSE socket
SDLNet_TCP_Close( socket )
'' quit
SDLNet_Quit
RETURN 0
'****************************************************************
END FUNCTION 'TCP_close
'****************************************************************
'----------------------------------------------------------------------------------------------------------------------------------------------------------'
|
(Deine probiere ich gleich aus..) _________________ If hilfreicher_Beitrag then klick(location.here)
Klick |
|
Nach oben |
|
 |
Eternal_pain

Anmeldungsdatum: 08.08.2006 Beiträge: 1783 Wohnort: BW/KA
|
Verfasst am: 02.09.2007, 20:02 Titel: |
|
|
keine ahnung was Du mit dem ''Scheint wohl so, als ob er mit dem " COLOR: RGB(255, 163, 79);"> nicht klarkommen würde'' versucht hast... aber es heistt eigentlich Color RGB(wert,wert,wert)
dann evtl locate
und dann print  _________________
 |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
Verfasst am: 02.09.2007, 20:04 Titel: |
|
|
Der Orig. Code:
Code: | IF MString="COLOR: RGB(255, 163, 79);">POST /" THEN SendBuffer+= _
"Content-TYPE: application/x-www-form-urlencoded"+NEWLINE
|
Hmm
wird zu
Code: | IF MString="COLOR: RGB(255, 163, 79);>POST /" THEN SendBuffer+= _
"Content-TYPE: application/x-www-form-urlencoded"+NEWLINE
|
frisst der Compiler, und funzt.  _________________ If hilfreicher_Beitrag then klick(location.here)
Klick |
|
Nach oben |
|
 |
Eternal_pain

Anmeldungsdatum: 08.08.2006 Beiträge: 1783 Wohnort: BW/KA
|
Verfasst am: 02.09.2007, 20:13 Titel: |
|
|
das DAS funtioniert bezweifle ich Du veraenderst damit ja nur die Post anfrage zu irgendwas das der Server vermutlich nicht als Post anfrage verstehen wird... ausserdem ist es nur ein ausbaufaehiges skript zum testen.. ich hab damit zB meine ganzen Wiki funktionen erstellnt, des Recv allerdings hab ich in jeder funktion individuell und extra angepasst.. damitt je nachdem was mit den Daten geschehen soll es gleich weiter verarbeitet wird... wenn Du also etwas in anderer Farbe gestalten willst, schreib Dir eine extra funktion mit der recv routine... diese recv-'Basis'-Funktion ist nur zum schnellen testen geeignet, weniger zum weiterverarbeiten.... _________________
 |
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|