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,037

HOME > PHP > PHP Forum > ช่วยดูโค้ดการเชื่อมตารางให้หน่อยครับ แสดงแต่ข้อมูลลำดับแรก



 

ช่วยดูโค้ดการเชื่อมตารางให้หน่อยครับ แสดงแต่ข้อมูลลำดับแรก

 



Topic : 132524



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



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




// ช่วยดูโค้ดการเชื่อมตาราง 2 ตารางให้หน่อยครับ คือมันดึงเฉพาะข้อมูลลำดับแรก ไม่ว่าจะเข้าด้วย User อะไร

โค้ดครับ


<?php

session_start();
error_reporting(~E_NOTICE);
include('../inc/connect.php');


mysqli_set_charset($objCon, "utf8");
$strSQL = "SELECT * FROM student_user WHERE id = '".$_SESSION['id']."' ";
$objQuery = mysqli_query($objCon,$strSQL);
$objResult = mysqli_fetch_array($objQuery,MYSQLI_ASSOC);

if($_SESSION['id'] == "")
{
echo "Please Login!";
exit();
}

if($_SESSION['status'] != "user")
{
echo "This page for User only!";
exit();
}

?>

<?php
session_start();
error_reporting(~E_NOTICE);
include('../inc/connect.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);
$objResult2 = mysqli_fetch_array($objQuery2,MYSQLI_ASSOC);

?>


///
ตารางที่ 1 คือ student_user (คีย์หลัก id) สำหรับ id_std คือรหัสประจำตัว นร. ในตาราง student_user

ตารางที่ 2 คือ status_score (คีย์หลัก id) สำหรับ id_std_sc คือรหัสประจำตัว นร. ในตาราง status_score

// ผมจะเชื่อมต่อข้อมูล 2 ตารางเพื่อดึงคะแนนจากตาราง ตารางที่ 2 โดยที่ในหน้านั้นมีข้อมูลสมาชิก และเข้าได้เฉพาะสมาชิกเท่านั้น
>> ผลปรากฎของโค้ดด้านบนคือ ไม่วา่จะเข้าด้วย User อะไร ระบบก็ดึงแต่คะแนนลำดับแรกของในตารางคะแนนมา
ไม่ทราบว่าผมใช้ Code ผิดไหมครับ



Tag : PHP, MySQL







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2018-11-09 12:31:20 By : ices View : 926 Reply : 8
 

 

No. 1



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

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

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


ไม่เห็นมีการ join อะไรสักอย่าง






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-11-09 12:42:48 By : Pong Thep
 


 

No. 2



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



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


เขียนเองหรือเปล่าครับ หรือก๊อปเขามาโดยไม่อ่าน

ตัวแปรแต่ละตัวมันมาได้ยังไง

เช่น $_SESSION['id'] คุณเอามาใช้ โดยไม่ได้มีการกำหนดค่า มันถูกกำหนดค่าจากตรงไหน อย่างไร มาได้ยังไง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-11-09 12:58:18 By : Chaidhanan
 

 

No. 3



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



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


ตอบความคิดเห็นที่ : 1 เขียนโดย : Pong Thep เมื่อวันที่ 2018-11-09 12:42:48
รายละเอียดของการตอบ ::
แล้วผมจะต้อง join ยังไงคับ มีตัวอย่างไหมครับ.

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-11-09 13:15:57 By : ices
 


 

No. 4



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



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


ตอบความคิดเห็นที่ : 2 เขียนโดย : Chaidhanan เมื่อวันที่ 2018-11-09 12:58:18
รายละเอียดของการตอบ ::
ผมเอามาจาก https://www.thaicreate.com/community/php-mysql-login-form-check-username-password.html
แต่นำมาโมเองอยู่บ้างเพราะเกิดปัญหา โมได้ตามโค้ดด้านบนครับ
ส่วนการกำหนดค่าจากตรงไหน อย่างไร มาได้ยังไง นั้น ผมไม่ทราบเพราะผมเปลี่ยนตามค่าตัวอย่าง ซึ่งมันก็ไม่ได้เกิดปัญหากับหน้าสมาชิกปกติในการเรียกข้อมูลในตาราง แต่จะมาเกิดปัญหากับการเชื่อมตาราง 2 ตารางกรณีนี้ครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-11-09 13:19:51 By : ices
 


 

No. 5



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



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

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
 


 

No. 6



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



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

การเขียน 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
 


 

No. 7



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



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


ตอบความคิดเห็นที่ : 6 เขียนโดย : Hararock เมื่อวันที่ 2018-11-09 14:45:30
รายละเอียดของการตอบ ::
+1 ครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-11-09 17:10:51 By : Jatmentz
 


 

No. 8



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



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


ขอโทษทีไม่ได้อ่านโค๊ดล่าง

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
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ช่วยดูโค้ดการเชื่อมตารางให้หน่อยครับ แสดงแต่ข้อมูลลำดับแรก
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 01
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 อัตราราคา คลิกที่นี่