ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์Free Siteดู PHP+SQL ให้หน่อยครับ ดึงออกมาไม่สมบูรณ์
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: ดู PHP+SQL ให้หน่อยครับ ดึงออกมาไม่สมบูรณ์  (อ่าน 2691 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
iC1assicTh
สมุนแก๊งเสียว
*

พลังน้ำใจ: 48
ออฟไลน์ ออฟไลน์

กระทู้: 641



ดูรายละเอียด เว็บไซต์
« เมื่อ: 02 กุมภาพันธ์ 2014, 17:32:29 »

ผมงมมาแต่เช้าแล้วครับ - -* ไม่ผ่านซักที ผมจะดึงข้อมูลจาก ตาราง โดยกำหนด order by id=XXX

พอมันดึงออกมา ก็ออกนะครับแต่.. มันลดลงไป1 เช่น order by id=2 มันจะไปดึงข้อมูลของ id 1 มาแทนครับ

ผมเลยลอง order by id=2+1 อันนี้ผลออกมาถูกต้องครับ ดึง id 2 ออกมา

อีกปัญหาคือ มันจะดึงได้แค่ id 1 กับ 2 เท่านั้น แต่ผมมี 5 id เช่น   order by id=3+1 มันจะไม่อ่านของ id 3 ครับ มันดันไปอ่าน id 1

นี่ โค๊ดครับ

โค๊ด:
<?php
$getid 
$_GET[id];

$hostname "localhost";
$dbuser "root";
$dbpass "1234";
$dbname "blog";

$conn mysql_connect($hostname$dbuser$dbpass) or die ("Can&#39;t Connect to mysql");
mysql_query("SET NAMES utf8"$conn);
mysql_select_db("$dbname") or die ("can&#39;t Select db");

$str123 "SELECT * FROM pages order by id=$getid+1";
   
mysql_db_query ($dbname,"SET NAMES utf8");
$dbquery mysql_db_query($dbname$str123);

$num_rows mysql_num_rows($dbquery);

   
$i 0;
   while (
$i <= 1)
{
   
$result mysql_fetch_array($dbquery);
   
$p_name $result[page_name];
   
$p_url $result[page_url];
   
$p_title $result[page_title];
   
$p_keyword $result[page_keyword];
   
$p_desc $result[page_desc];
   
$p_content $result[page_content];
   
$i++;
}
   
mysql_close();

echo 
"$p_content";
    
?>


ช่วยดูทีครับ ปวดหัวตึ๊บๆ เปิดตำราก็แล้ว เซิร์สก็แล้ว  :'(

 wanwan017  wanwan017

แก้ได้แล้วนะครับ >> http://www.thaiseoboard.com/in...061.msg4718054.html#msg4718054
« แก้ไขครั้งสุดท้าย: 02 กุมภาพันธ์ 2014, 21:16:52 โดย iC1assicTh » บันทึกการเข้า

Freedomlover
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 207
ออฟไลน์ ออฟไลน์

กระทู้: 2,097



ดูรายละเอียด เว็บไซต์
« ตอบ #1 เมื่อ: 02 กุมภาพันธ์ 2014, 17:39:48 »

จะดึงมาเฉพาะ id ที่ต้องการหรือเปล่าครับ ถ้าใช่ก็เปลี่ยนจาก order by  เป็น  where ครับ
บันทึกการเข้า

โฮสติ้ง คุณภาพสูง ราคาเริ่มต้น 50 บาท/เดือน ทดลองใช้ฟรี 30 วัน
SSD VPS แรงๆ
จดโดเมนเพียง 400 บาท/ปี
ด้วยประสบการณ์กว่า 12 ปี  Tel 0840640213
sbaydee
Verified Seller
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 337
ออฟไลน์ ออฟไลน์

กระทู้: 1,622



ดูรายละเอียด
« ตอบ #2 เมื่อ: 02 กุมภาพันธ์ 2014, 17:40:03 »

 Tongue
งงกับจุดประสงค์ที่ต้องการ ปรกติ order by มันเซ็ตเป็น random,desc,asc ไม่ใช่หรอครับ ผมไม่เคยเอาเลขไปบวกกันแบบนั้น
ลองใช้ where แทนดูมั้ยครับน่าจะใช้ ผิดพลาดขออภัย
บันทึกการเข้า
siamlivehost
Verified Seller
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 156
ออฟไลน์ ออฟไลน์

กระทู้: 1,709



ดูรายละเอียด เว็บไซต์
« ตอบ #3 เมื่อ: 02 กุมภาพันธ์ 2014, 17:43:14 »

order by มันเอาไว้เรียงลำดับข้อมูลครับ

ถ้าคุณจะเลือกว่าเอา ID อะไรบ้าง ต้องใช้ where
บันทึกการเข้า


เร็ว แรง บริการดี เหตุผลที่ใคร ๆ ก็เลือกใช้ ZimpleCloud
Cloud SSD Web Hosting โฮสติ้ง Cloud SSD ไม่จำกัด Domain Linux VPS เร็ว แรง Free DirectAdmin รีสอร์ทอัมพวา
SL_master
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 57
ออฟไลน์ ออฟไลน์

กระทู้: 1,188



ดูรายละเอียด เว็บไซต์
« ตอบ #4 เมื่อ: 02 กุมภาพันธ์ 2014, 17:52:26 »

อ้างถึง
$str123 = "SELECT * FROM pages where id=$getid+1";
บันทึกการเข้า

iC1assicTh
สมุนแก๊งเสียว
*

พลังน้ำใจ: 48
ออฟไลน์ ออฟไลน์

กระทู้: 641



ดูรายละเอียด เว็บไซต์
« ตอบ #5 เมื่อ: 02 กุมภาพันธ์ 2014, 18:11:05 »

+1 ให้ทุกท่านนะคระบ แต่ตอนนี้ยังไม่ได้ Where id=$getid ไม่มีเออเร่อ แต่ ข้อมูลไม่แสดงครับ

เดียวพักก่อน ดึกๆผมมาทำใหม่ครับ ตอนนี้ เบลอมาก ทำอะไรไม่ถูกเลย งมมาแต่เช้า  wanwan022

ตอนนี้ Where แทน Order by แล้ว ข้อมูลไม่แสดงครับ แต่ Order by แสดง
บันทึกการเข้า

max30012540
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 196
ออฟไลน์ ออฟไลน์

กระทู้: 1,310



ดูรายละเอียด
« ตอบ #6 เมื่อ: 02 กุมภาพันธ์ 2014, 18:31:13 »

ลองใช้ PhpMyAdmin ช่วยสิครับ ทุกการดำเนินการจะมีคำสั่งขึ้นบอกอยู่แล้ว ก๊อบมาแก้ก็พอ Tongue
บันทึกการเข้า
SL_master
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 57
ออฟไลน์ ออฟไลน์

กระทู้: 1,188



ดูรายละเอียด เว็บไซต์
« ตอบ #7 เมื่อ: 02 กุมภาพันธ์ 2014, 19:45:59 »

พวกคำนวน กลัวมีบักเอาไปคำนวนข้างนอกก่อน แล้วค่อยเอามาใช้ครับ
เช่น

อ้างถึง
$id = $getid+1;
$str123 = "SELECT * FROM pages where id=$id";
บันทึกการเข้า

iC1assicTh
สมุนแก๊งเสียว
*

พลังน้ำใจ: 48
ออฟไลน์ ออฟไลน์

กระทู้: 641



ดูรายละเอียด เว็บไซต์
« ตอบ #8 เมื่อ: 02 กุมภาพันธ์ 2014, 21:15:35 »

ตอนนี้ ได้แล้วนะครับ

แก้ไป2จุดครับ

1.คือจุดที่ พี่ๆด้านบนบอก คือ "Order by" เป็น "where"

แต่อย่างที่ผมเจอปัญหานะครับ คือ ข้อมูลไม่ถูกดึงออกมา (ว่างเปล่า)

2.ผมเลยมาลองแก้ ตรง $i = 0; ผมลองแก้เป็น $i = 1;

จากนั้น ข้อมูลแสดงแล้วครับ แล้วก็ ไม่ต้องใช้ $getid+1 ด้วยครับ มันแสดงออกมาตรงตาม id ที่เรียกครับ ขอบคุณเฮียๆ ที่มาตอบครับ  wanwan017  wanwan017
บันทึกการเข้า

หน้า: [1]   ขึ้นบน
พิมพ์