Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > PHP > PHP Forum > สอบถาม php ไม่ แสดง Error ครับ สอบถามครับ เครื่องไม่แสดง Error งงๆๆ (คือประเด็นคือ พึ่งหัดจับ PHP)



 

สอบถาม php ไม่ แสดง Error ครับ สอบถามครับ เครื่องไม่แสดง Error งงๆๆ (คือประเด็นคือ พึ่งหัดจับ PHP)

 



Topic : 108471



โพสกระทู้ ( 410 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook



สอบถามครับ เครื่องไม่แสดง Error งงๆๆ (คือประเด็นคือ พึ่งหัดจับ PHP)

อันนี้หน้าหลักครับ ผม
<?php 
error_reporting(E_ALL);
ini_set("display_errors", 1);
$result = new myMysql->myQurey('select * from customer');
while($objResult = $result->fetch_array()){
		  ?><tr>
    
    <td><?php =$objResult["id"];?></td>
    <td><?php =$objResult["name"];?></td>
    <td align="right"><?php =$objResult["status"];?></td>
    <td align="right"><?php =$objResult["remark"];?></td>
  </tr>
<?php
}
?>


อีกหน้าครับ
<?php 
error_reporting(E_ALL);
ini_set("display_errors", 1);
$dbServer = 'localhost';
$dbName = 'cofc';
$dbUser = 'root';
$dbPass = '12344';
class myMysql{
	public myQurey($qurey){
		$mysqli = new mysqli($dbServer, $dbUser, $dbPass, $dbName);
		return $mysqli->query($qurey);
	}
}
?>


คือ Code ผมผิดแน่ๆ ครับ แต่งงว่าทำไม PHP ไม่แสดง Error
Run บน windows 8.1 IIS ไม่แน่ใจดู Version ตรงไหน แต่ น่าจะล่าสุด และ MYSQL 5.5 ครับ ><"

ขอบคุณทุก ๆ ท่านมากครับ



Tag : PHP, MySQL







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-05-19 16:51:37 By : zero1150kfc View : 7659 Reply : 14
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Code (PHP)
error_reporting(E_ERROR | E_WARNING | E_PARSE);







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-05-19 17:28:01 By : mr.win
 


 

No. 2



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

หรือไม่ลองแก้ไขใน php.ini ดูครับ

php.ini
error_reporting = E_ALL & ~E_NOTICE

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-05-19 17:28:57 By : mr.win
 

 

No. 3



โพสกระทู้ ( 2,311 )
บทความ ( 1 )



สถานะออฟไลน์


โค้ดผิดเยอะมากครับ แฮะๆ เพิ่งหัดจับ PHP แต่เล่น CLASS เลย เด๋วจะท้อเอานะครับ ลองศึกษาคำสั่งแบบพื้นฐานใช้ชำนาญก่อนดีไม๊ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-05-19 17:38:09 By : arm8957
 


 

No. 4



โพสกระทู้ ( 410 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

อ๋อปกติเคยเขียนบ้างครับ APS.NET (แต่ที่จริงก็ไม่เคยเขียน OOP หรอกครับ) เรื่องท้ออาจมีบ้างครับแต่ผมว่าการจะพัฒนาก็คงต้องทำ ^ ^

แต่ตอนนี้ ก็ยังไม่ได้อ่าครับ ช่วยผมทีนะครับ ขอบคุณมากครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-05-19 17:42:41 By : zero1150kfc
 


 

No. 5

Guest


error_reporting(-1); ini_set('display_errors', '1'); // ลองใช้ string '1' แทน 1


ก็ได้ครับ แสดงหมดแน่นอน

อย่าใช้

error_reporting = E_ALL & ~E_NOTICE


เพราะมันจะไม่แสดง NOTICE ครับ ซึ่ง NOTICE เป็นอะไรที่สำคัญมากๆ ในการบอกให้รู้ว่าเราเขียนโค้ด php ได้ถูกหลักหรือไม่
เช่นแจ้งว่า คุณใช้ตัวแปรที่ยังไม่ได้กำหนดค่า หรือเข้าถึง index ของ array ที่ไม่มีอยู่ เป็นต้น
ถ้าปิด NOTICE ไป คุณจะไม่รู้เลยครับ ทำให้ debug ได้ยากมาก
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-05-19 17:58:44 By : .
 


 

No. 6



โพสกระทู้ ( 410 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 5 เขียนโดย : . เมื่อวันที่ 2014-05-19 17:58:44

รายละเอียดของการตอบ ::
ยังไม่แสดงเลยครับ ><"


รบกวนด้วยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-05-19 20:56:51 By : zero1150kfc
 


 

No. 7



โพสกระทู้ ( 889 )
บทความ ( 11 )



สถานะออฟไลน์
Facebook Blogger

Code (PHP)
<?php 
error_reporting(E_ALL);



class myMysql {

	private $dbServer = '127.0.0.1';
	private $dbName = 'user_db';
	private $dbUser = 'root';
	private $dbPass = '1234';
	private $Charset = 'utf8';
	public $con;
	
	public function __construct() {
		$this->con = new mysqli($this->dbServer, $this->dbUser, $this->dbPass, $this->dbName);
		$this->con->set_charset($this->Charset);
	}
	
	public function myQurey($qurey) {
		return $this->con->query($qurey);
	}
}

$con = new myMysql();
$qr = $con->myQurey("SELECT * FROM tb_user");
?>

<table border="1">
<?php
	while($rs = $qr->fetch_array()) {
?>

<tr>
    <td><?php echo $rs["UserID"];?></td>
    <td><?php echo $rs["UID"];?></td>
    <td align="right"><?php echo $rs["UPASS"];?></td>
    <td align="right"><?php echo $rs["Fname"];?></td>
  </tr>
<?php
}
?>
</table>


ลองเอาไปปรัปดูนะครับ ผมแก้ให้ละ ใช้ได้
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-05-19 21:26:05 By : geidtiphong
 


 

No. 8

Guest


แสดงว่าคุณตั้งค่า display_errors ใน php.ini ไว้เป็น 0

และที่การใช้
error_reporting(E_ALL);
ini_set("display_errors", 1);

ไม่เกิดผลอะไร เพราะมัน error ก่อนที่โค้ดตรงนั้นจะทำงานครับ
โดย เป็น PARSE_ERROR แน่นอน ตรง

Code
<?php error_reporting(E_ALL); ini_set("display_errors", 1); $dbServer = 'localhost'; $dbName = 'cofc'; $dbUser = 'root'; $dbPass = '12344'; class myMysql{ public myQurey($qurey){ $mysqli = new mysqli($dbServer, $dbUser, $dbPass, $dbName); return $mysqli->query($qurey); } } ?>


PARSE ERROR จะหยุดการ compile ทันที (ก่อนที่จะเริ่มทำงานจริงๆ) และในเมื่อ display_errors ใน php.ini เป็น 0 มันก็จะไม่แสดง error ใดใดให้คุณเห็น

วิธีแก้ ก็คือต้องไปแก้ display_errors ใน php.ini โดยตรงครับ

ลองแก้ตรงนี้ดู แล้วมันจะทำงานได้ และแสดง error แน่นอน
<?php error_reporting(E_ALL); // เพราะตรงนี้ ini_set("display_errors", 1); // และตรงนี้ทำงานแล้ว $dbServer = 'localhost'; $dbName = 'cofc'; $dbUser = 'root'; $dbPass = '12344'; class myMysql{ public function myQurey($qurey){ // ตก function $mysqli = new mysqli($dbServer, $dbUser, $dbPass, $dbName); return $mysqli->query($qurey); } } ?>


และตรงนี้
<?php error_reporting(E_ALL); ini_set("display_errors", 1); $result = new myMysql(); // php เวอร์ชั่นต่ำกว่า 5.4 ไม่สามารถเรียกใช้ -> หลังจาก new ได้โดยตรง $result->myQurey('select * from customer'); while($objResult = $result->fetch_array()){ ?><tr> <td><?php echo $objResult["id"];?></td> <td><?php echo $objResult["name"];?></td> <td align="right"><?php echo $objResult["status"];?></td> <td align="right"><?php echo $objResult["remark"];?></td> </tr> <?php } ?>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-05-19 21:32:23 By : .
 


 

No. 9



โพสกระทู้ ( 410 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 7 เขียนโดย : geidtiphong เมื่อวันที่ 2014-05-19 21:26:05
รายละเอียดของการตอบ ::
ขอบคุณมากครับ แต่ยังไม่ได้เหมือนเดิมครับ ประเด็นผมไม่ห่วงเรื่องผิดเท่าไหร่นะครับ ผมห่วงว่าทำไมไม่ Show Error มากกว่า


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-05-19 21:32:31 By : zero1150kfc
 


 

No. 10



โพสกระทู้ ( 889 )
บทความ ( 11 )



สถานะออฟไลน์
Facebook Blogger

1. คุณลืมใส่ visibility ก่อนตั้งชื่อแปร ครับ
2. ต้องใช้ $this ในการใช้งาน
3. ต้องประกาศ instant ก่อนใช้งาน function ใน class (หากอยากใช้งาน function ภายนอก ควรเลือกใช้ public ครับ)
4. แนะนำ private สำหรับค่าที่ใช้ติดต่อกับ database ครับ เพราะจะได้ ห่อหุ่มข้อมูลส่วนนี้ครับ
5. แนะนำใช้ __constant กับการติดต่อ database ไว้เลยเพราะ __constant จะทำงานเป็น function แรกเสมอ กล่าวคือ แค่เรียกใช้ Class
$con = new myMysql(); ระบบก็จะติดต่อกับ database อัตโนมัติ สะดวก ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-05-19 21:32:58 By : geidtiphong
 


 

No. 11



โพสกระทู้ ( 410 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ขอบคุณทุก ๆ ท่านมากครับ ตอนนี้ได้ละ ^ ^ ทำแบบที่ พี่วินบอก และ แก้ไขเพิ่มเติมนิดหนึ่งใน File php.ini ครับ

แก้ตรงนี้ครับ เป็น on
\Code
display_errors = on

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-05-19 21:35:38 By : zero1150kfc
 


 

No. 12

Guest


สรุปอีกทีนะครับ กลัวงง
เมื่อ php เริ่มทำงาน มันจะอ่าน php.ini ก่อน ซึ่ง display_errors ในนั้นของคุณคงจะเป็น 0
เมื่อมัน compile โค้ดของคุณ หากเจอ Parse Error (Syntax Error) มันจะหยุด compile และแสดง error ทันที
แต่เพราะการตั้งค่าใน display_errors php.ini ของคุณ มันจึงไม่แสดง error ครับ
การใช้ error_reporting() และ ini_set() ในโค้ดของคุณไม่มีความหมาย เพราะมันไม่มีโอกาสได้ทำงาน (ตายก่อนจะไปถึง)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-05-19 21:37:25 By : .
 


 

No. 13



โพสกระทู้ ( 410 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 12 เขียนโดย : . เมื่อวันที่ 2014-05-19 21:37:25
รายละเอียดของการตอบ ::
ก๊าปผม ขอบคุณมากครับ

ตอบความคิดเห็นที่ : 10 เขียนโดย : geidtiphong เมื่อวันที่ 2014-05-19 21:32:58
รายละเอียดของการตอบ ::
ขอบคุณมากๆ อีกครั้งครับ ^ ^

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-05-19 21:43:24 By : zero1150kfc
 


 

No. 14



โพสกระทู้ ( 410 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 8 เขียนโดย : . เมื่อวันที่ 2014-05-19 21:32:23
รายละเอียดของการตอบ ::
ไม่รุ้จะกด ขอบคุณอย่างไง แต่ก็ขอบคุณมากๆ นะครับ สมาชิกเลยครับ ^ ^

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-05-19 21:44:45 By : zero1150kfc
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถาม php ไม่ แสดง Error ครับ สอบถามครับ เครื่องไม่แสดง Error งงๆๆ (คือประเด็นคือ พึ่งหัดจับ PHP)
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 05
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่