Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> ASCII i metoda GET, Wyłączyć zamiane znaków
Macok
post
Post #1





Grupa: Zarejestrowani
Postów: 100
Pomógł: 0
Dołączył: 31.08.2006

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


W jaki sposób wyłączyć zamiane kodów ascii, na znaki?
Chodzi mi oto, aby po wejściu na moją strone w ten sposób:
Kod
strona.pl/?code=napis%20napis
skrypt nie łapał tego jako "napis napis", tylko jako "napis%20napis"
Z góry dzięki za odpowiedź!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
GrayHat
post
Post #2





Grupa: Zarejestrowani
Postów: 566
Pomógł: 18
Dołączył: 23.08.2003
Skąd: Łomża

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


  1. <?php
  2. $code = str_replace(' ','%20',$_GET['code']);
  3. ?>


--------------------
*Note: No animals were killed durning the construction of this post.
Go to the top of the page
+Quote Post
Macok
post
Post #3





Grupa: Zarejestrowani
Postów: 100
Pomógł: 0
Dołączył: 31.08.2006

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


Nie oto chodziło :PProblem w tym, że musiałbym wtedy pozamieniać wszystkie znaki na ich kody ascii i gdyby ktoś wszedł o tak:
Kod
strona.pl/?code=napis
to nie widziałbym "napis" tylko kody ASCII.Przykład:Jeżeli ktoś wpisze "strona.pl/?code=%28" to ma się wyświetlić %28 a jeżeli wpisze "strona.pl/?code=(" to ma wyświetlić sie '('.

@EDIT
Wyjaśnie inaczej bo widze, ze nie wszyscy zrozumieli.W zmiennej "code" przechowuję jakiś nick np. Macok.Problem w tym, że gdyby nick wyglądał tak: "Macok%28", to mój skrypt zinterpretowałby to jako "Macok(".

Ten post edytował Macok 8.09.2007, 15:10:20
Go to the top of the page
+Quote Post
Kicok
post
Post #4





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

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


rawurlencode" title="Zobacz w manualu PHP" target="_manual przed wstawieniem nicku do adresu strony


--------------------
"Sumienie mam czyste, bo nieużywane."
Go to the top of the page
+Quote Post
franki01
post
Post #5





Grupa: Zarejestrowani
Postów: 508
Pomógł: 75
Dołączył: 2.11.2005
Skąd: Bydgoszcz

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


_GET samo przetwarza sobie wszystkie dane urlencode(), wiec ja zawsze sam sobie budowalem tablice poprzez $_SERVER['QUERY_STRING'].

  1. <?php
  2. $array = explode("&", $_SERVER['QUESRY_STRING']);
  3.  
  4. $_GET = array();
  5.  
  6. foreach($array as $one) {
  7. $explode = explode("=", $one);
  8. if(preg_match("(([a-zA-Z0-9%_-]*)[([a-zA-Z0-9%_-]*)])", $explode[0], $tmp)) {
  9. $_GET[$tmp[1]][$tmp[2]] = $one[1];
  10. }
  11. else $_GET[$one[0]] = $one[1];
  12. }
  13. ?>


Nie jestem pewien czy dziala, ale logika podobna i pewnie duzo osob zrozumie smile.gif

Tutaj jest tylko jedno-poziomowa tablica, ale mozna dac wiecej...

I sie nie czepiac glupich bledow (ale poprawic owszem) bo pisalem na szybko biggrin.gif
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 21.08.2025 - 12:21