مشکل با فونت فارسی در اتصال به SQL server از طریق php

mamadshoshteri

New Member
سلام دوستان

من میخوام از یه سرور به یه پایگاه داده توی سرور دیگه وصل بشم و باهاش کار کنم (sql server) با دستور زیر این کارو کردم ولی فیلدایی که محتوای فارسی دارنو به صورت یه مربع مشکی که توش علامت ؟ هست نشون میده متا تگ utf8 این کارارم کردم ولی باز همین مشکل رو دارم .


PHP:
<?php

$conn = mssql_connect( 'SERVER', 'sa','560');
 
if( $conn ) {
     echo "Connection established.";
     $dbn="SodoorFactor91";  
     mssql_select_db($dbn)or die("not etesal");
     $search=mssql_query("SELECT * FROM Moshtari");
     while($halghe=mssql_fetch_array($search)){
      
    $name=($halghe["Name"]);

    print("<br/>");
    echo($name);  
      
     }

}else{
    
}
?>
اگه لطف کنید کمک کنید ممنون میشم البته شنیدم کتابخانه های PDO این مشکل رو ندارن ولی نتونستم استفاده کنم و php.ini رو تنظیم کنم

مهم نیست برام با این دسور باشه یا دستورای دیگه فقط باید از یه سرور به یه سرور دیگه وصل بشم به پایگاه داده ی sql server

پیشاپیش از کمکتون ممنونم
 
آخرین ویرایش:

mamadshoshteri

New Member
با PDO هم متصل كه ميشم همون مشكل وجود داره فيلد هاي فارسيم به صورت زير چاپ ميشه

[Name] => ���� ���� ���� �����



شايد ايراد از پايگاه داده ام باشه ولي من نميدونم چطور بايد تنظيم كنم پايگاه داده رو براي اين كار اخه برنامه تحت ويندوزي كه داره با اين جداول كار ميكنم هيچ مشكل فارسي نويسي نداره

اين هم سورسي كه با كلاس pdo استفاده كردم



PHP:
<?php
  try {
    $hostname = "SERVER";            //host
    $dbname = "SodoorFactor91";            //db name
    $username = "sa";            // username like 'sa'
    $pw = "560";                // password for the user

    $dbh = new PDO ("mssql:host=$hostname;dbname=$dbname","$username","$pw");
    if($dbh){echo "ok";}
  } catch (PDOException $e) {
    echo "Failed to get DB handle: " . $e->getMessage() . "\n";
    exit;
  }
  $stmt = $dbh->prepare("SELECT * FROM Moshtari");
  $stmt->execute();
  while ($row = $stmt->fetch()) {
    print_r($row);
  }
  unset($dbh); unset($stmt);
?>
 

hoceyn

Active Member
این مشکل تو mysql هست که خیلی راحت حل میشه. به نظرتون همون جواب :
[PHPS]mysql_set_charset("utf8",$myconnection);[/PHPS]
به کار نمیاد؟ یا اینکه بخاطر سرور ها مختلفش جواب فرق می کنه؟
 

mamadshoshteri

New Member
این مشکل تو mysql هست که خیلی راحت حل میشه. به نظرتون همون جواب :
PHP Code:

mysql_set_charset("utf8",$myconnection);


به کار نمیاد؟ یا اینکه بخاطر سرور ها مختلفش جواب فرق می کنه؟

سلام حسین جان

پایگاه داده ام sql server هست این دستور توی my sql جواب میده واسه sql server چیزی پیدا نکردم
 

جدیدترین ارسال ها

بالا