Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [kodowanie][advAjax] Wstrzykniecie do diva
Forum PHP.pl > Forum > XML, AJAX > AJAX
bim2
Mam oto taki sobie kod ajax:
  1. function shout()
  2. {
  3. advAJAX.post({
  4. url: "index.php?site=shout&ajax=ok&xcmd=view",
  5. onSuccess :
  6. function(obj) {
  7. document.getElementById('shout').innerHTML = obj.responseText;
  8. },
  9. onError :
  10. function(obj) { alert("Error: " + obj.status); }
  11. });
  12.  
  13. setTimeout("shout()",10000);
  14.  
  15. }

I taki oto sobie kodzik php:
  1. <?php
  2. case 'add':
  3. if($_POST['text']=='')
  4. {
  5. echo 'Podaj tekst';
  6. }
  7. $text=addslashes($_POST['text']);
  8.  
  9. if(zalogowany())
  10. {
  11. $q="INSERT INTO $tbl[shout] SET shout_tekst='$text', shout_time='".time()."', shout_email='user', shout_autor='$session_n', shout_ip='$_SERVER[REMOTE_ADDR]'";
  12. $q=$db->query($q);
  13. punkty::plus('shout', $config['pkt_shout']);
  14. if(!$q) { $error='Błąd w zapytaniu'.mysql_error(); }
  15. } elseif($shout_q AND !zalogowany())
  16. {
  17. $autor=addslashes($_POST['nick']);
  18. if(!preg_match("/(.*)@(.*).(.*)/" , $_POST['email']))
  19. {
  20. $error='Z%B3y email';
  21. $email=addslashes($_POST['email']);
  22. }
  23. if($error=='')
  24. {
  25. $q="INSERT INTO $tbl[shout] SET shout_tekst='$text', shout_time='".time()."', shout_email='$email', shout_autor='$autor', shout_ip='$_SERVER[REMOTE_ADDR]'";
  26. $q=$db->query($q);
  27. if(!$q) { $error='Błąd w zapytaniu'.mysql_error(); }
  28. }
  29. } elseif(!$shout_q AND !zalogowany())
  30. {
  31. $error='Goście nie moga pisać';
  32. }
  33.  
  34.  
  35. if($error!='')
  36. {
  37. echo $error;
  38. }
  39. else
  40. {
  41. echo 'Wpis dodany pomyślnie!';
  42. }
  43. break;
  44. ?>

I to co zwraca case 'add': czyli np Zły email to w divie pokazuje mi się Z?y email. Nie mam funkcji iconv ani mb_convert a musze mieć polskie liery Co poradzicie? Prosze was pomóżcie. Mam to samo z ankietg± ;(

Strona: http://nfscg.info/x-trim3/

Pozdrawia Bim!

EDIT: Ok, poradziłem sobie. Zamieszczam funkcje na Gotowe Klasy i funkcje ;P
mariuszn3
Czy plik jaki wysyłasz ajaxem niesie ze sobą informację w jakim kodowaniu jest zapisany?
bim2
Nie, ajax odbiera utf-8 ale ja w pliku nie mam żadnych polskich literek a kod html ;P
mariuszn3
ajax przyjmuje, że to utf-8, bo takie jest domyślne kodowanie XML'a.. i takie przyjmuje kodowanie, gdy nie dostaje żadnej informacji o kodowaniu. Gdybyś wysłał mu nagłówek, że jest to iso-8859-2 to tak też by to odebrał i 'zły' by pozostało 'zły' zakładając, że w kodowaniu iso masz zapisany dokument.
lordziqqq
A wystarczy :

  1. <?php
  2. header("Content-Type: text/html; charset=iso-8859-2");
  3. ?>


Wiem bo dziś też miałem z tym problema tongue.gif
bim2
Myslisz że nie prubowałem ;P, własnie że probowałe i nie działało smile.gif

ohmy.gif ohmy.gif ohmy.gif ohmy.gif ohmy.gif ohmy.gif
Zadziałało ;o, ja wysyłałem header utf-8 (to zrozumiałem z postów na forum) ;o, Dzięx ;P
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.