|
|
|
เกี่ยวกับการ search ครับ - ผมต้องการ search จาก texfilde หลาย texfiled อะครับ |
|
|
|
|
|
|
|
หมายถึงแสดงผลหรือเปล่าครับ
ถ้าใข่ให้เอาลูปครอบตัวแสดงผลได้เลย มันจะทำการรันเองโดยที่มันรู้โดยอัตโนมัติ
เพราะถ้าคิวรี่มาแล้วมันจะมาเป็นชุดน่ะครับ
ถ้าเราสั่งแสดงผลมันจะแสดงแค่ครั้งแรก แต่ถ้าครอบลูปให้มัน มันจะแสดงตัวถัดไปเรื่อยตามลูปของเราน่ะครับ
|
|
|
|
|
Date :
2009-03-12 23:53:42 |
By :
เด็กชาย กอ ไก่ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คือแบบนี้ครับ ใสค่าที่เราค้นหาจากฟร์อมครับ ซึ่งฟอร์จะประกอบไปด้วย
ค้นหาโดย ใส่รหัส<input name="search1" type="text" id="search1">
ค้นหาโดยใส่ ชื่อ <input name="search2" type="text" id="search2">
ค้นหาโดยใส่ นามสกุล ครับ<input name="search3" type="text" id="search3">
พอรับค่าจากฟร์อมเสร็จก็ไปที่คำสั่งค้นหา ตามโค๊ดที่อยู่ด้านบนครับ
|
|
|
|
|
Date :
2009-03-13 00:00:46 |
By :
taknaja |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คือเวลาแสดงผลมันออกมา แค่ฟิล์ดเดียวใช่ไหมครับ เช่น รหัสออก ชื่อ กับ นามสกุลไม่ออก แต่ข้อมูลออกครบทุก เรคอร์ด ผมเข้าใจถูกมะ
ถ้าเป็นแบบนี้ ขอดูโค้ตัวแสดงผลหน่อยครับ เพราะเท่าที่ผมดู โค้ดด้านบนเหมือนจะไม่มีตัวแสดงผล อาจเพราะก๊อปมาไม่หมด
ขนาด else ยังไม่จบเลย ขอดูโค้ดเต็มๆได้ไหมครับ จะได้เข้าใจง่ายขึ้นว่า ส่วนแสดงผลมันสอดคล้องกับส่วนรับข้อมูลมาหรือเปล่า
|
|
|
|
|
Date :
2009-03-13 00:04:49 |
By :
เด็กชาย กอ ไก่ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เสนอแนวคิดนะครับ ถ้าต้องการ search จากหลายๆฟิวด์ ก็ใช้คำสั่ง or เช่น
Code (PHP)
<?php
$sql="SELECT * FROM tb_name WHERE field_1 ='$condition1' OR field_2 ='$condition2' ";
?>
ตรงนี้ค่ตัวอย่างนะครับ ลองเอาไปประยุกต์ดูนะครับ
|
|
|
|
|
Date :
2009-03-13 00:18:55 |
By :
zepherus |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?php
$con_db=mysql_pconnect("localhost","root","")or die("ไม่สามารถติดต่อฐานข้อมูลได้");
$db = mysql_select_db("it_system")or die ("ไม่สามารถเลือกฐานข้อมูลได้");
$code = $_POST["search1"];
$firstname = $_POST["search2"];
$lastname = $_POST["search3"];
$sql = "SELECT * FROM time_table WHERE 1=1";
if($code != "")
$sql .= " AND code = '" . $code . "'";
if($firstname != "")
$sql .= " AND firstname like '%" . $firstname . "%'";
if($lastname != "")
$sql .= " AND lastname like '%" . $lastname . "%'";
$query=mysql_query($sql);
if(mysql_num_rows($query) != 0){
while($rows = mysql_fetch_array($query)){
จัดไปตรงนี้
}
}else{
ไม่พบข้อมูล ฟ้องไปเลย
}
?>
|
|
|
|
|
Date :
2009-03-13 00:24:01 |
By :
plakrim |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แล้วแต่เงื่อนไขนะครับ อยาก or ก็ or อยาก and ก็ and
|
|
|
|
|
Date :
2009-03-13 00:24:45 |
By :
plakrim |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
WHERE 1=1มันคืออะไรครับ
|
|
|
|
|
Date :
2009-03-13 00:45:33 |
By :
taknaja |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
while($rows = mysql_fetch_array($query)){
จัดไปตรงนี้
ให้ทำอะไรครับ งง
|
|
|
|
|
Date :
2009-03-13 01:07:21 |
By :
taknaja |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คือมันงงตรงตำแหน่ง อะครับ ว่ามันจะใส่ผลลัพท์ตรงไหน ผมเขียนแบบนี้ครับ
<?php
$con_db=mysql_pconnect("localhost","root","")or die("ไม่สามารถติดต่อฐานข้อมูลได้");
$db = mysql_select_db("it_system")or die ("ไม่สามารถเลือกฐานข้อมูลได้");
$student_id = $_POST["search1"];
$first_name = $_POST["search2"];
$last_name = $_POST["search3"];
$sql = "SELECT * FROM time_table WHERE 1=1";
if($code != "")
$sql .= " AND student_id = '" . $student_id . "'";
if($firstname != "")
$sql .= " AND first_name like '%" . $first_name . "%'";
if($lastname != "")
$sql .= " AND last_name like '%" . $last_name . "%'";
$query=mysql_query($sql);
if(mysql_num_rows($query) != 0){
while($rows = mysql_fetch_array($query))
{
?>
<?=$result['subject_code'];?>
<?
}
?>
<?
}else{
echo "no";
}
?>
|
|
|
|
|
Date :
2009-03-13 01:20:37 |
By :
taknaja |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?php
$con_db=mysql_pconnect("localhost","root","")or die("ไม่สามารถติดต่อฐานข้อมูลได้");
$db = mysql_select_db("it_system")or die ("ไม่สามารถเลือกฐานข้อมูลได้");
$student_id = $_POST["search1"];
$first_name = $_POST["search2"];
$last_name = $_POST["search3"];
$sql = "SELECT * FROM time_table WHERE 1=1";
if($code != "")
$sql .= " AND student_id = '" . $student_id . "'";
if($firstname != "")
$sql .= " AND first_name like '%" . $first_name . "%'";
if($lastname != "")
$sql .= " AND last_name like '%" . $last_name . "%'";
$query=mysql_query($sql);
if(mysql_num_rows($query) != 0){
while($rows = mysql_fetch_array($query)){
echo $rows['subject_code']; // ตรงนี้นั่นแหละ ผมใช้ $rows แต่คุณใช้ $result
}
}else{
echo "not found.";
}
?>
|
|
|
|
|
Date :
2009-03-13 01:24:13 |
By :
plakrim |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อ้อ ขอโทษทีครับ ดึก ๆ มันเบลอ ๆ ครับ เลย ไม่รอบคอบ แต่ยังไงต้องขอบคุณครับ อยู่ช่วงการเรียนรู้อะครับ ต้องรบกวนบ่อย หน่อย ขอบคุณมากนะครับ
|
|
|
|
|
Date :
2009-03-13 01:31:35 |
By :
taknaja |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คืองี้มันยังไม่ได้อะครับ
|
|
|
|
|
Date :
2009-03-13 01:57:08 |
By :
taknaja |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มันโชวน์ออกมาหมดเลยอะครับไม่ได้โชวน์ตามเงื่อนไขที่ใส่ไป
|
|
|
|
|
Date :
2009-03-13 01:59:39 |
By :
taknaja |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คือมันค้นได้แต่ เงือนไขแรกครับ พอค้นฟิวที่ 2 มันไม่มีค่าอะไรเลย มันขึ้นข้อมูลมาหมดเลยครับ
|
|
|
|
|
Date :
2009-03-13 02:57:39 |
By :
taknaja |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
รอคำตอบอยู่ครับ
|
|
|
|
|
Date :
2009-03-13 08:30:35 |
By :
taknaja |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าปล่อยฟิลด์ไหนว่า แสดงว่า ต้องการหาข้อมูลทั้งหมด ใช่รึป่าว
ปกติส่วนมากก็จะทำแบบนี้อ่ะค่ะ
เช่น ใส่ข้อมูลในฟิลด์ firstname แล้ว ปล่อยว่างในฟิลด์ lastname
ความหมายก็คือ ต้องการหา firstname แล้ว lastname อะไรก็ได้
ถ้าไม่ใส่ฟิลด์หรือไม่ได้เลือกอะไรเรย ก็จะเป็นการค้นหาข้อมูลทั้งหมด มันก็จะโชว์ข้อมูลทั้งหมด
เข้าใจถูกไหม
|
|
|
|
|
Date :
2009-03-13 15:03:30 |
By :
Jewels |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใช่แล้วครับ
|
|
|
|
|
Date :
2009-03-13 15:33:28 |
By :
taknaja |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ต้องทำอย่างไงอะครับ ลองหลายวิธีแล้วไม่ได้อะครับ ช่วยด้วยครับ
|
|
|
|
|
Date :
2009-03-13 15:34:18 |
By :
taknaja |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
รออยู่นะครับ
|
|
|
|
|
Date :
2009-03-13 15:56:17 |
By :
taknaja |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แล้วตอนนี้มันเป็นยังไงอ่ะ ปัญหาอ่ะ ที่ว่ามันโชว์ออกมาหมด คือว่า ไม่ว่าจะใส่ฟิลด์ไหน หรือไม่ใส่เรย ก็ออกมาหมดเรย ใช่รึป่าว
|
|
|
|
|
Date :
2009-03-13 16:00:04 |
By :
Jewels |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ปล่าวครับคือ จากโค๊ดด้านบน มัน ค้นหาได้แค่ textfiled ครับ อยากให้มันค้นหาได้ทั้ง 3 texfiled8 ครับ
textfild 1 ค้นหาจาก รหัสนักศึกษา
textfild 2 ค้นหาจาก ชื่อ
textfild 3 ค้นหาจาก นามสกุลครับ ตอนนี้มันค้นได้แค่ รหัสนักศึกษา พอใส่คำค้นหาใน textfiled มันก็แสดงข้อมูลทั้งหมดที่อยู่ ดาต้าเบสออกมาหมดเลยครับ
|
|
|
|
|
Date :
2009-03-13 16:09:24 |
By :
taknaja |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?php
<?php
$con_db=mysql_pconnect("localhost","root","")or die("ไม่สามารถติดต่อฐานข้อมูลได้");
$db = mysql_select_db("it_system")or die ("ไม่สามารถเลือกฐานข้อมูลได้");
$student_id = $_POST["search1"];
$first_name = $_POST["search2"];
$last_name = $_POST["search3"];
$sql = "SELECT * FROM time_table WHERE 1=1";
if($_POST["search1"] != "")
$sql .= " AND student_id = '" . $student_id . "'";
if($_POST["search2"] != "")
$sql .= " AND first_name like '%" . $first_name . "%'";
if($_POST["search3"] != "")
$sql .= " AND last_name like '%" . $last_name . "%'";
$query=mysql_query($sql);
if(mysql_num_rows($query) != 0){
while($rows = mysql_fetch_array($query)){
echo $rows['subject_code'];
}
}else{
echo "not found.";
}
?>
?>
|
|
|
|
|
Date :
2009-03-13 16:27:40 |
By :
Jewels |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?php
$con_db=mysql_pconnect("localhost","root","")or die("ไม่สามารถติดต่อฐานข้อมูลได้");
$db = mysql_select_db("it_system")or die ("ไม่สามารถเลือกฐานข้อมูลได้");
$student_id = trim($_POST["search1"]);
$first_name = trim($_POST["search2"]);
$last_name = trim($_POST["search3"]);
$sql = "SELECT * FROM time_table WHERE 1=1";
if($student_id != "")
$sql .= " AND student_id = '" . $student_id . "'";
if($first_name != "")
$sql .= " AND first_name like '%" . $first_name . "%'";
if($last_name != "")
$sql .= " AND last_name like '%" . $last_name . "%'";
$query=mysql_query($sql);
if(mysql_num_rows($query) != 0){
while($rows = mysql_fetch_array($query)){
echo $rows['subject_code']; // ตรงนี้นั่นแหละ ผมใช้ $rows แต่คุณใช้ $result
}
}else{
echo "not found.";
}
?>
ขออำภัย พิมพ์ถูกพิมพ์ผิด
|
|
|
|
|
Date :
2009-03-13 16:33:20 |
By :
plakrim |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
พิมพ์ผิดตรงไหนเหรอครับ
|
|
|
|
|
Date :
2009-03-13 16:38:26 |
By :
taknaja |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อ่านะ คุณ PlaKriM ก็ว่าอยุ่ว่า ตัวแปรมาจากไหน ไม่แน่ใจว่าพิมพ์ผิดรึป่าวเรยใส่ เป็น $_POST ไปเรยเพื่อความชัวร์ อิอิ
|
|
|
|
|
Date :
2009-03-13 16:39:25 |
By :
Jewels |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่ได้อะครับ เหมือนเดิม ได้แต่ เงื่อนไขแรก 2 3 ไม่ได้อะครับ
|
|
|
|
|
Date :
2009-03-13 16:43:27 |
By :
taknaja |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อย่างนั้นลองแบบนี้ว่าได้ป่าว
Code (PHP)
<?php
$con_db=mysql_pconnect("localhost","root","")or die("ไม่สามารถติดต่อฐานข้อมูลได้");
$db = mysql_select_db("it_system")or die ("ไม่สามารถเลือกฐานข้อมูลได้");
$student_id = trim($_POST["search1"]);
$first_name = trim($_POST["search2"]);
$last_name = trim($_POST["search3"]);
/*$sql = "SELECT * FROM time_table WHERE 1=1";
if($student_id != "")
$sql .= " AND student_id = '" . $student_id . "'";
if($first_name != "")
$sql .= " AND first_name like '%" . $first_name . "%'";
if($last_name != "")
$sql .= " AND last_name like '%" . $last_name . "%'"; */
$sql = "select * from time_table where student_id like '%$student_id%' AND first_name like '%$first_name%' AND last_name like '%$last_name%' ";
$query=mysql_query($sql);
if(mysql_num_rows($query) != 0){
while($rows = mysql_fetch_array($query)){
echo $rows['subject_code']; // ตรงนี้นั่นแหละ ผมใช้ $rows แต่คุณใช้ $result
}
}else{
echo "not found.";
}
?>
|
|
|
|
|
Date :
2009-03-13 16:54:04 |
By :
Jewels |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่ได้อะครับ มีค่าเท่ากัน ค้นหาได้แค่ textfiled แรก
|
|
|
|
|
Date :
2009-03-13 19:32:27 |
By :
taknaja |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ได้แล้วครับ เป็นผมที่ผิดพลาดเองครับ พอดีลอง ให้มันโชวน์ค่าที่รับ มา จาก textfild ดู ปรากฏว่ามันมาไม่ครบ ไม่รู้ว่าเป็นเพราะอะไร เลยลอง สร้าง textfiled ขึ้นมาใหม่ ปรากฏว่า ได้ครับ มีปัญหาที่ตัวผมเองครับ ขอบคุณนะครับ
|
|
|
|
|
Date :
2009-03-13 20:10:33 |
By :
taknaja |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|