[ mickey_zg @ 16.10.2014. 00:50 ] @
Pozdrav društvu.

Zapeo sam i više ne znam kako dalje.
Trebao bih podatke iz mysql baze na WIN računalu, preko WEB browsera prebaciti na Linux WEB server, konkretno se radi o WEB shopu. Sve funkcionira, ali me muče naši znakovi (čćžšđ)
codepage mysql servera ne mogu mijenjati niti na jednom od tih servera, već moram u PHP kodu naći rješenje.

Administracija WEB shop-a čita artikle iz baze podataka Win računala XYZ firme i upisuje ili ih mijenja na WEB serveru.
Na mojem serveru (debian linux, standardna konfiguracija apache2 i php i mysql servera, nikakve posebne postavke) funkcionira savršeno, imam sve naše znakove, ali kada tu istu skriptu pustim na "pravom" WEB serveru, nemam naših znakova.

Characterset WEB stranice je windows-1250 (probao sam i sa iso-8859-2 i sa utf8)
Sa WIN servera učitam podatke sa latin1, WEB server je na utf8, codepage tekst polja je latin1_general_ci.

Gdje griješim u konverziji codepage-a?


<code>

if ($_GET[ucitaj]){
if (!$db_conn2) $db_conn2 = MYSQL::db_luceed(); // WIN server sa kojega čitam podatke
mysql_query("set charset latin1");
// echo mysql_error();
// prvo grupe provjeriti i po potrebi dodati
$upit_grp_sql="select id, sid, grupa_artikla, naziv, nadgrupa__grupa_artikla_id, enabled, nadgrupa__grupa_artikla__sid from grupe_artikala where grupa_artikla like 'P%'";
//echo "select id, sid, grupa_artikla, naziv, nadgrupa__grupa_artikla_id, enabled, nadgrupa__grupa_artikla__sid, 0 as postoji from grupe_artikala where grupa_artikla like 'P-%'";
$upit_grp=mysql_query($upit_grp_sql);
mysql_close($db_conn2);
if (!$db_conn) $db_conn = MYSQL::db_connect(); // WEB server - linux + apache
mysql_query("set names utf8");
echo mysql_error(); //test
while ($nova_grp = mysql_fetch_array($upit_grp)){
$ima_grupa_sql = "select count(*) from new_grupe_artikala where id=$nova_grp[0] and sid=$nova_grp[1]";
$naziv_grp = str_replace(',',', ',$nova_grp[3]);
$ima_grp = mysql_fetch_array(mysql_query($ima_grupa_sql));
if(empty($nova_grp[4])){
$nova_grp[4]='NULL';
}
if(empty($nova_grp[6])){
$nova_grp[6]='NULL';
}
if ($ima_grp[0] >0){
$osvjezi_grp="update new_grupe_artikala set grupa_artikla='$nova_grp[2]',naziv='$naziv_grp', nadgrupa__grupa_artikla_id=$nova_grp[4], enabled='$nova_grp[5]', nadgrupa__grupa_artikla__sid=$nova_grp[6] where id=$nova_grp[0] and sid=$nova_grp[1]";
} else {
$osvjezi_grp="insert into new_grupe_artikala (id, sid, grupa_artikla, naziv, opis, nadgrupa__grupa_artikla_id, enabled, nadgrupa__grupa_artikla__sid) values
($nova_grp[0], $nova_grp[1], '$nova_grp[2]','$naziv_grp','$naziv_grp',$nova_grp[4], '$nova_grp[5]',$nova_grp[6])";
}
echo $osvjezi_grp."<br>\n";
mysql_query($osvjezi_grp);
if (mysql_error()){
echo mysql_error()."<br>\n".$osvjezi_grp."<p>\n";
}
//echo "$osvjezi_grp;<br>\n";
}
</code>