![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 715 Pomógł: 47 Dołączył: 5.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam , mam problem z polskimi znakami.PHP podczas wysyłania formularza wszystko parsuje na kod ASCII mimo że w nagłówkach mam deklaracje kodowania.Szukałem wszędzie i szukać będę dalej rozwiązania.Może to jest wina jakiegoś ustawienia w php.ini??Jest to dla mnie bardzo ważne ,gdyż w połączeni z bazą danych MYSQL nie zapisuje mi w rekordach polskich znaków.Nie uzywam żadnych funkcji typu htmlentities ,htmlspecialchars ponieważ polskie litery zapisywało mi w postaci Encji ale ,czytałem że to normalne.Problem jedynie w tym ,że kombinuje i wykombinować nie mogę dlaczego mimo deklaracji nagłówków używania przeróżnych funkcji typu ICONV nadal koduje mi w ASCII po wysłaniu formularza.
Moje ustawienia : The Apache HTTP Web Server Version 2.2 php-5.3.3 mysql-5.1.52 WindowsXP Home Może ktoś miał już taki problem?? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 715 Pomógł: 47 Dołączył: 5.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Połączenie z bazą
Kod header('Content-type: text/html; charset=UTF-8'); $link=mysql_connect('localhost','root','artur'); $charset = mysql_client_encoding($link); if ( $charset != 'utf8' ) { mysql_set_charset('utf8',$link); } $sql="CREATE DATABASE IF NOT EXISTS rejestr "; mysql_query($sql) or die(mysql_error()); mysql_select_db('rejestr',$link); $sql="CREATE TABLE IF NOT EXISTS rejstr( id int(4) NOT NULL auto_increment, nick varchar(30) NOT NULL , haslox varchar(32) NOT NULL , mails varchar(70) NOT NULL , PRIMARY KEY klucz1 (id)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci; "; mysql_query($sql) or die(mysql_error()); ?> Skrypt zapisujący do tabeli: Kod require_once 'connection.php'; $charset = mysql_client_encoding($link); echo "The current character set is: $charset\n"; mysql_query("SET NAMES utf8"); $r_imie=html_entity_decode( $r_imie, ENT_QUOTES, 'utf8'); echo mb_detect_encoding($r_imie, "auto"); $query="INSERT INTO rejstr(id,nick,haslox,mails)"."values(null,'$r_imie','$ghaslo','$e_mail')"; mysql_query($query, $link) or die('Błąd zapytaniu do bazy danych.'); mysql_query("SET NAMES utf8"); mysql_close($link); odczytującego nie mam-chodzi mi o polskie litery zapisane w bazie sql-są po prostu krzaki Ten post edytował Rid 9.12.2010, 22:44:45 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 5.10.2025 - 14:21 |