อยากให้ตารางที่ join มีภาษาไทย

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา อยากให้ตารางที่ join มีภาษาไทย

อยากให้ตารางที่ join มีภาษาไทย
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
<?php
$product_id = array();
$product_name = array();
$short_description = array();
$original_price = array();
$special_price = array();
$savings = array();
$discount = array();
$product_url = array();
$image_url = array();
$brand_name = array();
$url_key = array();
$ext = array();
$stock = array();
$category = array();
$google_product_category=array();
 
// Please Change parameters of the row below
$con = mysqli_connect("localtest-hybris-prd-read-06-sep.cjhgz8eu8lp4.ap-southeast-1.rds.amazonaws.com", "dbacom", "dbacompass", "dbdb", 3306);
 
mysqli_query($con, "SET NAMES 'utf8'");
 
$result = mysqli_query($con,"SELECT distinct
p.p_code as ID,
 
pl.p_name as title,
concat(pr.p_price,' THB') as price,
 
CASE
   WHEN NOW() <dr.p_endtime
     THEN concat(pr.p_price - dr.p_value ,' THB')
     ELSE NULL
END as sale_price,
 
 
 
IFNULL(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(pl.p_description,'<p>',''),'<strong>',''),'</strong>',''),'<u>',''),'</u>',''),'สินค้าคุณภาพดีเยี่ยม') as description,
concat('https://www.db.co.th/product/',pl.p_name,'-',p.p_code) as link,
concat('https://media.db.co.th/',p_location) as image_link,
cl.p_name as brand,cl.p_name as google_product_category
 
 
FROM dbdb.products p
inner join productslp pl
on p.PK = pl.itempk and pl.langpk = 8796093055008
inner join medias m
on p.p_picture = m.pk
 
 
inner join pricerows pr
on pr.p_product = p.pk and pr.p_channel = 8796101083227 AND pr.p_unit = p.p_unit
 
inner join cat2prodrel cp
on cp.targetpk = p.pk
inner join categorieslp cl
on cl.itempk = cp.sourcepk and cl.langpk = 8796093513760
inner join categorieslp cs
on cs.itempk = cp.sourcepk and cs.langpk = 8796093055008 and cs.itemtypepk = 8796108718162
 
inner join categories c
on c.pk=cl.itempk
 
left join discountrows dr
on dr.p_product = p.pk and dr.p_channel = 8796101083227
 
inner join catalogversions cv
on p.p_catalogversion = cv.pk and cv.p_version = 'Online'
 
inner join enumerationvalues ev
on p.p_approvalstatus = ev.pk
inner JOIN catalogs cat
ON  cat.p_id = 'dbProductCatalog' AND cat.PK = p.p_catalog
INNER JOIN enumerationvalueslp evl
ON p.p_approvalstatus = evl.itemPK AND evl.itemPK = 8796100231259 AND evl.p_name = 'approved'
 
WHERE pr.p_price >0 AND pr.p_price - IFNULL(dr.p_value,0) >0
AND p.p_code NOT  LIKE '9%'
AND p.p_code NOT  LIKE '2%'
GROUP BY p.p_code
Order By p.p_code ASC
 
limit 10
 
");
 
// Loop through database results and fill array
while($row = mysqli_fetch_array($result))
    {
    $sku[] = $row['ID'];
        $product_name[] = $row['title'];
        $special_price[] = $row['sale_price'];
        $original_price[] = $row['price'];
        $image_url[] = $row['image_link'];
        $product_url[] = str_replace(" ","-",$row['link']);
        $description[] = $row['description'];
        $brand[] = $row['brand'];
        $google_product_category[]=$row['google_product_category'];
    }
 
mysqli_close($con);
 
 
 
    for ($i=0; $i<count($sku); $i++)
        {
                 
                $data[$i][0] = $sku[$i];
                $data[$i][1] = $product_name[$i];
                $data[$i][2] = $original_price[$i];
                $data[$i][3] = $special_price[$i];
                $data[$i][4] = $product_url[$i];
                $data[$i][5] = $image_url[$i];
                $data[$i][6] = $description[$i];
                $data[$i][7] = 'in stock';
                $data[$i][8] = 'new';
                $data[$i][9] = $brand[$i];
                $data[$i][10] = $google_product_category[$i];
                    }
 
 
    $fp = fopen('/var/www/html/criteo/DbFBFeed_up.csv', 'w');
 
    fputcsv($fp, array('id','title','price','sale_price','link','image_link','description','availability','condition','brand','google_product_category'));
    foreach ($data as $fields) {
            fputcsv($fp, $fields);
    }
 
    fclose($fp);
 
  echo "DbFBFeed_up.csv is Created";
 
?>
 
ต้องการให้ ตาราง title เป็นภาษาไทย ซึ่งก็คือรหัส pl.langpk = 8796093513760 ต้องทำยังไงคะถึงจะได้ตารางเป็นภาษาไทยออกมา แต่ตรงตาราง link ก็ต้องเป็น ภาษา อังกฤษดังเดิม
1
 


Yuii Thiya 29-09-2017 10:37:24

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1
  

>>>  อัพเดท >>> 29-09-2017
------------------------------------------
ถ้าหมายถึง ไฟล์ csv ไม่แสดงภาษาไทย หรือเขียนหรือแสดงภาษาไทยไม่ถูกต้อง
ลองเติมโค้ดบรรทัดนี้ ต่อจาก fopen() ตามนี้ดู
 
1
2
$fp = fopen('/var/www/html/criteo/DbFBFeed_up.csv', 'w');
fprintf($fp, chr(0xEF).chr(0xBB).chr(0xBF));


ninenik 29-09-2017






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ