Skocz do zawartości
Krugerz

Odbieranie danych w php z serwera samp

Rekomendowane odpowiedzi

Witajcie, mam problem otóż piszę skrypt, który wysyła dane z czatu serwera sa-mp za pomocą skryptu na serwerze po prostu używam funkcji HTTP() do pliku php zapisującego wiadomość w txt. Wszystko działa gdy w stringu nie ma polskich znaków.

Na serwerze wysyłam taką wiadomość: 

Ę = E, ę = e, Ó = O, ó = o, Ą = A, ą = a, Ś = S, ś = s, Ł = L, ł = l, Ż = Z, ż = z, Ź = Z, Ć = C, ć = c, Ń = N, ń = n

A w php odbiera taką:

Ę = E, ę = e, Ó = O, ó = o, Ľ = A, š = a,  = S,  = s, Ł = L, ł = l, Ż = Z, ż = z,  = Z, Ć = C, ć = c, Ń = N, ń = n   

Kod wygląda mniej więcej tak:

<?php
header('Content-Type: text/html; charset=UTF-8');
mb_internal_encoding('utf-8');

if(isset($_POST['httptext'])) {
	$text =	$_POST['httptext'];  //Tu jest ten text odbierany z serwera
	file_put_contents("test.txt", $text);
}

?>


Wie ktoś jak to naprawić, żeby wszystkie znaki były w utf8? 

Edytowane przez Krugerz

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Po testowałem i wynik jest taki:

PHP:

<?php
	header('Content-Type: text/html; charset=UTF-8');
	mb_internal_encoding('utf-8');

	if(isset($_POST['httptext'])) {
		$text =	$_POST['httptext'];  //Tu jest ten text odbierany z serwera
		file_put_contents("test.txt", iconv("Windows-1250", "UTF-8", $text));
	}
	echo "ok";
?>

PAWN:

#include <a_samp>
#include <a_http>

main() {
	new post[512] = {
	    "httptext=ąćęłńóśóżź"
	};


    HTTP(0, HTTP_POST, "skystork3.pl/samp.php", post, "HttpResponse");



	return 0;
}

forward HttpResponse(index, response_code, data[]);
public HttpResponse(index, response_code, data[]) {

	printf(
		"index: %d\nresponse_code: %d\ndata: %s",
	    index, response_code, data
	);


	return 0;
}

Działa prawidłowo, plik http://skystork3.pl/test.txt ma zawartość kodowaną w utf-8

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×