Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Odbieranie danych przez $_GET, Niecodzienny temat
xamrex
post
Post #1





Grupa: Zarejestrowani
Postów: 267
Pomógł: 1
Dołączył: 10.08.2007

Ostrzeżenie: (0%)
-----


Witam,
Czy jest możliwość przesłania danych, które nie sa znakami asci i zawierają znak & poprzez $_GET

Sprawa wygląda tak. Postawiłem stronę WWW - strona2.php
  1. <?php
  2.  
  3. $myfile = fopen("fota.txt", "w") or die("Unable to open file!");
  4. $txt = $_GET["data"];
  5. fwrite($myfile, $txt);
  6. fclose($myfile);
  7. ?>

I teraz jak wejdę na www.mojastrona.pl/strona2.php?data=123
to później jak wejdę na www.mojastrona.pl/fota.txt
to mam w niej zawartość 123.

Ale co jeśli chciałbym wysłać jakieś dane które nie są znakami ASCI oraz dodatkowo mogą zawierać znaki takie jak . ? &
Wtedy będzie to źle 'zrozumiane' przez serwer i jeśli chciałbym wysłać taką paczkę danych:
Tajne&dane to w pliku fota.txt będę miał tylko tajne
Da się jakoś sprawić, żeby znak & był ignorowany?

Generalnie posiadam moduł Wifi ESP8266, który można fajnie programować i który służy do łączenia się z internetem, i chciałbym wysłać nim dane, ale moga one zawierać znak &, więc musiałbym wymyślić coś innego.
Ktoś wie jak to rozwiązać?
EDIT:
Myślę, że można znaleść jakiś algorytm, który zakodowałbymi dane tak, żeby wynikiem były tylko znaki alfabetu. wtedy mógłbym to przesłać. Czy to dobry pomysł?

Ten post edytował xamrex 19.04.2018, 19:44:44
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
xamrex
post
Post #2





Grupa: Zarejestrowani
Postów: 267
Pomógł: 1
Dołączył: 10.08.2007

Ostrzeżenie: (0%)
-----


Hej.
Pomysł z base64 wydawał się świetny.
Myślałem,że już wszystko rozwiązane, ALE
bo zakodowaniu tego w base64 ( a nawet przed zakodowaniem) dane które chce przesłać mają ok 28kb.
Jak wysyłam je w polu adresu dostaję komunikat:
Request-URI Too Long
The requested URL's length exceeds the capacity limit for this server.

Wiem, że można zmienić ustawienia serwera ale na pewno na to administrator się nie zgodzi.
WIęc jedyne rozwiązanie któe widzę, to wysyłanie tych danych w paczkach:<

No chyba, że ma ktos jakis pomysł jeszcze?
Go to the top of the page
+Quote Post
lolo121
post
Post #3





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 28.09.2014

Ostrzeżenie: (0%)
-----


Cytat(xamrex @ 20.04.2018, 09:20:06 ) *
Hej.
Pomysł z base64 wydawał się świetny.
Myślałem,że już wszystko rozwiązane, ALE
bo zakodowaniu tego w base64 ( a nawet przed zakodowaniem) dane które chce przesłać mają ok 28kb.
Jak wysyłam je w polu adresu dostaję komunikat:
Request-URI Too Long
The requested URL's length exceeds the capacity limit for this server.

Wiem, że można zmienić ustawienia serwera ale na pewno na to administrator się nie zgodzi.
WIęc jedyne rozwiązanie któe widzę, to wysyłanie tych danych w paczkach:<

No chyba, że ma ktos jakis pomysł jeszcze?


zamiast & spróbuj w adres dać %26
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 5.10.2025 - 09:39