رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
مشکل نمایش محتوا فارسی دیتابیس
#1
سلام

این تابع را ببنید.یک تابع از کلاس است و از آن کلاس نمونه سازی صورت گرفته
1
2
3
4
5
6
7
8
9
10
  function post_content(){
      global $con;
       $sqlm = "SELECT * FROM news ";
      $result = $con->query($sqlm);
 
 
      $row3 = $result->fetch_all();
      var_dump($row3);
       
  }

فایل کافیگ که حاوی کد اتصال است :
1
2
3
4
5
6
<?php
 $con = mysqli_connect('localhost', 'root','','paraq');
if(mysqli_connect_errno($con) > 0)
                echo "Can not connect to server:<br/>".mysqli_connect_error();
        mysqli_set_charset($con,"utf8");
?>
وقتی توی صفحه ایندکس var_dump میگیرم ازrow3 خروجی 2تا مشکل اره اول اینکه فارسی ها بهم ریختس .دوم اینکه اندیس های دوم عددی است مگر باید هم نام فیلد جدول باشه؟



فایل ایندکسم :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
include_once('cfn.php');
include_once('config-main.php');
include_once('tempclass.php');
$template= new template();
include_once('function.php');
//include_once('theme/'.TEMPLATE.'/index.php');
 
postcontent();
 
echo'<br>';
 
             
             $sqlm = "SELECT * FROM news ";
            $result = $con->query($sqlm);
 
 
            $row3 = $result->fetch_all();
            echo $row3['1']['1'];
 
 
?>


و خروجی :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<span style="font-weight: bold;">array</span> <span style="font-style: italic;">(size=3)</span>
  0 <span style="color: #888a85;">=></span>
   <span style="font-weight: bold;">array</span> <span style="font-style: italic;">(size=6)</span>
     0 <span style="color: #888a85;">=></span> string <span style="color: #cc0000;">'2'</span> <span style="font-style: italic;">(length=1)</span>
     1 <span style="color: #888a85;">=></span> string <span style="color: #cc0000;">'تست2'</span> <span style="font-style: italic;">(length=7)</span>
     2 <span style="color: #888a85;">=></span> string <span style="color: #cc0000;">'/upload/files/1.jpg'</span> <span style="font-style: italic;">(length=19)</span>
     3 <span style="color: #888a85;">=></span> string <span style="color: #cc0000;">'<p>تیت</p>
 
'</span> <span style="font-style: italic;">(length=15)</span>
     4 <span style="color: #888a85;">=></span> string <span style="color: #cc0000;">'1458033961'</span> <span style="font-style: italic;">(length=10)</span>
     5 <span style="color: #888a85;">=></span> string <span style="color: #cc0000;">'0'</span> <span style="font-style: italic;">(length=1)</span>
 1 <span style="color: #888a85;">=></span>
   <span style="font-weight: bold;">array</span> <span style="font-style: italic;">(size=6)</span>
     0 <span style="color: #888a85;">=></span> string <span style="color: #cc0000;">'6'</span> <span style="font-style: italic;">(length=1)</span>
     1 <span style="color: #888a85;">=></span> string <span style="color: #cc0000;">'خبر تست دسته بندی'</span> <span style="font-style: italic;">(length=31)</span>
     2 <span style="color: #888a85;">=></span> string <span style="color: #cc0000;">'/upload/files/o7tzgt5bvu5rm62a6ays.jpg'</span> <span style="font-style: italic;">(length=38)</span>
     3 <span style="color: #888a85;">=></span> string <span style="color: #cc0000;">'<p>تست است</p>
 
 
 
<p>Ú†Ú¯</p>
 
'</span> <span style="font-style: italic;">(length=37)</span>
     4 <span style="color: #888a85;">=></span> string <span style="color: #cc0000;">'1457896697'</span> <span style="font-style: italic;">(length=10)</span>
     5 <span style="color: #888a85;">=></span> string <span style="color: #cc0000;">'0'</span> <span style="font-style: italic;">(length=1)</span>
 2 <span style="color: #888a85;">=></span>
   <span style="font-weight: bold;">array</span> <span style="font-style: italic;">(size=6)</span>
     0 <span style="color: #888a85;">=></span> string <span style="color: #cc0000;">'10'</span> <span style="font-style: italic;">(length=2)</span>
     1 <span style="color: #888a85;">=></span> string <span style="color: #cc0000;">'خبر تست دسته بندی'</span> <span style="font-style: italic;">(length=31)</span>
     2 <span style="color: #888a85;">=></span> string <span style="color: #cc0000;">'/upload/images/1.jpg'</span> <span style="font-style: italic;">(length=20)</span>
     3 <span style="color: #888a85;">=></span> string <span style="color: #cc0000;">'<p>تست</p>
 
'</span> <span style="font-style: italic;">(length=15)</span>
     4 <span style="color: #888a85;">=></span> string <span style="color: #cc0000;">'1458032702'</span> <span style="font-style: italic;">(length=10)</span>
     5 <span style="color: #888a85;">=></span> string <span style="color: #cc0000;">'0'</span> <span style="font-style: italic;">(length=1)</span>
 
 
خبر تست دسته بندی


ممنون میشم راهنمایی نمایید
پاسخ
تشکر شده توسط:
#2
مشکل فارسی حل شد مونده مشکل اندیس گذاری کو من نمیخام عددی باشه ...میخامبا اسم فیلد جدول باشه

کد کلاس :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?php
 
class template{
 
    private $i=-1; 
 
 
    function havepost(){
            global $con;
            $sel_post ="SELECT * FROM news ";
 
            $run_post = mysqli_query($con, $sel_post);
 
            $check_post = mysqli_num_rows($run_post);
            return $this->i < --$check_post;
    }
     
     
        function thepost(){
            $this->i++; 
    }
 
    function post_content(){
            global $con;
             
            $sqlm = "SELECT * FROM news ";
            $result = $con->query($sqlm);
 
 
            $row3 = $result->fetch_assoc();
            var_dump($row3);
             
    }
     
     
     
     
     
     
     
     
     
     
     
     
}
 
 
 
?>

کد
تابع post_content
1
2
3
4
5
global $com;
$sql=$con->prepare('select * from news');
$sql->execute();
$fetch=$sql->fetchall();
return $fetch[$this->i]['body'];
این بدنه تابع post_contentکه من با mysqli اونجوری نوشتمه

توی فیلم با pdo نوشته بود من به mysqli نوشتم اما ظاهرا اشتباه نوشتم
پاسخ
تشکر شده توسط:
#3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
class Template
{
    private $i = -1;
    private $posts;
  
    public function havepost() {
        global $con;
        $sql = 'SELECT * FROM `news`';
        $run_post = mysqli_query($con, $sql);
        return mysqli_num_rows($run_post) > 0;
    }
 
    function thepost()
    {
        $this->i++;
        return (is_array($this->posts) && isset($this->posts[$this->i]) ? $this->posts[$this->i] : null);
    }
  
    public function post_content()
    {
        global $con;
        $sql = 'SELECT * FROM `news`';
        if($result = mysqli_query($con, $sql)) {
            $this->posts = array();
            if(mysqli_num_rows($result) > 0) {
                while($row = mysqli_fetch_assoc($result)) {
                    $this->posts[] = $row;
                }
            }
            mysqli_free_result($result);
        }
    }
}
پاسخ
تشکر شده توسط:




کاربران در حال بازدید این موضوع: 1 مهمان