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

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

อยากให้ตารางที่ join มีภาษาไทย
<?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 ก็ต้องเป็น ภาษา อังกฤษดังเดิม



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

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

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


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


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

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

>>>  อัพเดท >>> 29-09-2017
------------------------------------------
ถ้าหมายถึง ไฟล์ csv ไม่แสดงภาษาไทย หรือเขียนหรือแสดงภาษาไทยไม่ถูกต้อง
ลองเติมโค้ดบรรทัดนี้ ต่อจาก fopen() ตามนี้ดู
 
$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) ขอบคุณครับ