รบกวนขอคำแนะนำด้วยครับ. ไม่สามารถดึงค่าตัวแปรที่อยู่นอกฟังก์ชั่นไปเปรียบเทียบค่าคำสั่ง SQLที่อยู่ในฟังก์ชั่นได้

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา รบกวนขอคำแนะนำด้วยครับ. ไม่สามารถดึงค่าตัวแปรที่อยู่นอกฟังก์ชั่นไปเปรียบเทียบค่าคำสั่ง SQLที่อยู่ในฟังก์ชั่นได้

รบกวนขอคำแนะนำด้วยครับ. ไม่สามารถดึงค่าตัวแปรที่อยู่นอกฟังก์ชั่นไปเปรียบเทียบค่าคำสั่ง SQLที่อยู่ในฟังก์ชั่นได้
จากตัวอย่างด้านล่างคือตัวแปรชื่อ $class จะเอาไปเปรียบเทียบค่ากับคำสั่ง SQL ที่อยู่ในฟังก์ชั่นเพื่อเลือกเฉพาะข้อมูลที่ต้องการในฐานข้อมูล Mysql  แต่กลับไม่สามารถนำตัวแปลที่อยู่นอกฟังชั่นก์ไปเปรียบเทียบค่าในฟังก์ชั่นได้.
แต่ในทางกลับกันถ้าลองประกาศตัวแปรไว้ด้านล่างของ function getRows(){  ตัวแปรกลับทำงานได้เป็นปกติ.

<?
 
$class = $_REQUEST['class'];  //รับค่ามา แต่นำไปเปรียบเทียบค่าที่อยู่ในฟังก์ชั่นไม่ได้
// $class =  2 ;  // แบบนี้ก็ไม่ได้
 
 ?>
 
<?php
class DB
{
 
function __construct(){
 
//database configuration
$dbServer = 'localhost'; //Define database server host
$dbUsername = 'root'; //Define database username
$dbPassword = ''; //Define database password
$dbName = 'school'; //Define database name
echo "$r_no"; 
 
//connect databse
$con = mysqli_connect($dbServer,$dbUsername,$dbPassword,$dbName);
 
if(mysqli_connect_errno()){
die("Failed to connect with MySQL: ".mysqli_connect_error());
}else{
$this->connect = $con;
 
}
}

 
function getRows(){
 
// $class = 2;  //(สมมุติกำหนดค่าให้เป็น 2 โปรแกรมทำงานได้เป็นปกติ)
 
 
$query = mysqli_query($this->connect,"SELECT * FROM `student` where imagede !='' and no = '$class' ORDER BY `orderby` ASC") or die(mysql_error());
while($row = mysqli_fetch_assoc($query))
{
$rows[] = $row;
}
return $rows;
}
 
function updateOrder($id_array){
$count = 1;
foreach ($id_array as $id){
$update = mysqli_query($this->connect,"UPDATE `student` SET `orderby` = $count WHERE num = $id");
$count ++;
}
return true;
}
}
 
 
$db = new DB();
?>
 

ขอบคุณครับ.
 


Giggstar 23-06-2016 23:49:47

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

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


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


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

 ความคิดเห็นที่ 1
ไม่ค่อยแน่ใจคำามที่ถาม แต่ลอง
กำหนดให้มีการรับค่าเข้าไปในฟังก์ชั่นดู
เป็น 
function getRows($class){
......

}


ninenik 24-06-2016
 ความคิดเห็นที่ 2
มันเป็น code การจัดเรียงรูปภาพแบบ  Drag and drop  ครับ. http://www.codexworld.com/drag-drop-images-reorder-using-jquery-ajax-php-mysql/
แต่ตรงคำสั่ง SQL แทนที่จะเลือกรูปภาพมาทั้งหมดจากฐานข้อมูล    ต้องการให้เลือกมาเฉพาะเรคคอร์ดที่มีรูปภาพและหมวดหมู่ที่ต้องการ ซึ่งหมวดหมู่ดังกล่าว ได้มาจากค่าของ  $_REQUEST['class']; ที่ส่งต่อมาอีกหน้าหนึ่งครับ.

ขอบคุณครับ.


giggstar 25-06-2016 04:20
 ความคิดเห็นที่ 3
ลองทำตามคำแนะนำแล้วก็ยังไม่ได้ครับ


giggstar 25-06-2016 09:25
1






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