serius
شنبه 17 مهر 1395, 13:11 عصر
درود;
دوستان مدتیه با این مساله مشکل دارم ، کسی نیست متاسفانه بتون کمکم کنه .
روی هاست یه دیتابیس دارم ، یه جدول تستی ساختم داخلش ، 3 نوع داده تعریف کردم از نوع های text , varchar , nvarchar داخلشون مقادیر فارسی وارد کردم .
با این وب سرویس اطلاعات رو به صورت خروجی JSON نمایش میدم :
<?php
$server = 'localhost';
try {
$dbh = new PDO('odbc:Driver={SQL Server};Server=87.107.124.37\MSSQLSERVER2012;Datab ase=DB_Test;Client_CSet=UTF-8;Server_CSet=Windows-1251;Uid=Mahoo;Pwd=Mahoo-70');
ini_set('mssql.charset', 'UTF-8');
$response["allperson"] = array();
/*** QUERY ****/
$sql = "SELECT * FROM TB_Test";
$stmt=$dbh->query($sql);
$objs = $stmt->fetchAll(PDO::FETCH_OBJ);
foreach($objs as $object) {
$person = array();
$person["id"]=$object->id;
$person["a"]=$object->a;
$person["b"]=$object->b;
$person["c"]=$object->c;
array_push($response["allperson"], $person);
}
echo json_encode($response);
/*** close connection ***/
$dbh=null;
}catch(PDOException $e) {
echo $e->getMessage();
}
?>
دیتابیس MSSQL هست .
مقادیر فارسی رو به شکل علامت سوال بر میگردونه . ( اطلاعات رو قبلا تست کردم که موقع Insert کردن قبلشون یه کاراکتر N گذاشتم ) این اطلاعاتی که الان برام فارسی بر نمیگردونه رو داخل دیتابیس دستی وارد کردم . تو خود Sql Server Management Studio 2012 اطلاعات رو فارسی نشون میده . داخل پنل کاربری MyLittleAdmin هم فارسی نمایش میده . فقط زمانی که با وب سرویس خروجی JSON میگیرم فارسی بر نمیگردونه .
دوستان مدتیه با این مساله مشکل دارم ، کسی نیست متاسفانه بتون کمکم کنه .
روی هاست یه دیتابیس دارم ، یه جدول تستی ساختم داخلش ، 3 نوع داده تعریف کردم از نوع های text , varchar , nvarchar داخلشون مقادیر فارسی وارد کردم .
با این وب سرویس اطلاعات رو به صورت خروجی JSON نمایش میدم :
<?php
$server = 'localhost';
try {
$dbh = new PDO('odbc:Driver={SQL Server};Server=87.107.124.37\MSSQLSERVER2012;Datab ase=DB_Test;Client_CSet=UTF-8;Server_CSet=Windows-1251;Uid=Mahoo;Pwd=Mahoo-70');
ini_set('mssql.charset', 'UTF-8');
$response["allperson"] = array();
/*** QUERY ****/
$sql = "SELECT * FROM TB_Test";
$stmt=$dbh->query($sql);
$objs = $stmt->fetchAll(PDO::FETCH_OBJ);
foreach($objs as $object) {
$person = array();
$person["id"]=$object->id;
$person["a"]=$object->a;
$person["b"]=$object->b;
$person["c"]=$object->c;
array_push($response["allperson"], $person);
}
echo json_encode($response);
/*** close connection ***/
$dbh=null;
}catch(PDOException $e) {
echo $e->getMessage();
}
?>
دیتابیس MSSQL هست .
مقادیر فارسی رو به شکل علامت سوال بر میگردونه . ( اطلاعات رو قبلا تست کردم که موقع Insert کردن قبلشون یه کاراکتر N گذاشتم ) این اطلاعاتی که الان برام فارسی بر نمیگردونه رو داخل دیتابیس دستی وارد کردم . تو خود Sql Server Management Studio 2012 اطلاعات رو فارسی نشون میده . داخل پنل کاربری MyLittleAdmin هم فارسی نمایش میده . فقط زمانی که با وب سرویس خروجی JSON میگیرم فارسی بر نمیگردونه .