Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [jQuery] Wysyłanie danych w AJAXie, Metodą POST
decha-design
post
Post #1





Grupa: Zarejestrowani
Postów: 415
Pomógł: 46
Dołączył: 26.05.2007
Skąd: Sandomierz

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


Witam was wszystkich,

Cóż, mam wybitny problem z krzakami wysyłanymi przy pomocy jQuery, a dokładnie ajaxem do skryptu i wrzucenie tego do bazy lub pliku, jeden piernik ...

Próbowałem już chyba wszystkiego, szukałem tutaj na forum, znalazłem odpowiedź ale niestety nie działa. Zrobiłem tak:

Początek, zaraz za <body>:
  1. <script type="text/javascript">
  2.  
  3. $.ajaxSetup({
  4. type: "POST",
  5. contentType: "application/x-www-form-urlencoded; charset=iso-8859-2"
  6. });
  7.  


Wykonanie akcji:
  1. $.post("url.php", { name: value, id: id } );


No i sam skrypt php:
  1. <?php
  2. header('Content-Type: text/html; charset=iso-8859-2');
  3.  
  4. $_POST['name'] = (string)$_POST['name'];
  5. $_POST['id'] = (int)$_POST['id'];
  6.  
  7. $_POST['name'] = mysql_real_escape_string($_POST['name']);
  8. $_POST['id'] = mysql_real_escape_string($_POST['id']);
  9.  
  10. $_POST['name'] = addslashes($_POST['name']);
  11. $_POST['id'] = addslashes($_POST['id']);
  12.  
  13. $db -> query("SET NAMES `latin2`");
  14.  
  15. $db -> query("UPDATE `".$prefix."categories` SET `name`='".$_POST['name']."' WHERE `id`='".$_POST['id']."'");
  16. ?>


Żadna funkcja filtrująca nie robi problemu (raczej), bo wyłączyłem wszystkie na próbę - efekt ten sam ...

Kompletnie nie wiem jak to naprawić. Owszem mogę zmienić na UTF-8, ale za dużo roboty, bo pliki z tekstem mam już w iso-8859-2 i jakoś bardziej mi leży to kodowanie. Dodatkowo mogę wspomnieć, że błąd jest na bank, 100% w jQuery, ponieważ dodawanie wpisu do bazy normalną metodą, po prostu POSTem działa bez najmniejszych problemów ...

btw. kodowanie tabeli bodajże latin2_general_ci ..

Pzdr.
Go to the top of the page
+Quote Post
paziek
post
Post #2





Grupa: Zarejestrowani
Postów: 207
Pomógł: 25
Dołączył: 16.11.2006

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


plik ze skryptem oraz z formularzem są w iso-8859-2?
Spróbuj po stronie PHP
  1. <?php
  2. $_POST['name']=inconv('utf-8','iso-8859-2',$_POST['name']);
  3. ?>
Go to the top of the page
+Quote Post
decha-design
post
Post #3





Grupa: Zarejestrowani
Postów: 415
Pomógł: 46
Dołączył: 26.05.2007
Skąd: Sandomierz

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


Wiem, tak też zrobiłem ... ale nie koniecznie na każdym serwerze może być obsługa iconv .. chyba że jest standardowo ...

Może wie ktoś jak zrobić polskie znaki bez iconv?
Go to the top of the page
+Quote Post
paziek
post
Post #4





Grupa: Zarejestrowani
Postów: 207
Pomógł: 25
Dołączył: 16.11.2006

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


Jest jeszcze recode, mb_convert_encoding i może coś jeszcze.
Zazwyczaj będziesz miał je wszystkie, a powinno być przynajmniej jedno z nich.. chyba, że masz gównianego hosta jakiegoś.

Nie da się jakoś zamienić krzaczków utf-8 na iso-8859-2 za pomocą (np.) str_replace i tym podobnym. Chociaż mogę sie mylić..
Go to the top of the page
+Quote Post
decha-design
post
Post #5





Grupa: Zarejestrowani
Postów: 415
Pomógł: 46
Dołączył: 26.05.2007
Skąd: Sandomierz

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


Da się, bo przy utf-8 na iso są krzaki a nie (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ... więc bez problemu, ale po co? =)

No cóż, widać że nic z tego ... zostajemy przy iconv. Hosta mam na netlook, bardzo dobry ale regulamin jest straszny więc nie wiadomo czy będzie to tam dzialać - nie sprawdzałem bo pisze skrypt na localhoście ...
Go to the top of the page
+Quote Post
paziek
post
Post #6





Grupa: Zarejestrowani
Postów: 207
Pomógł: 25
Dołączył: 16.11.2006

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


Tak, ale te krzaczki się powtarzają dla różnych odpowiedników w polskim języku.
Np. masz krzaczek X dla ą oraż ł.
Skąd będziesz wiedział na co zamienić?

Tak jak mówiłem, funkcje do konwersji w PHP to raczej standard (aczkolwiek da się skompilować bez ich obsługi), także nie masz się co martwić. Każdy host, który ich nie udostępnia, jest niepoważny :<
Go to the top of the page
+Quote Post
decha-design
post
Post #7





Grupa: Zarejestrowani
Postów: 415
Pomógł: 46
Dołączył: 26.05.2007
Skąd: Sandomierz

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


No to tyle w tej kwestii =) Wielkie dzięki za poradę / wytłumaczenie / opisanie hostów ... niepotrzebne skreślić.

Najwyżej w instalatorze zrobię (jeżeli w ogóle będzie) sprawdzanie bibliotek albo cuś ...

jeszcze raz dzięki ...
Go to the top of the page
+Quote Post

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: 4.10.2025 - 01:06