Jak utworzyć bazę danych z poziomu php w utf-8 ?

0

Tworze baze dacnych z poziomu php i pomimo ustawionego kodowania w projekcie (ustawienia w eclipse) i w sekcji meta tworzona baza jest w latin1, na stronie głównej php admina mam ustawione utf-8_polish_ci. Nie mam pojecia c robić. Pozdrawiam Tomek

0

kod?

0

np.
$create1 = mysql_query("CREATE DATABASE IF NOT EXISTS sklep") or
die ("Sprawdz polaczenie z serwerem");

mysql_select_db("sklep") or
die(mysql_error());

//utworz tabele uzytkownicy
$uzytkownicy = "CREATE TABLE IF NOT EXISTS uzytkownicy (
uzytkownik_id int(11) NOT NULL auto_increment,
imie varchar(255) NOT NULL,
nazwisko varchar(255) NOT NULL,
login varchar(255) NOT NULL,
haslo varchar(255) NOT NULL,
email varchar(255) NOT NULL,
miejscowosc varchar(255) NOT NULL,
kod_pocztowy int(11) NOT NULL,
numer_domu int(11) NOT NULL,
ulica varchar(255) NOT NULL,
PRIMARY KEY (uzytkownik_id)

)";

$results = mysql_query($uzytkownicy)
or die(mysql_error());

0

Pięknie, a teraz wejdź w phpMyAdmin i dodaj nową bazę wybierając kodowanie i zobacz czym to się różni od Twojego zapytania :)

0

Stworzylem wybierajac kodowanie, ale z poziomu php nie mam takiej opcji albo wlasnie jej szukam, nie da sie wygenerowac kodu php przynajmnij w moim php adminie, jak zmieniam jakas wartosc w tabelach to jest taka opcja ale przy tworzeniu bazy nie ma takiej mozliwosci. Przepraszam za być może brak elementarnej wiedzy ale jak wiesz co jest grane to jak do matola bym prosil :p :)

0

Hm, nowy phpMyAdmin jest idiotyczny, ale żeby zapytania nie wyświetlał? Nie sądzę.
Tak to wygląda u mnie (mam starego PMA): http://prntscr.com/6mxsy/direct

Ale pod magicznym hasełkiem ustawić kodowanie podczas tworzenia bazy w Google na pierwszym miejscu jest ten link (klik), w którym wszystko o kodowaniu na stronie jest zapisane, w tym o zabawach z MySQL.

0

Dzięki wielkie, powaznie nie wyswietla kodu tworzac baze, dopiero otworzylem okno zapyan sql i wpisalem wg twojgo pma i wtedy sie pojawilo po utworzniu bazy, ale kiedy tworzylem baze w zakladce bazy danch na gł. stronie pma nie wyswietla kodu - idiotyczne do potegi skoro w poprzednich wersjach dziala. W każdym razie serdecznie dziękuję ! Pozdrawiam Tomek :)

JEDNAK DALEJ MAM PROBLEM

wg tego ci mi podpowiedziales mam kod :

mysql_select_db($klucz) or
die(mysql_error());

mysql_query("SET NAMES 'utf8'");
mysql_query('SET character_set_connection=utf8');
mysql_query('SET character_set_client=utf8');
mysql_query('SET character_set_results=utf8');

//$sql = "CREATE DATABASE fdfgds DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci"; - kod z pma

$zakupy = "CREATE TABLE zakupy IF NOT EXISTS DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci (
id_zakupu int(11) NOT NULL auto_increment,
nazwa varchar(255) NOT NULL,
id_przedmiotu int(11) NOT NULL,
PRIMARY KEY (id_zakupu)
)";

Wywala taki blad :
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IF NOT EXISTS DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci ( id_zakupu i' at line 1

Gdybys mogl mi jeszcze pomoc bylbym bardzo wdzieczny :)

0

I znowu odsyłam do phpMyAdmina:
http://prntscr.com/6mzv8/direct

(Ciebie może nie interesować ENGINE, albo możesz chcieć użyć innego silnika - czytaj dokumentację MySQL - w niej w sumie też znalazłbyś informację o kodowaniu, choć łatwiej pewnie przerżnąć z PMA ;))

Te bym sobie odpuścił, raczej się nie przydadzą.

mysql_query('SET character_set_connection=utf8');
mysql_query('SET character_set_client=utf8');
mysql_query('SET character_set_results=utf8');
0

Dzieki wielkie, dalem rade dodając

$zakupy = "CREATE TABLE IF NOT EXISTS zakupy (
id_zakupu int(11) NOT NULL auto_increment,
nazwa varchar(255) NOT NULL,
id_przedmiotu int(11) NOT NULL,
PRIMARY KEY (id_zakupu)
) ----------------->ENGINE = INNODB CHARACTER SET utf8 COLLATE utf8_polish_ci"<-----------------;

Nauka z manuala to chyba za wysoka szkola jazdy w stosunku do takiego amatora jak ja, bardziej widze nauke z ksiazek ;(

PMA nie wyswietla mi kodu, co za unowoczesnienie w stosunku do poprzednich wersji.
Mam PMA wraz z pakietem xampp, gdybym chcial przejsc na starsza wersje pma, musialbym zainstalowac starsza wersje xampp-a czy mogę jakos zainstalowac samo pma ? Dzieki jeszcze raz za wszystko :)

0

wpisz "phpmyadmin" w google, i gdzies tam znajdziesz do pobrania.
nie wiem od której wersji dorobili tą debilną skórkę i zapytania ajaxowe, ale stosunkowo niedawno.

0

Dzięki i wszystkiego dobrego :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1