พอดีเริ่มมาหัดเขียน PHP ตอนนี้เริ่มหัดถึง PHP+MySQL แล้ว แต่พอเริ่มดัดแปลง ก็เลยงงครับ รบกวนช่วยหน่อย คือ
Web Server IP-address: 172.16.0.30
MySQL Server IP-address: 172.16.0.31
ทั้งหมดรัน Ubuntu 16.04 ครับ Web Server รัน NGINX ส่วน MySQL รัน Apache + PHPMyAdmin + MySQL ครับ
ประเด็นคือ อยากแยกระหว่าง Database Server กับ Web Server แต่พอเมื่อเขียนสคริปด้านล่างนี้แล้ว กลับขึ้นเป็น HTTP Error 500 ครับ เลยรบกวนขอคำแนะนำหน่อยครับ
<?php
$servername = "172.16.0.31";
$username = "test";
$password = "1234test";
$DBname = "TestDB";
try {
$conn = new PDO("mysql:host=$servername;dbname=$DBname, $username, $password);
// set the PDO error mode to exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Connected successfully";
}
catch(PDOException $e)
{
echo "Connection failed: " . $e->getMessage();
}
?>
on
ได้ใช้ IDE ตัวไหนอยู่ไหมครับ
mix5003 Sat, 17/12/2016 - 20:05
ได้ใช้ IDE ตัวไหนอยู่ไหมครับ ลองหามาช่วยดูครับ
ตรงบรรทัด $conn = new PDO... มันปิด " ไม่ครบครับ
ใช้ IDE VB Code ครับ
iDan Mon, 19/12/2016 - 22:23
In reply to ได้ใช้ IDE ตัวไหนอยู่ไหมครับ by mix5003
ใช้ IDE VB Code ครับ ตอนนี้ใช้แบบนี้ แล้วมันได้ครับ รู้สึกมึนๆ ไปเลย
<?php
$servername = "172.16.0.31";
$username = "test";
$password = "1234test";
$DBname = "TestDB";
?>
ถ้า syntax error แล้ว 500
lancaster Sat, 17/12/2016 - 23:56
ถ้า syntax error แล้ว 500 น่าจะรัน php-fpm ใช่มั้ยครับ
แนะนำให้เซ็ต php-fpm ให้ log error ลงไฟล์ (เซ็ตแถวๆ pool.d/xxx.conf) ทีนี้เวลามีปัญหาคราวหน้าเข้าไปคุยดูได้เลยครับมีบอกแน่นอน
ขอบคุณครับ
iDan Mon, 19/12/2016 - 22:16
In reply to ถ้า syntax error แล้ว 500 by lancaster
ขอบคุณครับ
ลองใช้ VS code เป็น editor
rattananen Mon, 19/12/2016 - 09:27
ลองใช้ VS code เป็น editor อย่างน้อยเวลามัน syntax error เราจะได้รู้
ถ้า syntax error ของ PHP
osmiumwo1f Mon, 19/12/2016 - 15:53
In reply to ลองใช้ VS code เป็น editor by rattananen
ถ้า syntax error ของ PHP มันจะบอกเลยว่าตรงไหนครับ ส่วน HTTP 500 มันเกิดจากหลายสาเหตุมาก และหลายๆ ครั้งเกิดจากหลายๆ สาเหตุรวมกันครับ
code ของเขามันมี syntax error
rattananen Mon, 19/12/2016 - 15:57
In reply to ถ้า syntax error ของ PHP by osmiumwo1f
code ของเขามันมี syntax error ตาม reply แรกน่ะครับ
ผมว่าไม่น่าจะเกี่ยวกับ double
osmiumwo1f Tue, 20/12/2016 - 10:26
In reply to code ของเขามันมี syntax error by rattananen
ผมว่าไม่น่าจะเกี่ยวกับ double quote หายไปนะ เพราะในบล็อก try catch มันจะเข้า catch ทันทีที่มี error เกิดขึ้น แต่ไม่น่าจะถึงขั้น HTTP 500 internal server error ได้ เว้นแต่มันถูกตั้งค่าให้เกิดแบบนั้นครับ
syntax error ใช้ try catch
mix5003 Tue, 20/12/2016 - 13:49
In reply to ผมว่าไม่น่าจะเกี่ยวกับ double by osmiumwo1f
syntax error ใช้ try catch ช่วยไม่ได้ครับ
ทำไมของผมมันทำ catch หว่า
osmiumwo1f Tue, 20/12/2016 - 13:58
In reply to syntax error ใช้ try catch by mix5003
ทำไมของผมมันทำ catch หว่า ทั้งๆ ที่ผมจงใจทำ syntax error ตามนั้นเลย แต่อ่านใน PHP.net แล้วก็ตามที่คุณว่าแหละครับ
ถึงมันได้ มันคงไม่เข้า
nat3738 Wed, 21/12/2016 - 19:04
In reply to ทำไมของผมมันทำ catch หว่า by osmiumwo1f
ถึงมันได้ มันคงไม่เข้า PDOException มั้งครับ น่าจะเป็น exception อื่น
ถึงมันได้ มันคงไม่เข้า
nat3738 Wed, 21/12/2016 - 19:04
In reply to ทำไมของผมมันทำ catch หว่า by osmiumwo1f
ถึงมันได้ มันคงไม่เข้า PDOException มั้งครับ น่าจะเป็น exception อื่น
ปล. แล้วเวลา dev ให้ set flag
rattananen Mon, 19/12/2016 - 16:02
ปล. แล้วเวลา dev ให้ set flag "display_errors" ของ php config เป็น on ครับ
จะได้หา error ง่ายๆหน่อย
วิธีหา error ของทีมผมคือ ssh
จักรนันท์ Mon, 19/12/2016 - 22:42
วิธีหา error ของทีมผมคือ ssh ไปที่ Server แล้วสั่ง
php ไฟล์.php
เอาเลยตรงๆ ครับ
แหล่งความรู้ เก็บ ๆ
joppoty Sun, 02/04/2017 - 14:38
แหล่งความรู้ เก็บ ๆ