Per GET Daten übergeben
-
Abend,
ich habe auf meinem Space ne PHP Datei die bestimmte Daten per GET benötigt....
Wie kann ich den dem Script die Daten übergeben? Also wie muss ich des in C anstellen?
-
Bei GET hängst du die Daten einfach als Parameter an die URL an. Ich würde dir aber empfehlen die Daten vorher zu enkodieren (z.B. per Base64 - sonst gibts böse Überraschungen) - falls es benutzerdefinierte Zeichenketten sind.
Übergeben wird bei der Anfrage an den Server:
GET /meineUrl?variable=Meine_Daten_Hieroder als Code...
char buffer[1024]; snprintf(buffer, sizeof(buffer), "GET /meinscript.php?variable=%s\r\nHost: meinhost.de\r\n\r\n", daten_hier); write(socket, buffer, sizeof(buffer));
-
Habe jetzt mal die HttpOpenRequest() Funktion gefunden.
Wäre diese Funktion nicht sinnvoller anstatt das alles mit Sockets zu machen?
-
Habe es jetzt mal so probiert:
char server[] = "meinserver.de"; char file[] = "send.php"; sprintf(buf,"GET /send.php?file=test1.txt&daten=test\r\n HTTP/1.1\r\nAccept: */*\r\nUser-Agent: Program\r\nHost: %s\r\nConnection: Keep-Alive\r\n\r\n",file,server);
-
Sry meinte so:
char server[] = "meinserver.de"; char file[] = "send.php"; sprintf(buf,"GET /%s?file=test1.txt&daten=test\r\n HTTP/1.1\r\nAccept: */*\r\nUser-Agent: Program\r\nHost: %s\r\nConnection: Keep-Alive\r\n\r\n",file,server);
-
Habe es jetzt mal so probiert:
int main() { HINTERNET h,hConnect,hReq; char server[] = "meinserver.de"; h = InternetOpen("Program",INTERNET_OPEN_TYPE_PRECONFIG,NULL,NULL,0); if(h == 0) return 1; hConnect = InternetConnect(h,server,INTERNET_DEFAULT_HTTP_PORT,NULL,NULL,INTERNET_SERVICE_HTTP,0,0); if(hConnect == 0) return 1; hReq = HttpOpenRequest(hConnect,NULL,"send.php?file=test1.txt&daten=TEST",NULL,NULL,NULL,0,0); if(hReq == 0) return 1;wo ist in dem Code mein Fehler?