|
|
|
ช่วยดูโค้ดการเชื่อมตารางให้หน่อยครับ แสดงแต่ข้อมูลลำดับแรก |
|
|
|
|
|
|
|
ไม่เห็นมีการ join อะไรสักอย่าง
|
|
|
|
|
Date :
2018-11-09 12:42:48 |
By :
Pong Thep |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เขียนเองหรือเปล่าครับ หรือก๊อปเขามาโดยไม่อ่าน
ตัวแปรแต่ละตัวมันมาได้ยังไง
เช่น $_SESSION['id'] คุณเอามาใช้ โดยไม่ได้มีการกำหนดค่า มันถูกกำหนดค่าจากตรงไหน อย่างไร มาได้ยังไง
|
|
|
|
|
Date :
2018-11-09 12:58:18 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?php
session_start();
error_reporting(~E_NOTICE);
include('../inc/connect.php');
$con->set_charset("utf8");//ดูด้วยว่า connect database ด้วยตัวแปลอะไร
//เรียกใช้ข้อมูล โดยมีเงื่อนไขตรงกับ $_SESSION['id'];
//ถ้าบอกว่าใช้ session แสดงว่าต้องมีการ login มาก่อนหน้านี้
//ถ้าไม่อย่างงั้น เอา session มาเช็คว่าเป็นใครคงไม่มีประโยค
$strSQL = "SELECT * FROM student_user WHERE id = '".$_SESSION['id']."' ";
$objQuery = mysqli_query($objCon,$strSQL)or die ("Error Query [".$strSQL."]");
$objResult = mysqli_fetch_array($objQuery);
//ตรวจสอบการ login
if($_SESSION['id'] == "")
{
echo "Please Login!";
exit();
}
//ตรวจสอบ สถานะ
if($_SESSION['status'] != "user")
{
echo "This page for User only!";
exit();
}
?>
<?php
//กำหนด คีหลักให้ถูกต้อง และศึกษาวิธีการใช้ PK และ FK ให้ดี
//ส่วนเงื่อนไขจะใช้ inner join หรือ where ก็ว่ากันไป
$strSQL2 = "SELECT * FROM student_user,status_score WHERE student_user.id_std = status_score.id_std";
$objQuery2 = mysqli_query($objCon,$strSQL2)or die ("Error Query [".$strSQL2."]");
//แสดงข้อมูลทั้งหมดที่ตรงกับเงื่อนไข {
while($objResult2 = mysqli_fetch_array($objQuery2)){
echo $objResult2['std_name'];
}
//}
?>
|
|
|
|
|
Date :
2018-11-09 14:02:21 |
By :
nobetaking |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
การเขียน Program หรือ Function อะไรก็ตาม ไม่ Copy มามั่วๆแล้ว รัน น่ะครับ
=====================================================
เทคนิค ของผม
1. อ่านจาก ตัวอย่าง
2. ดูการไหล การทำงานของระบบ
3. ดู Databases วิธีการเข้าของข้อมูล
4. ดู From แต่ละอัน ว่ามี รับ ส่ง $_GET OR $_POST
5. กลับไปทำ 1-4 ใหม่จนกว่าจะเข้าใจ
6. ลงมือทำให้รูปแบบของเรา
7. Debugging หา Errors
8. Test จนกว่าจะผ่านและ ถูกต้อง
9. ไม่ไหวจริงๆ ค่อยไปถามผู้รู้ครับ
=====================================================
เป็นเทคนิคง่ายๆในการพัฒนาตัวเอง และ Skills In your Brains
|
|
|
|
|
Date :
2018-11-09 14:45:30 |
By :
Hararock |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอโทษทีไม่ได้อ่านโค๊ดล่าง
Code (PHP)
mysqli_set_charset($objCon, "utf8");
$strSQL2 = "SELECT student_user.*,status_score.* FROM student_user,status_score WHERE student_user.id_std = status_score.id_std_sc";
$objQuery2 = mysqli_query($objCon,$strSQL2);
//////////////////////////////////////////////////////////////
// คำสั่งนี้ มันเรียกแค่ record เดียว
$objResult2 = mysqli_fetch_array($objQuery2,MYSQLI_ASSOC);
//////////////////////////////////////////////////////////////
// ให้เปลี่ยนเป็น
while( $objResult2 = mysqli_fetch_array($objQuery2,MYSQLI_ASSOC)){
// ตรงนี้จะเป็นโค๊ดแสดงข้อมูลที่ละ record
}
หรือ ถ้าต้องการให้แสดงข้อมูลตามต้องการ ก็ต้องใส่ where id ที่ต้องการเข้าไปด้วย
ที่คุณทำ คุณแค่ join และอ้าง อิง ข้อมูลใน ตาราง เท่านั้น ไม่ได้มีการกำหนดข้อมูลที่รับ request เข้ามา
SELECT student_user.*,status_score.*
FROM student_user,status_score
WHERE student_user.id_std = status_score.id_std_sc
and student_user.id_std = ?
เครื่องหมายคำถาม คือตัวแปรที่ได้รับ request มาอาจจะเป็น session[id] ก็ได้
|
|
|
|
|
Date :
2018-11-09 17:54:44 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|