unserialize() funkcija i naši karakteri?
31.05.2008. u 14:14 · pre 223 meseci
#1
Eh ovako, radi se o Opencart skripti za web shop,
prvo sam imao problema da u bazu ubacim slova čćšđž,
onda sam to rijesio tako sto sam u kod koji se bavi insertovanjem
korisnika i njegovih podataka u tabelu dodao
tako da sad u bazi imam ta slova i nisu napisana sibolima nego bas čćšđž.
Kasnije mi se pojavio problem sa funkcijom unserialize() koja vjerovatno ima
problema sa ovim karakterima tako da prilikom zakljucena narudzbe koja u bilo kojem svom podatku sadrzi neki od nasih znakova čćšđž dobivam gresku(ako nema čćšđž sve ide regularno):
a sporni dio koda je:
zna li neko rjesenje za ovaj problem?
prvo sam imao problema da u bazu ubacim slova čćšđž,
onda sam to rijesio tako sto sam u kod koji se bavi insertovanjem
korisnika i njegovih podataka u tabelu dodao
Code:
mysql_query("set names 'utf8'");
mysql_query("set names 'utf8'");
tako da sad u bazi imam ta slova i nisu napisana sibolima nego bas čćšđž.
Kasnije mi se pojavio problem sa funkcijom unserialize() koja vjerovatno ima
problema sa ovim karakterima tako da prilikom zakljucena narudzbe koja u bilo kojem svom podatku sadrzi neki od nasih znakova čćšđž dobivam gresku(ako nema čćšđž sve ide regularno):
Code:
Notice: unserialize() [function.unserialize]: Error at offset 93 of 4831 bytes in public_html/xy/shop/library/cart/order.php on line 111
Warning: Cannot modify header information - headers already sent by (output started at public_html/xy/shop/library/cart/order.php:111) in public_html/xy/shop/library/environment/response.php on line 22
Notice: unserialize() [function.unserialize]: Error at offset 93 of 4831 bytes in public_html/xy/shop/library/cart/order.php on line 111
Warning: Cannot modify header information - headers already sent by (output started at public_html/xy/shop/library/cart/order.php:111) in public_html/xy/shop/library/environment/response.php on line 22
a sporni dio koda je:
Code:
function load($reference) {
$sql = "select distinct * from order_data where reference = '?'";
$order_info = $this->database->getRow($this->database->parse($sql, $reference));
if ($order_info) {
$this->reference = $reference;
$this->data = unserialize($order_info['data']);
return TRUE;
} else {
return FALSE;
}
function load($reference) {
$sql = "select distinct * from order_data where reference = '?'";
$order_info = $this->database->getRow($this->database->parse($sql, $reference));
if ($order_info) {
$this->reference = $reference;
$this->data = unserialize($order_info['data']);
return TRUE;
} else {
return FALSE;
}
zna li neko rjesenje za ovaj problem?