Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: shoutbox nie wyświetla polskich znaków. Dlaczego?[rozwiązany]
Forum PHP.pl > Forum > Bazy danych > MySQL
miccom
Witam serdecznie.
Proszę o pomoc.
Mam taki oto skrypt shoutboxa.

  1. <?php
  2. include('config.php');  
  3.  $name = 'miccom';
  4.  $message = $_POST['message'];
  5.  $ip = $_POST['ip'];
  6.  $maxlength = 150;
  7.  $date = date("m.d H:i");
  8. if ($_POST['submit']){
  9.    else if ($message == "") {
  10.      echo "<strong>Error: Nie ma wiadomości do wysłania.</strong>";
  11.    }
  12.    else if ($message > $maxlength) {
  13.      echo "<strong>Error: Wiadomosc jest za długa.</strong>";
  14.    }
  15.    else {
  16.       $query = "SELECT * FROM shoutbox ORDER BY ID DESC LIMIT 1";
  17.  $result = mysql_query($query);
  18.      while($result = mysql_fetch_array($result)) {
  19.    $nameb = $result['name'];
  20.    $data = $result['date'];
  21.    }
  22.    if($nameb==$name AND $date==$data){
  23.      $alert="Ochrona anty! Aby napisać posta pod swoim postem odczekaj 1 min.";
  24.    }else{  
  25.        
  26.      mysql_query("INSERT INTO shoutbox (name,message,date,ip) VALUES('$name','$message','$date','$ip')");
  27.    }
  28.    }
  29.    
  30.  $query = "SELECT * FROM shoutbox ORDER BY ID DESC LIMIT 20";
  31.  $result = mysql_query($query);
  32. }
  33. ?>
  34. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  35. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  36. <html xmlns="http://www.w3.org/1999/xhtml">
  37. <head>
  38.    <title>shoutbox</title>
  39. </head>
  40. <body>
  41.                <h3 class="firsth3">sHOUTBOX</h3>
  42.                <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
  43.    <strong>Wpisz wiadomość:</strong><br/>
  44.    <textarea name="message"></textarea><br/>
  45.    <input type="submit" name="submit" value="Wyślij!">
  46.    <input type="hidden" name="ip" value="<?php echo $_SERVER['REMOTE_ADDR']; ?>">
  47.  </form>
  48.        <?php
  49.    echo $alert;
  50.  echo "<ul>";
  51.  while($r = mysql_fetch_array($result)) {
  52.    $name = $r['name'];
  53.    $message = $r['message'];
  54.    $data = $r['date'];
  55.    
  56.    echo "<font size='1'>$data</font><strong> $name </strong> : $message<br />";
  57.  }
  58.  echo "</ul>";
  59.  ?>

a baza danych wyglada tak:
  1. CREATE TABLE IF NOT EXISTS `shoutbox` (
  2. `id` int(10) NOT NULL,
  3. `name` varchar(100) collate utf8_unicode_ci DEFAULT NULL,
  4. `message` text collate utf8_unicode_ci,
  5. `date` varchar(15) collate utf8_unicode_ci DEFAULT NULL,
  6. `ip` varchar(15) collate utf8_unicode_ci DEFAULT NULL
  7. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;



Działa wyśmienicie-troche go przerobiłem, ale problem jest jeden.
NIE WYŚWIETLA ani nie dodaje do bazy danych polskich znaków ś ć ń itd.
Gdzie jest błąd?
Proszę o odpowiedź i pomoc.
Ive
1. http://wortal.php.pl/wortal/artykuly/pomys...e_znaki_a_mysql
2. http://forum.php.pl/index.php?showtopic=11...mp;#entry589167
3. http://forum.php.pl/index.php?showtopic=11...mp;#entry586696
patrzyłeś na te strony ?

[edit]
z tego co widzę, nie asmz kodowania w htmlu strony ustawionego. Spróbuj może dodać po prostu <meta> taga
miccom
Mam ustawione kodowanie, a wkleiłem najistotniejszy fragment kodu.
Problem leżał w pliku config.php!!
Tam miałem przed zapytaniami do bazy zmianę kodowania, a całkowicie o tym zapomniałem. Już jest dobrze.
Dziękuję za pomoc i odpowiedzi.
Pozdrawiam. miccom
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.