witam potrzebuję kod który wysyła dane metodą GET skrypt na stronie juz mam z góry dziękuję . Mój program miałby za zadanie wysyłać dane takie jak : info, game, serwer
link dodający te dane wygląda w ten sposób : www.strona.pl/skrypt.php?info=siemka&game=gta&serwer=jakisserwer
z góry dziękuję za pomoc :)
Jeśli metodą GET to raczej pobieranie, a nie wysyłanie. Wysyłać można metodą POST. Co do przykładu to przecież pakiet Indy ma w archiwum dokumentację oraz gotowe dema. Skorzystaj z tego.
No to wysyłanie POSTEM chodzi o to linkowanie, nie mam żadnych przykładów pobrałem jakieś smieszne indy wgl.. nie mogłem znaleźć dobrego działającego albo źle instalowałem mógłbyktoś podać działający link do instalki indy ? obojętnie jaka wersja byle było by te idhttp
Zarowno GET jak i POST sluza do wysylania z paramtrami.
a co do IdHTTP.Get to sprawa jest inna.
Dobra więc zainstalowałem indy i mam wszystko chyba co potrzeba teraz mam tylko problem z tym skryptem piszecie ze postem musi byc ja mam w skrypcie php cos takiego :
$login = ($_GET['login']);
Czyli GET i normalnie jak wpisuje w linku cos.php?login=asd to działa i chodzi mi o wysłanie takich danych przez delphi może ktoś podać jakiś poradnik ??
var
HTTP:TidHTTP;
begin
HTTP := TidHTTP.Create(Form1);
try
HTTP.Get( Format('http://mojastrona.pl/plik.php?login=%s', ['asd']) ); //1
finally
HTTP.Free;
end;
end;
Jeżeli postawisz komponent TidHTTP na formie to wystarczy tylko linijka oznaczona jako //1
.
wyskakuje error i pokazuje tą linijke w pliku idhttp
raise EIdHTTPProtocolException.CreateError(Response.ResponseCode, FHTTP.ResponseText, LRespStream.DataString);
No wybacz ale 403 to dostęp zabroniony więc albo coś robisz źle (nieprawidłowy adres) albo po prostu nie masz dostępu do tej strony zobacz czy w przeglądarce si wyświetla strona z takim adresem..
dobra juz działa dałem w user agent : Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.2.4) Gecko/20100611 Firefox/3.6.4 ( .NET CLR 3.5.30729)
Teraz mam tylko prośbę jedną mógłby ktoś przerobić mi ten skrypt :
var
HTTP:TidHTTP;
begin
HTTP := TidHTTP.Create(Form1);
try
HTTP.Get( Format('http://mojastrona.pl/plik.php?login=%s', ['asd']) ); //1
finally
HTTP.Free;
end;
end;
Tak aby wysyłał takie dane : plik.php?login=%s&haslo=%s&haslo2=%s te 3 rzeczy tylko z pola edit1,2,3
Po pierwsze to nie skrypt po drugie to szczyt lenistwa:
HTTP.Get( Format('http://mojastrona.pl/plik.php?login=%0:s&haslo=%1:s&haslo2=%1:s', [Edit1.Text, Edit2.Text]) );
Przypuszczam że pole hasło2 to jest "powtórz hasło" dlatego zrobiłem na 2 pola Edit.