Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]Polskie znaki w bazie
Forum PHP.pl > Forum > Przedszkole
Ikky
Witam

Robie strone w trzech językach (polski, angielski, francuski) więc koniecznie musi być w UTF.
Dopoki tekst jest w pliku php nie ma zadnych krzaczków wiec problem lezy po strony bazy.


Gdy próbuje zmienić character set dla bazy to mam taki błąd:

Błąd
zapytanie SQL:

ALTER DATABASE `baza` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci

MySQL zwrócił komunikat:

#1044 - Access denied for user 'baza'@'%' to database 'baza'


metoda porównywania napisów dla tabeli na pewno: utf8_unicode_ci

a i jeszce w tym artykule z pierwszej strony było napisane żeby dodać SET NAMES do zapytania w php jednak nie mam pojęcia jak to zrobić mam taki kod:

$sql = "SELECT * FROM `translations` WHERE `id`= '1' ";
$result = @mysql_query($sql, $polaczenie) or die("brak odpowiedzi z zapytania");
while ($row = mysql_fetch_array($result))
$tekst = $row['pl'];
Darti
Jak się łączysz z bazą danych ?
Ikky
  1. <?php
  2. define(DB_HOST,"d.fd.d.pl");
  3. define(DB_USER,"d_d");
  4. define(DB_PASS,"d");                
  5. define(DB_NAME,"d_dd");        
  6. $polaczenie = mysql_connect(DB_HOST,DB_USER,DB_PASS) or die("Fail");
  7. $baza = mysql_select_db(DB_NAME, $polaczenie) or die("Baza fail");
  8.  
  9. $sql = "SELECT * FROM `translations` WHERE `id`= '1' ";
  10. $result = @mysql_query($sql, $polaczenie)    or die("brak odpowiedzi z zapytania");
  11. while ($row = mysql_fetch_array($result))
  12. $cos = $row['pl'];
  13. ?>
Darti
nie masz uprawnień do poleceń ALTER dla bazy 'baza'
i popraw kod tak:
  1. <?php
  2. define(DB_HOST,"d.fd.d.pl");
  3. define(DB_USER,"d_d");
  4. define(DB_PASS,"d");                
  5. define(DB_NAME,"d_dd");        
  6. $polaczenie = mysql_connect(DB_HOST,DB_USER,DB_PASS) or die("Fail");
  7. $baza = mysql_select_db(DB_NAME, $polaczenie) or die("Baza fail");
  8.  
  9. @mysql_query('SET NAMES UTF8', $polaczenie)    or die("nie mogę zrobić SET NAMES :/");
  10.  
  11. $sql = "SELECT * FROM `translations` WHERE `id`= '1' ";
  12. $result = @mysql_query($sql, $polaczenie)    or die("brak odpowiedzi z zapytania");
  13. ?>
Ikky
set names załatwiło sprawe smile.gif
dzięki bardzo za pomoc
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.