Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][SQL][PHP]Przenoszenie danych z bazy
Less
post 21.06.2016, 09:14:16
Post #1





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 4.06.2007

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


Witam,
mam taki problem,

udało mi się zrobić z pdfa plik exela, a potem z tego przy pomocy makr zrobiłem tablicę 2 wymiarową dla php i z niej przy pomocy pętli i sql wrzucam dane do bazy, ale...

teksty w tablicy mają odpowiednie znaki: ł, ą, a te wrzucone za pomocą SQL już nie, mają l i a...


nie to to mi chodziło,

co trzeba zrobić, aby i w bazie były polskie znaki?

baza jest komercyjna... kod php piszę w Dreamweavarze...

Ten post edytował Less 21.06.2016, 09:26:15


--------------------
Less
:)
Go to the top of the page
+Quote Post
emstawicki
post 21.06.2016, 11:11:59
Post #2





Grupa: Zarejestrowani
Postów: 207
Pomógł: 40
Dołączył: 2.06.2016
Skąd: Olsztyn

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


Należy ustawić takie samo kodowanie danych wejściowych, skryptu oraz bazy danych. Najlepiej utf-8.


--------------------
Jak w Olsztynie, to tylko w Revolver Rock Cafe .
Sprawdź postęp propagacji DNS
Go to the top of the page
+Quote Post
Less
post 22.06.2016, 09:08:14
Post #3





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 4.06.2007

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


Cytat(emstawicki @ 21.06.2016, 12:11:59 ) *
Należy ustawić takie samo kodowanie danych wejściowych, skryptu oraz bazy danych. Najlepiej utf-8.


Ok.
W bazie jest: utf8_general_ci

W Dreamweavarze (gdzie mam skrypt) ustawiłem UTF-8 i (a że to ustawienie tego nie zrobiło, może dlatego, że nie miałem w krypcie znaczników html, zrobiłem wpis:
  1. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">


to nie pomogło, wyszły "krzaczki", więc potem użyłem funkcji:
  1. $tekst = iconv('Windows-1252', 'UTF-8', $teksty[$i][1]);


w skrypcie, 'Windows-1252' bo skopiowane było z Exela...

i po tych zabiegach wyszły inne krzaczki...

co robię nie tak?

Nadal jest złe kodowanie, czego, jak sprawdzić jakie, jak je zminić i co zmienić? Ratunku smile.gif

Ten post edytował Less 22.06.2016, 09:11:33


--------------------
Less
:)
Go to the top of the page
+Quote Post
viking
post 22.06.2016, 09:13:41
Post #4





Grupa: Zarejestrowani
Postów: 6 378
Pomógł: 1116
Dołączył: 30.08.2006

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


Przy połączeniu z bazą SET NAMES ...


--------------------
Go to the top of the page
+Quote Post
Less
post 22.06.2016, 09:29:52
Post #5





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 4.06.2007

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


Cytat(viking @ 22.06.2016, 10:13:41 ) *
Przy połączeniu z bazą SET NAMES ...


Dzięki.
Widzę kilka metod...

czy tak:

metoda 1:
  1. $pol1 = mysql_connect($host1, $user1, $pass1) or
  2. die('Nie można się połączyć');
  3. mysql_set_charset('utf8', $pol1);



metoda 2:
  1. mysql_query("SET character_set_results = 'utf8', character_set_client = 'utf8', character_set_connection = 'utf8', character_set_database = 'utf8', character_set_server = 'utf8'", $conn);


Metoda 3:
  1. $mysqli = mysqli_connect( ... );
  2. mysqli_query( $mysqli, 'SET NAMES "utf8" COLLATE "utf8_general_ci"' );


?

Ten post edytował Less 22.06.2016, 09:32:18


--------------------
Less
:)
Go to the top of the page
+Quote Post
viking
post 22.06.2016, 09:32:05
Post #6





Grupa: Zarejestrowani
Postów: 6 378
Pomógł: 1116
Dołączył: 30.08.2006

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


Tak, oprócz tego że nie powinieneś używać mysql tylko mysqli albo pdo.


--------------------
Go to the top of the page
+Quote Post
Less
post 22.06.2016, 09:33:06
Post #7





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 4.06.2007

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


Cytat(viking @ 22.06.2016, 10:32:05 ) *
Tak, oprócz tego że nie powinieneś używać mysql tylko mysqli albo pdo.


czyli metoda 1. hm... dzieki, poczytam, co to...


--------------------
Less
:)
Go to the top of the page
+Quote Post
viking
post 22.06.2016, 10:05:00
Post #8





Grupa: Zarejestrowani
Postów: 6 378
Pomógł: 1116
Dołączył: 30.08.2006

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


Masz wytłumaczone dlaczego http://php.net/manual/pl/mysqlinfo.concepts.charset.php
Metoda 1 ale z mysqli.


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 16.06.2025 - 19:21