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

HOME > PHP > PHP Forum > คือตอนนี้ติดปัญหาตรงที่เวลาเราค้นหาข้อมูลในช่อง textsearch แล้วระบุคำค้นหาเป็นชื่อข้อมูลจะแสดงดังรูปคะ



 

คือตอนนี้ติดปัญหาตรงที่เวลาเราค้นหาข้อมูลในช่อง textsearch แล้วระบุคำค้นหาเป็นชื่อข้อมูลจะแสดงดังรูปคะ

 



Topic : 036077



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



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




Code (PHP)
//----------------คำสั่ง SQL ให้เลือกใช้งานตาราง ------------------------------//
$sql = "SELECT * FROM data order by P_id desc";
//--------------กำหนดจำนวนข้อมูลแสดงผลต่อ 1 หน้า ---------------------------//
$per_page = 5;
//$page_start =0;
//-----------------------------------------------------------------------//
if ( !$page ) 
			$page = 1; 
			$prev_page = $page - 1; 
			$next_page = $page + 1; 
			$result = mysql_query( $sql ); 
			$page_start = ( $per_page * $page) - $per_page; 
			$num_rows = mysql_num_rows( $result ); 

if ( $num_rows <= $per_page )
			$num_pages = 1; 

else if ( ( $num_rows % $per_page ) == 0 )

			$num_pages = ( $num_rows / $per_page ); 

else
			$num_pages = ( $num_rows / $per_page ) + 1; 
			$num_pages = ( int ) $num_pages; 

if ( ( $page > $num_pages ) || ( $page < 0 ) ) 
			print "จำนวน $page มากกว่า $num_pages";

//-------------------คำสั่ง SQL กำหนดลิมิต ให้แสดงผลต่อ 1 หน้า---------------------------//
$sql .= " LIMIT $page_start, $per_page"; 
$result = mysql_query( $sql ); 
	
$dbquery = mysql_db_query($dbname,$sql);
$cols = 5; //กำหนดจำนวนคอลั่ม 
$c = $cols;
?>
<table width="100%" border="0"><tr>
<?
while($result = mysql_fetch_array( $dbquery)) {
$c --;
?>
<?
if($c == 0) {
$c = $cols;
?></tr> <? } } ?> </table>
<br /><br /><!- - แสดงผลจำนวนเรคคอร์ดของข้อมูล จำนวนหน้าและลิงค์หน้าต่อๆไป - - !>
รวม <b><?php echo $num_rows; ?></b>  แสดงอยู่ <b><?php echo $num_pages; ?></b> หน้า <br /> 

<?php //-------------------  สร้างปุ่มย้อนกลับ  -------------------------//
if ( $prev_page )
		echo "<a href=\"$PHP_SELF?page=$prev_page\">&lt;&lt;กลับไป </a>"; 
//---------------------  สร้างตัวเลขหน้า -----------------------------//
for ( $i=1; $i<=$num_pages; $i++ ) 
	{ 
		if ( $i != $page) 
				echo "[<a href=\"$PHP_SELF?page=$i"."&search_type=$search_type&text_search=$text_search\">$i</a>]";
		else 
				echo " <b>$i</b> "; 
	}
//-------------------- สร้างปุ่มเดินหน้า --------------------------------//
if ( $page != $num_pages ) 
		echo "<a href=\"$PHP_SELF?page=$next_page\"> หน้าต่อไป &gt;&gt;</a>"; 
?>
<?php 
//-------------ค้นหา	
if(isset($_POST['text_search']) && trim($_POST['text_search'])!= ""){						
    $txt_search = $_POST['text_search'];
	$search_type = $_POST['search_type'];	
echo "<br>".$search_type."<br>";

	switch ($search_type){
		case 2: $where = "P_id=" . $txt_search ; break;		
		case 3: $where = "Name LIKE '%" . $txt_search . "%'";	break; 
	}
	
	$sql_data = "SELECT P_id,Name,Address,Tel,Mobile,Fax,Email,Education,Course,
	Institution FROM data WHERE " .$where. " ORDER BY P_id desc LIMIT $page_start, $per_page";} 
	 
    else{$sql_data = "SELECT P_id,Name,Address,Tel,Mobile,Fax,Email,Education,Course,
	Institution FROM data ORDER BY P_id desc LIMIT $page_start, $per_page";}
	echo $sql_data;
   $data_result = mysql_db_query($dbname,$sql_data);
    mysql_close ($conn );
?>
<html>
<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style type="text/css">
<!--
.style2 {font-size: 16px; font-weight: bold; color: #FF0000;}
.style3 {color: #000000}
.style4 {color: #0000FF}
-->
</style>
</head>
<body onload='document.Add1.text_search.focus();'>
<table width="1300" border="1">
  <form action='Show1.php' method='post' >
    <tr>
      <td colspan="18" align='center' bgcolor="#00CCFF" class="style2 style3">แสดงข้อมูล</td>
    </tr>
    <tr>
      <td colspan="18" align='center' bgcolor="#00CCFF"><input name="text_search" type="text" value="<?=$txt_search?>">
	  
        <select name="search_type">
      <option value='1'type="<? search_type?>">-คำค้นหา-</option>
      <option value='2'type="<? search_type?>">รหัส</option>
      <option value='3'type="<? search_type?>">ชื่อ</option>
        </select>
      <input name="cmd_Search" type="submit" id="cmd_Search"value="ค้นหา">    </tr>
  </form>
  <tr align='center'>
    <td width="28" bgcolor="#00CC99"><span class="style4">ลำดับ</span></td>
    <td width="100" bgcolor="#00CC99"><span class="style4">ชื่อ</span></td>
    <td width="217" bgcolor="#00CC99"><span class="style4">ที่อยู่</span></td>
    <td width="95" bgcolor="#00CC99"><span class="style4">เบอร์โทรศัพท์</span></td>
    <td width="86" bgcolor="#00CC99"><span class="style4">มือถือ</span></td>
    <td width="93" bgcolor="#00CC99"><span class="style4">แฟกซ์</span></td>
    <td width="98" bgcolor="#00CC99"><span class="style4">อีเมลล์</span></td>
    <td width="76" bgcolor="#00CC99"><span class="style4">การศึกษา</span></td>
    <td width="158" bgcolor="#00CC99"><span class="style4">สาขา</span></td>
    <td width="165" bgcolor="#00CC99"><span class="style4">มหาวิทยาลัย</span></td>
    <td width="61" bgcolor="#00CC99"><span class="style4">แก้ไข</span></td>
    <td width="47" bgcolor="#00CC99"><span class="style4">ลบ</span></td>
  </tr>
<?php
if($data_result){	// ถ้ามีข้อมูลอยู่แล้วให้โชว์ data result
$i = 1;
while($rows = mysql_fetch_array($data_result)){//query ก็สอบถามไปยัง database โดยส่ง command ไป
//จะ return ค่า เป็น resource กลับมาก้อนนึง $data_result ก็คือค่า ที่เรามา fetch
//whileตัวนี้จะหลุดจาก loop เมื่อ มัน fetch หมดทุกๆ ค่า//mysql_fetch_array จะดึงค่า ออกมาที ละ row
//ถ้าเมื่อ fetch ค่าไม่หมดจะเป็น while( True )//เมื่อ fetch ค่าทุกๆ ออกมาหมดแล้ว จะเป็น while ( false )
//while ตัวนี้จะหลุดจาก loop เมื่อ มัน fetch หมดทุกๆค่าและหยุดการทำงาน					 
  $P_id = $rows['P_id'];
  $Name = $rows['Name'];
  $Address = $rows['Address'];
  $Tel = $rows['Tel'];
  $Mobile = $rows['Mobile'];
  $Fax = $rows['Fax'];
  $Email = $rows['Email'];
  $Education = $rows['Education'];
  $Course = $rows['Course'];
  $Institution = $rows['Institution'];
  
  //-----------ค้นหาตามคีย์เวิร์ด---------//  
  $keyword = $_POST['text_search'];// 	สมมติว่า keyword เท่ากับ text_search 
  $replace = "<span style='color:red'>{$keyword}</span>"; 		// ใส่สีให้ keyword
  $original = $Name; // string ทั้งหมดที่ query มา
  $Name = str_replace($keyword,$replace,$original); 
//-----------------
    echo $result;
	echo "<tr>";
	echo "<td align='center' bgcolor='#FF9933'>" . $i . "</td>" ;
	//echo "<td align='center'>" . $P_id . "</td>" ;
	echo "<td bgcolor='#FFFF99'>" . $Name . "</td>" ;
	echo "<td bgcolor='#FFFF99'>" . $Address. "</td>" ;
	echo "<td bgcolor='#FFFF99'>" . $Tel. "</td>" ;
	echo "<td bgcolor='#FFFF99'>" . $Mobile. "</td>" ;
	echo "<td bgcolor='#FFFF99'>" . $Fax. "</td>" ;
	echo "<td bgcolor='#FFFF99'>" . $Email. "</td>" ;
	echo "<td bgcolor='#FFFF99'>" . $Education. "</td>" ;
	echo "<td bgcolor='#FFFF99'>" . $Course. "</td>" ;
	echo "<td bgcolor='#FFFF99'>". $Institution."</td>" ;
	echo "<td align='center'bgcolor='#999999'><a href='Edit1.php?P_id=" .$P_id . "'>แก้ไข</a></td>" ;		
	echo "<td align='center'bgcolor='#999999'><a href='Delete1.php?P_id=" .$P_id . "'>ลบ</a></td>" ;
    echo "</tr>";

 $i++;
	}
}

//----------------- ปิดการเชื่อมต่อฐานข้อมูล -------------------------//
//mysql_close( $connect_mysql );
?>


คือตอนนี้ติดปัญหาตรงที่เวลาเราค้นหาข้อมูลในช่อง textsearch แล้วระบุคำค้นหาเป็นชื่อข้อมูลจะแสดงดังรูปคะ

1

แต่พอเวลาเราเลือกไปเพจที่2 ตรง textsearch มันไม่ส่งค่าไปให้เพจที่2เพื่อจะใช้คิวรี่ตรงชื่อนะคะ สังเกตว่า where มันหายไปไหนก็ไม่ทราบคะ ดังรูปคะ

2

ตอนนี้อยากจะให้เวลาเราเลือกค้นหาช่องของ textsearch ก็จะแสดงเป็น ป แล้วตรงคำค้นหาให้แสดงเป็น ชื่อ ค้างไว้แบบนั้น ไปทุกๆหน้าเพจที่เราค้นหาเลยคะหน้าไหนไม่มีข้อมูลก็ไม่แสดง ถ้าเราเลือกเพจ 2 หากเราต้องการกลับมาเพจ 1 ก้อจะยังคงแสดงเหมือนเดิม เราไปหน้าเพจ3 แล้วจะกลับมาเพจ 2 ก็ให้แสดงเหมือนเดิม แบบนี้ละคะ ใครพอจะมีแนวคิดดีดีมั่งคะ คิดยังไงก้อคิดต่อไม่ออกละคะ มันตันไปหมดเลยคะ รบกวนหน่อยนะคะ



Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2009-12-22 10:44:34 By : kakaka View : 1188 Reply : 12
 

 

No. 1



โพสกระทู้ ( 11,835 )
บทความ ( 10 )

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

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


f(isset($_POST['text_search']) && trim($_POST['text_search'])!= ""){
$txt_search = $_POST['text_search'];
$search_type = $_POST['search_type'];

ข้างบนเปลี่ยนจาก POST เป็น REQUEST

ถ้าอยากให้แสดงใน textbox ด้วยก็ echo ตรง value ของ textbox ด้วยครับ






Date : 2009-12-22 10:54:09 By : plakrim
 


 

No. 2

Guest


ผมตอบแบบเดา ๆ เอาหน่ะคับ ช่วยคิด ๆ

คือคุณค้นหาจาก ป ใช่ป่ะคับ แล้วทีนี้พอเลื่อนหน้าสอง มันหาย และเงื่อนไขไม่เข้า ผมว่าเป็นเพราะส่งค่า Post ไป มันจะแสดงได้เฉพาะหน้าแรก พอเปลี่ยนหน้าค่า Post มันจะหายไปหน่ะ

ลองเก็บเป็น Session แล้วใช้ค้นหาดูครับ หรือไม่ก้อส่งเป็นค่า GET
Date : 2009-12-22 10:57:27 By : ความรู้เท่าหางอึ่ง
 

 

No. 3



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



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


เหมือนเดิมคะ ตรง textbox เพจแรกแสดงอยู่อ่าคะ แต่พอคลิกไปเพจอื่น มันไม่แสดง

เอาเม้าท์ไปชี้ที่เพจ2มันแสดง http://localhost/Show1.php?page=3$search_type=3$text_search=ป
แต่มันทำไมไม่ส่งค่าไปคะ
Date : 2009-12-22 11:05:02 By : kakaka
 


 

No. 4



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



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


ได้แล้วคะพี่ plakrim ขอบคุณนะคะ
มะกี้หนูมึนนะคะ เลยว่ามะได้
ว่าแต่พี่plakrim ชื่อไรคะจะได้เรียกถุก
Date : 2009-12-22 11:20:16 By : kakaka
 


 

No. 5



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

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

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


พี่แกชื่อ ปลากริมไข่เน่า

เอ๊ยยย ปลากริม ไข่เต่า ครับ
Date : 2009-12-22 11:24:30 By : yomaster
 


 

No. 6



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



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


ขอถามอีกนิดนึงนะคะ ถ้าตอนที่ค้นหาข้อมูลมันมีทั้งหมดชื่อเดียวเราให้มันแสดงว่ารวม1แสดง1หน้าแล้วมีแค่หน้าเดียวนะคะไม่ต้องมีไป กลับนะคะ ตอนนี้มันบอกว่ามีข้อมูลทั้งหมด 16 แสดง 4หน้า ทั้งๆที่ตอนค้นหาไม่มีข้อมูลเลยมันก้อยังแสดงนะคะ
Date : 2009-12-22 11:25:48 By : kakaka
 


 

No. 7



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

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

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


Quote:
พี่แกชื่อ ปลากริมไข่เน่า

เดียวเพ่เขาก็จะบอกว่าไม่เอาชื่อให้ได้เปล่า ให้เบอร์ไปแทนล่ะกัน งิงิงิงิ(แซวเพ่อั๋นเล่น)
Date : 2009-12-22 12:00:28 By : somparn
 


 

No. 8



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



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


เดียวเพ่เขาก็จะบอกว่าไม่เอาชื่อให้ได้เปล่า ให้เบอร์ไปแทนล่ะกัน งิงิงิงิ(แซวเพ่อั๋นเล่น)

คุนๆน่ะเนี้ย
Date : 2009-12-22 12:09:41 By : parita
 


 

No. 9



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



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


เมื่อเรากลับมาหน้าเพจแรก คีย์เวิร์ด ที่เป้นสีแดง หายไปคะ ทำไงดีคะ
Date : 2009-12-23 08:51:39 By : kakaka
 


 

No. 10



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



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


แก้ได้แล้วคะ
Date : 2009-12-23 09:00:01 By : kakaka
 


 

No. 11



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



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


ขอถามอีกนิดนึงนะคะ ถ้าตอนที่ค้นหาข้อมูลมันมีทั้งหมดชื่อเดียวเราให้มันแสดงว่ารวม1แสดง1หน้าแล้วมีแค่หน้าเดียวนะคะไม่ต้องมีไป กลับนะคะ ตอนนี้มันบอกว่ามีข้อมูลทั้งหมด 16 แสดง 4หน้า ทั้งๆที่ตอนค้นหาไม่มีข้อมูลเลยมันก้อยังแสดงนะคะ
Date : 2009-12-23 09:01:39 By : kakaka
 


 

No. 12



โพสกระทู้ ( 11,835 )
บทความ ( 10 )

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

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


<?php
//-------------ค้นหา
if(isset($_POST['text_search']) && trim($_POST['text_search'])!= ""){
$txt_search = $_POST['text_search'];
$search_type = $_POST['search_type'];
echo "<br>".$search_type."<br>";

switch ($search_type){
case 2: $where = "P_id=" . $txt_search ; break;
case 3: $where = "Name LIKE '%" . $txt_search . "%'"; break;
}

$sql_data = "SELECT P_id,Name,Address,Tel,Mobile,Fax,Email,Education,Course,
Institution FROM data WHERE " .$where. " ORDER BY P_id desc LIMIT $page_start, $per_page";
$count = mysql_num_rows(mysql_db_query($dbname,$sql_data));
$sql_data .= " LIMIT $page_start, $per_page";
}
else{
$sql_data = "SELECT P_id,Name,Address,Tel,Mobile,Fax,Email,Education,Course,
Institution FROM data ORDER BY P_id desc";
$count = mysql_num_rows(mysql_db_query($dbname,$sql_data));
$sql_data .= " LIMIT $page_start, $per_page";
}
echo $sql_data;
$data_result = mysql_db_query($dbname,$sql_data);
mysql_close ($conn );
?>
รวม <b><?php echo $count; ?></b> แสดงอยู่ <b><?php echo ceil( $count / $per_page );?></b> หน้า

ประมาณนี้มั้ง
Date : 2009-12-23 10:47:16 By : plakrim
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : คือตอนนี้ติดปัญหาตรงที่เวลาเราค้นหาข้อมูลในช่อง textsearch แล้วระบุคำค้นหาเป็นชื่อข้อมูลจะแสดงดังรูปคะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 04
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่