PDA

View Full Version : مشکل در خواندن فیلدهای فارسی access در php



aliabdzad
چهارشنبه 15 خرداد 1392, 21:52 عصر
سلام. تو php می خوام فیلدهای فایل access ام رو نشون بدم ولی فارسی هاش درست نیست. تو هدر "UTF-8" کردم ولی بازم درست نیست .

با چند تا تابع تست کردم دیدم اصلا اون رشته ای رو که از فایل اکسس ام می خونه به عنواه UTF-8 نمیشناسه .


یه بارم اون فیلد رو با تابع تو mysql ذخیره کردم ولی دیدم اونجا هم "???" ذخیره شده .

کسی میدونه چیجوری میشه به اکسس بگی که utf-8 ذخیره کنه یا یه فیلد رو بگی که utf-8 باشه؟ مثل collation تو mysql

کسی راه حل دیگه ای داره ؟

مرسی ;)

Tarragon
یک شنبه 19 خرداد 1392, 14:39 عصر
می شه فایلتون رو هم بگذارید؟

aliabdzad
دوشنبه 20 خرداد 1392, 13:54 عصر
می شه فایلتون رو هم بگذارید؟

این کد php :

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<?php
header('Content-Type: text/html; charset=utf-8');

$conn2 = new COM("ADODB.Connection") or die("Cannot start ADO");
//$db_connstr = @odbc_pconnect("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=".realpath("test.mdb")." ;DefaultDir=". realpath(""));
$db_connstr = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=".realpath("ali.mdb")." ; DefaultDir=".realpath("");
$conn2->open($db_connstr);
$rs = $conn2->Execute("SELECT name FROM Table1");
while (!$rs->EOF)
{
$name = $rs->Fields("name");
echo $name.'</br>';
echo utf8_encode ( $name );
$rs->MoveNext();
}
$rs->Close();
?>

اینم یه فایل اکسس معمولی با پسوند mdb. که یه ستون به نام name داره که فارسیه : دانلود (http://aliabdzad.persiangig.com/document/)