الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكله في تخصيص البحث

بدأه majado2 في 13 أبريل 2009 · 4 رد · 519 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكــم ورحمـة الله وبركاتــه ،،

اخواني انا عندي مشكله في تخصيص البحث

عندما اقوم بالبحث عن الرقم 1

تظهر لي النتيجيه

1

123

125

2221

كل ما اريده عندما اقوم بالبحث عن الرقم واحد

تظهر لي النتيجيه 1

وهذا كود صفحتي حقت البحث لمن لديه خبره يعدل علييها شاكر لكم ...

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
<form id="form1" name="form1" method="post" action="N2.php">
  <label>
  <div align="center">
    <input name="t_1" type="text" id="t_1" />
  </div>
  </label>
  <div align="center">
    <input type="submit" name="Submit" id="button" value="إستعـلآم " />
  </div>
</form>
</body>
</html>
448e929608.jpg
#2

يا شباااب وينكم :(

على الاقل ..

كلمـه ولو جبــرٍ خآطر :nose_patch:

448e929608.jpg
#3

وعليكــم السـلام ورحمة الله وبركاتـه..

بإستخدام LIKE ..

Select **** from **** where *** LIKE '%$t_1%'

I Say Nothing

#4

السلام عليكــم ورحمـة الله وبركاتــه ،،

تفضل اخي هذا الكود, حيث انى قمت بتجربتة عندي , و قد عملت لك Customization , عدل حسب الجدول عندك. و نتائج البحث.

<form   method="post" action="PageName.php">

	<table width="51%" align="center" >
	<tr><td width="43%"><div>
				Search for:
				<br />
				<input name="keyword" type="text" id="keyword"  value="" size="50" />
			</div></td><td width="25%"><div>


			</div>
            </td>
			<td width="32%"><input type="submit" name="Find" id="button" value="        Find Results        " /></td>
			</tr>
			</table>

			</div>
	  </form>
	</div>



<? if((isset($Find)) &&($Find == "        Find Results        ") &&($keyword !="")  ){

	  $sql = "select * from $table_name where  Field = '".$keyword ."' order by Field DESC    ";
	  // add here your table name and field, i.e your number
	  // note the condition  Field = '".$keyword ."' , ( = , equality ) , here 1 exactly returned.
	  // if you write : like '%".$keyword ."%' , then this may return 1 , 12 , 115 , where there are 1 
	?>


</table>

<?php
mysql_select_db($database_config, $config);
$Record = mysql_query($sql, $config) or die(mysql_error());
$row = mysql_fetch_assoc($Record);
$totalRows = mysql_num_rows($Record);
?>

<table width="700" border="0" align="center" cellpadding="1" cellspacing="1" dir="ltr">
  <tr>

    <td>  Lable</td>
    <td>  Lable </td>
    <td>  Lable </td>
    <td>  Lable </td>
    <td>  Lable</td>

  </tr>
  <?php do { ?>
  <tr>
    <td><?=$row[' '];?></td>
	<td><?=$row[' '];?></td>
	<td><?=$row[' '];?></td>
	<td><?=$row[' '];?></td>
	<td><?=$row[' '];?></td>

  </tr>
  <?php } while ($row = mysql_fetch_assoc($Record));
  } // end of if
  ?>

</table>


</body>
</html>
<?php
mysql_free_result($Record);
?>

و في حال تريد البحث لعدة احتمالا , و لاكثر من field في نفس الجدول, يمكن تعديل جملة الاستعلام sql للشكل التالي:

$sql = "select * from $table_name where $Field1 like '%".$keyword ."%' or $Field2 like '%".$keyword ."%' or $Field3 like '".$keyword ."%' order by Field1 DESC ";

تذكر بأنة يمكن استبدال ( like , مشابهة للقيمة ) بي ( = , مطابق للقيمة ) لنفس الجملة , و حذف اشارة ( % ) من الجهتين .

أشكال اخرى من كتابة جملة البحث , لاحظ شارة ( % ).

" where $Field1 like '%".$keyword."%' OR $Field2  like '%".$keyword."%' OR $Field3  like '%".$keyword."%' OR $Field4  like '%".$keyword."%'     ";    


				 " where $Field1 = '".$keyword."' OR $Field2 = '".$keyword."' OR $Field3 = '".$keyword."' OR $Field4 ='".$keyword."' ";  


    	         " where $Field1 like '".$keyword."%' OR $Field2 like '".$keyword."%' OR $Field3  like '".$keyword."%'";  


				 " where $Field1 like '%".$keyword."' OR $Field2  like '%".$keyword."' OR $Field3  like '%".$keyword ."'";

بالتوفيق.

/ محمد

تم تعديل هذه المشاركة بواسطة Mohammad Hussein في 19 أبريل 2009 في 14:31

#5

استخدم المعامل = بدل من like فى جمله ال sql سيعطي النتيجة بالضبط

بالتوفيق

مواضيع مشابهة