Skocz do zawartości

Wywoływanie funkcji na stronie przez GM


Markuz

Rekomendowane odpowiedzi

Witam, czy jest możliwość aby dzięki GM wywołać jakąś funkcje na stronie?

Taki przykład w jaki sposób to można zrobić ( ale nie wiem jak to zapisać w GM :P )

 

GM "wchodzi" na stronke www.stronka.pl/?funkcja=true

 

dzięki temu na stronce włączymy jakąś funkcję. noi np. ?funkcja=false , wtedy funkcja się wyłączy. Lecz chodzi mi głównie jak zrobić to "wchodzenie" , nie aby nam się ta stronka otwierała poprzez IE itp. tylko sama z siebie na nią wchodziła :) heh

Odnośnik do komentarza
Udostępnij na innych stronach

Nie dobijaj mnie. =P

 

Proszę, prosty przykład w 39DLL:

GML
host = 'strona.pl';

file = 'skrypt.php?argument=wartosc';

 

request = tcpconnect( host, 80, 0 );

if( request )

{

setformat( request, 2 );

 

clearbuffer();

writechars( 'GET /' + file + ' HTTP/1.0' + chr( 13 ) + chr( 10 ) );

writechars( 'Connection: close' + chr( 13 ) + chr( 10 ) );

writechars( chr( 13 ) + chr( 10 ) );

sendmessage( request );

 

setformat( request, 1, ' ' );

 

clearbuffer();

length = receivemessage( request );

if( length )

{

if( string_pos( 'HTTP/', readchars( length - 1 ) ) == 1 )

{

length = receivemessage( request );

if( length )

{

code = readchars( length - 1 );

switch( code )

{

case '200':

show_message( code + ': Ok.' );

break;

 

case '404':

show_message( code + ': Strona nie zostala odnaleziona.' );

break;

 

default:

show_message( code + ': Nieokreslony kod odpowiedzi serwera.' );

}

 

}

else

show_message( 'Nie ustalono czy akcja sie powiodla. Brak odpowiedzi serwera.' );

}

else

show_message( 'Nie ustalono czy akcja sie powiodla. Nieoczekiwana odpowiedz serwera.' );

}

else

show_message( 'Nie ustalono czy akcja sie powiodla. Brak odpowiedzi serwera.' );

 

closesocket( request );

}

else

show_message( 'Nie mozna bylo sie polaczyc z serwerem.' );

Odnośnik do komentarza
Udostępnij na innych stronach

A co Ty chcesz jeszcze wysyłać? Plik? :)

 

GML
host = 'strona.pl';

file = 'skrypt.php';

data = 'argument1=wartosc1&argument2=wartosc2';

 

request = tcpconnect( host, 80, 0 );

if( request )

{

setformat( request, 2 );

 

clearbuffer();

writechars( 'POST /' + file + ' HTTP/1.0' + chr( 13 ) + chr( 10 ) );

writechars( 'Connection: close' + chr( 13 ) + chr( 10 ) );

writechars( 'Content-Length: ' + string( string_length( data ) ) + chr( 13 ) + chr( 10 ) );

writechars( 'Content-Type: application/x-www-form-urlencoded' + chr( 13 ) + chr( 10 ) );

writechars( chr( 13 ) + chr( 10 ) );

writechars( data );

sendmessage( request );

 

setformat( request, 1, ' ' );

 

clearbuffer();

length = receivemessage( request );

if( length )

{

if( string_pos( 'HTTP/', readchars( length - 1 ) ) == 1 )

{

length = receivemessage( request );

if( length )

{

code = readchars( length - 1 );

switch( code )

{

case '200':

show_message( code + ': Ok.' );

break;

 

case '404':

show_message( code + ': Strona nie zostala odnaleziona.' );

break;

 

default:

show_message( code + ': Nieokreslony kod odpowiedzi serwera.' );

}

 

}

else

show_message( 'Nie ustalono czy akcja sie powiodla. Brak odpowiedzi serwera.' );

}

else

show_message( 'Nie ustalono czy akcja sie powiodla. Nieoczekiwana odpowiedz serwera.' );

}

else

show_message( 'Nie ustalono czy akcja sie powiodla. Brak odpowiedzi serwera.' );

 

closesocket( request );

}

else

show_message( 'Nie mozna bylo sie polaczyc z serwerem.' );

Proszę, w zależności co wysyłasz zmieniasz content-type.
Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...