مشكل در جستجوي كلمات فارسي

sahar_com84

New Member
سلام به همه ,

من دارم سعي ميكنم كه يه پروژه براي اعلام نمرات چند تا از درسهاي دانشگاه بنويسم تا حدودي هم موفق شدم و كد هاي من توي لوكال (wamp 5) بدون هيچ مشكلي كار ميكنه اما وقتي فايل ها رو آپلود ميكنم يه مشكل بزرگي پي‌ش مياد كه نميتونم كلمات فارسي رو سرچ كنم اين مشكل توي لوكال نبود كد ها رو مينويسم ببينين مشكل كجاست من ميتونم تمام ركوردهاي ديتابيس رو بدون هيچ مشكلي توي صفات نشون بدم اما نميتونم كلمات فارسي رو جستجو كنم يعني انگار كه ركوردهاي فارسي من وجود نداره ولي اگه بخوام توي يه تيبل نشون بدم مشكلي پيش نمياد شايد عيب از نحوه ارسال از فرم به فايل php باشه البته بازم سعي كردم كه انكودينگ رو رعايت كنم ضمنا من كلي سرچ كردم اا جواب واضي توي فروم ژيدا نكردم اين شد كه مجبور شدم تاژيك جديد بزنم

ايجاد table

کد:
 CREATE TABLE stu(
First_Name char( 50 ) ,
Last_Name char( 50 ) ,
Grade char( 50 ) 
) CHARACTER SET UTF-8 COLLATE utf8_persian_ci;
حالا يه تفاوتي هست توي لوكال مشخصات ديتابيس من اينه
10pzgd5.gif


اما توي هاست با وجود اينكه MySQL connection collation:رو به utf8_persian_ci عوض كردم و موقع ساختن تيبل هم utf8_persian_ci رو انتخاب كردم اما

البته type رو خودم عوض كردم به اميد اينكه مشكل حل بشه كه نشد متاسفانه

حالا چرا با اينكه من نوع collection رو از نوع utf8_persian_ci انتخاب كردم بازم به ورت زير ميشه؟؟؟؟؟!!

wo3m8.gif
wo3m8.gif




براي اضافه كردن اطلاعات به ديتابيس از يك فايل html استفاده كردم كه با متد post اطلاعات رو به يه فايل php ميفرسته كه كد هردوتاش به صورت زيره

html :

کد:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
   <title>Max's Site Protector Demo</title>
   <link href="style/style.css" rel="stylesheet" type="text/css" />
</head>

<body dir="rtl">
    

       <div id="container" dir="rtl">
            <div id="header" dir="rtl"><div id="header_left"></div>
            <div id="header_main">Max's Site Protector</div><div id="header_right"></div></div>
            <div id="content"  dir="rtl">
                <form action="insert.php" method="post"  dir="rtl">
                     <center>
                         <b><labeltest</b>
                            <input type="text" name="firstname" /><br><br>
                            <input type="text" name="lastname" /><br><br>
                                                    
                            <input type="text" name="grade" /><br><br>
                         </label><br/>
                         <label>
                             <input type="submit" value="test" />
                         </label>
                     </center>
                 </form>
             </div>
             <div id="footer">tt</div>
        
</body>
C


php:
کد:
   <?php
$con = mysql_connect("localhost","root","pass");
mysql_query("SET CHARACTER SET utf8;");
mysql_query("SET SESSION collation_connection = 'utf8_persian_ci'"); 
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("stu", $con);

$sql="INSERT INTO stu (First_Name, Last_Name, Grade)
VALUES
('$_POST[firstname]','$_POST[lastname]','$_POST[grade]')";

if (!mysql_query($sql,$con))
  {
  die('Error: ' . mysql_error());
  }
echo "1 record added";

mysql_close($con)
?>
براي جستجو هم به همين صورت



html:

کد:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>

<head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <meta name="author" content="">
    <link href="style/style.css" rel="stylesheet" type="text/css" />
    <title>Untitled 1</title>
</head>

<body dir="rtl" align="center">






<div id="container" dir="rtl">
            <div id="header" dir="rtl"><div id="header_left"></div>
            <div id="header_main" >سيستم اعلام نمرات درس آزمايشگاه فيزيك 2 مهندس پوررحيمي </div><div id="header_right"></div></div>
            <div id="content"  dir="rtl">
            <font face="tahoma" size="3">
            *. سيستم جستجو بر اساس نام و نام خانوادگي شما طراحي گرديده
            <br>---------------------------------------------- <br>
            *. لطفاً هم نام و هم نام خانوادگي خود را وارد كنيد
          
                <form method="GET" action="select1.php">
                     <center>
                         <b><label>نام‌ :</b>
                           <input type="text" name="Id_ln" value="test"><br><br>
                                                        <label><b>نام خانوادگي</b>
                            <input type="text" name="Id_n" value="test"><br><br>
                        
                         </label><br/>
                         <label>
                                <input type="submit" name="submit" value="جستجو">
                         </label>
                     </center>
                 </form>
             </div>
             <div id="footer"><a href="http://www..com" target="_blank">طراحي توسط انجمن علمي مهندسي كامپيوتر</a></div>
, و فايل جستجو به صورت :

کد:
      <?php
header ('Content-type: text/html; charset=utf-8');

/**
 * @author 
 * @copyright 2008
 */
$b=$_GET["Id_n"];
$n=$_GET["Id_ln"];
$con = mysql_connect("localhost","root","pass");
mysql_query("SET CHARACTER SET utf8;");
mysql_query("SET SESSION collation_connection = 'utf8_persian_ci'"); 
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
    mysql_query("SET CHARACTER SET utf8;");
    $db=mysql_select_db('stu');
    if (!$db){
        die("Db Not Found");
            }
            mysql_query("SET CHARACTER SET utf8;");
            $query = "select First_Name, Last_Name, Grade from stu where Last_Name='$b' and First_Name='$n'";
            mysql_query("SET CHARACTER SET utf8;");
            $result = mysql_query($query,$con);
            if (!$result){
                echo ("Not Found");
            }
            mysql_query("SET CHARACTER SET utf8;");
            if ($row=mysql_fetch_array($result)){
            
            }

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>

<head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <meta name="author" content="">
    <link href="style/style.css" rel="stylesheet" type="text/css" />
    <title>Untitled 1</title>
</head>

<body dir="rtl" >

            <div id="content"  dir="rtl">
                <form method="GET" action="select1.php">
                     <center>
                        <div id="container" dir="rtl">
            <div id="header" dir="rtl"><div id="header_left"></div>
           <div id="header_main" ><?echo(" ".$row[0]."  ".$row[1]."   <br>\n");?> (?¢?²U…?§U??´?¯?§U‡ U?U??²U?Uƒ 2) </div><div id="header_right"></div></div>

                    <div id="content"  dir="rtl">
              
                                              <table border='1'>
<tr>
<th><font face="arial" size="5">  name
<th> <font face="arial" size="5"> family</th>
<th> <font face="arial" size="5">  grade</th>
</tr>
<tr>
 <td align="center"><font face="tahoma" size="5"><?echo("  ".$row[0]."<br>\n");?></td>
  <td align="center"><font face="tahoma" size="5"><?echo(" ".$row[1]."<br>\n");?></td>
  <td align="center"><font face="tahoma" size="5"><?echo(" ".$row[2]."<br>\n");?></td></font>
</tr>
                 </form>
             </div>
             <div id="footer"><a href="http://www.sefr-va-yek.com" target="_blank"></a></div>
        


  
</body>
</html>
دوباره تاكيد مي كنم همه چيز توي لوكال بدون مشكل اجرا ميشه اما توي هاست كلمات فارسي رو پيدا نميكنه انگار اصلا همچين ركوردي وجود نداره
ورژن phpmyadmin من توي هاست 3.02 و توي لوكال 2.8

اگه يك نمونه كد دارين كه سرچ فارسي رو انجام ميده ممنون ميشم اينجا بزارين
 
آخرین ویرایش:

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

بالا