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

سؤال عن البحث بقواعد البيانات

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

بسم الله الرحمن الرحيم

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

سؤال هو عن البحث بقواعد بيانات SQL عن طريق اكواد PHP سوف اختصر موضوعي بعده نقاط وصور توضيحية لما اريده

01.gif

بالصور المرفقه ما يوضح سؤالي ،، اي اني قسم الصفحة إلى :

- فورم لإدخال البيانات

- فورم البحث عن البيانات المدخلة بالقاعده

- عرض البيانات المراد البحث عنها

--------------------------------------

عشان يكون الموضوع له إفاده للجميع ،، راح ادعم الموضوع بأمثله عملية .

اسم قاعده البيانات : demo

اسم المستخدم : root

الرقم السري : (غير مهم أو )123 للتطبيق لان السيرفر الشخصي مو لازم نحدد باسوورد

اسم الجدول : demo_table

راح اعرض الجداول الي راح نستخدمها ، وهي :

CREATE TABLE `demo_table` (
  `id` int(100) NOT NULL auto_increment,
  `file` text NOT NULL,
  `name` text NOT NULL,
  `email` text NOT NULL,
  `country` text NOT NULL,
  `pp` text NOT NULL,
  `others` text NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;

متكونه من /

- id

-file

-name

-email

-country

-pp

-others

------------------------------------------------------------------------

بالبرنامج عندنا 3 ملفات

- index.php

-config.php

-send.php

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

الملف الثاني معلومات الاتصال بقاعده البيانات

الملف الثالث لإرسال البيانات للقاعده

-----------------------------------------------------------------------

[ index.php ]

<?php
$name=$_POST['find'];

function zippax($str){
$str = preg_replace('#(<[^>]+[\s\r\n\"\'])(on|xmlns)[^>]*>#iU',"$1>",$str);
$str = preg_replace('#([a-z]*)[\x00-\x20]*=[\x00-\x20]*([\`\'\"]*)[\\x00-\x20]*j[\x00-\x20]*a[\x00-\x20]*v[\x00-\x20]*a[\x00-\x20]*s[\x00-\x20]*c[\x00-\x20]*r[\x00-\x20]*i[\x00-\x20]*p[\x00-\x20]*t[\x00-\x20]*:#iU','$1=$2nojavascript...',$str);
$str = preg_replace('#([a-z]*)[\x00-\x20]*=([\'\"]*)[\x00-\x20]*v[\x00-\x20]*b[\x00-\x20]*s[\x00-\x20]*c[\x00-\x20]*r[\x00-\x20]*i[\x00-\x20]*p[\x00-\x20]*t[\x00-\x20]*:#iU','$1=$2novbscript...',$str);
$str = preg_replace('#</*\w+:\w[^>]*>#i','',$str);
do {
$oldstr = $str;
$str = preg_replace('#</*(\?xml|applet|meta|xml|blink|link|style|script|object|iframe|frame|frameset|ilayer|
layer|bgsound|title|base)[^>]*>#i',"",$str);
} while ($oldstr != $str);
return $str;
}
/* secure*/
$name=zippax($name);


/*
database config
*/
$con=@ mysql_pconnect('localhost','demo','');
$db=@ mysql_query('demo ',$con);

/*
sql
*/
$sql=@ mysql_query("select * from demo where file  '%$name%'",$con);






?>





<html dir="ltr">

<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>zippax</title>
<style>
<!--
.almost_half_cell{max-width:400;width:49%}-->
</style>
</head>

<body bgcolor="#EEEEEE">
<body topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0" marginwidth="0" marginheight="0">
<body topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0" marginwidth="0" marginheight="0">
<div align="left">
	<table border="0" width="550" cellspacing="0" cellpadding="0">
		<tr>
			<td align="center">
			<table border="0" width="500" cellspacing="0" cellpadding="0" dir="rtl">
				<tr>
					<td> </td>
				</tr>
				<tr>
					<td>
					<div align="center">
						<table border="0" width="500" cellspacing="0" cellpadding="0">
							<tr><form action="send.php" method="post">
								<td dir="ltr" width="324">
								<input type="text" name="file" size="40" style="border: 1px solid #FF0000"></td>
								<td dir="ltr" width="28" align="center">
								<font face="Tahoma" size="2" color="#FF0000">:</font></td>
								<td dir="ltr" width="95">
								<font face="Tahoma" size="2" color="#FF0000">
								File No.</font></td>
							</tr>
							<tr>
								<td dir="ltr" width="324">
								<font face="Tahoma" size="1" color="#808080">
								»TELEPHONE NO.</font><font face="Tahoma" size="1" color="#C0C0C0"><br>
 </font></td>
								<td dir="ltr" width="28" align="center"> </td>
								<td dir="ltr" width="95"> </td>
							</tr>
							<tr>
								<td dir="ltr" width="324">
								<input type="text" name="name" size="40" style="border: 1px solid #C0C0C0"></td>
								<td dir="ltr" width="28" align="center">
								<font face="Tahoma" size="2" color="#808080">:</font></td>
								<td dir="ltr" width="95">
								<font face="Tahoma" size="2" color="#808080">
								Name</font></td>
							</tr>
							<tr>
								<td dir="ltr" width="324">
								<input type="text" name="email" size="40" style="border: 1px solid #C0C0C0"></td>
								<td dir="ltr" width="28" align="center">
								<font face="Tahoma" size="2" color="#808080">:</font></td>
								<td dir="ltr" width="95">
								<font face="Tahoma" size="2" color="#808080">
								E-mail</font></td>
							</tr>
							<tr>
								<td dir="ltr" width="324">
								<input type="text" name="country" size="40" style="border: 1px solid #C0C0C0"></td>
								<td dir="ltr" width="28" align="center">
								<font face="Tahoma" size="2" color="#808080">:</font></td>
								<td dir="ltr" width="95">
								<font face="Tahoma" size="2" color="#808080">
								Country</font></td>
							</tr>
							<tr>
								<td dir="ltr" width="324">
								<input type="text" name="pp" size="40" style="border: 1px solid #C0C0C0"></td>
								<td dir="ltr" width="28" align="center">
								<font face="Tahoma" size="2" color="#808080">:</font></td>
								<td dir="ltr" width="95">
								<font face="Tahoma" size="2" color="#808080">
								Present post</font></td>
							</tr>
							<tr>
								<td dir="ltr" width="324">
								<input type="text" name="others" size="40" style="border: 1px solid #C0C0C0"></td>
								<td dir="ltr" width="28" align="center">
								<font face="Tahoma" size="2" color="#808080">:</font></td>
								<td dir="ltr" width="95">
								<font face="Tahoma" size="2" color="#808080">
								Others</font></td>
							</tr>
							<tr>
								<td dir="ltr" width="324"><br>
								<input type="submit" value="SEND" name="B1" style="color: #FFFFFF; border: 1px solid #C0C0C0; background-color: #FF0000"></td>
								<td dir="ltr" width="28" align="center"> </td>
								<td dir="ltr" width="95"> </td>

								</form>
							</tr>
						</table>
					</div>
					</td>
				</tr>
			</table>
			</td>
		</tr>
	</table>
</div>

<div align="left">
	<table border="0" width="550" cellspacing="0" cellpadding="0">
		<tr>
			<td align="center">
			<table border="0" width="500" cellspacing="0" cellpadding="0" dir="rtl">
				<tr>
					<td><br>
 <hr>
					<p> </td>
				</tr>
				<tr>
					<td>
					<div align="center">
						<table border="0" width="500" cellspacing="0" cellpadding="0">
							<tr><form action="index.php" method="post">
								<td dir="ltr" width="324">
								<input type="text" name="find" size="40" style="border: 1px solid #FF0000"></td>
								<td dir="ltr" width="28" align="center">
								<font face="Tahoma" size="2" color="#FF0000">:</font></td>
								<td dir="ltr" width="95">
								<font face="Tahoma" size="2" color="#FF0000">
								Search for a file</font></td>
							</tr>
							<tr>
								<td dir="ltr" width="324"><br>
								<input type="submit" value="SEARCH" name="B2" style="color: #FF0000; border: 1px solid #FF0000; "><p>
								<font face="Tahoma" size="2">
								<a href="view.php"><font color="#FF0000">view 
								all User.(s)</font></a></font></td>
								<td dir="ltr" width="28" align="center"> </td>
								<td dir="ltr" width="95"> </td>

								</form>
							</tr>
						</table>
					</div>
					</td>
				</tr>
			</table>
			</td>
		</tr>
	</table>
</div>

<div align="left">
	<table border="0" width="550" cellspacing="0" cellpadding="0">
		<tr>
			<td align="center">
			<table border="0" width="500" cellspacing="0" cellpadding="0">
				<tr>
					<td><br>
 <hr>
					<table border="1" width="100%" cellspacing="0" cellpadding="0" bordercolorlight="#EEEEEE" bordercolordark="#EEEEEE">
						<tr>
							<td bgcolor="#D1D1D1" bordercolorlight="#808080" bordercolordark="#808080">
							<table border="0" width="100%" cellspacing="0" cellpadding="0">
								<tr>
									<td width="4"> </td>
									<td>
									<p dir="ltr" align="left"><b>
								<font face="Tahoma" size="2" color="#808080">
									» SEARCH TOTAL</font></b></td>
									<td width="4"> </td>
								</tr>
							</table>
							</td>
						</tr>
					</table>
					<table border="0" width="100%" cellspacing="0" cellpadding="0">
						<tr>
							<td> </td>
						</tr>
					</table>
					<table border="0" width="100%" cellspacing="0" cellpadding="0">
						<tr>
							<td>
							<p dir="ltr" align="left">
							<font face="Tahoma" size="2">
								<?php  $result=@ mysql_affected_rows();
if($result ==0){
echo "NONE";
exit;
}
echo "SEARCH TOTAL";
while($row=@ mysql_fetch_array()){
$name_row=$row['file'];
echo "<center><font color='red'>$name</font>"."<br></center>";
} ?></font></td>
						</tr>
					</table>
					</td>
				</tr>
				</table>
			</td>
		</tr>
	</table>
</div>

</body>

</body>

</html>

[ config.php ]

<?php
$host="localhost";
$username="root";
$password="";
$db_name="demo";
$tbl_name="demo_table";


mysql_connect($localhost,$username,$password)or die(mysql_error());
mysql_selectdb($db_name)or die(mysql_error());

$sql="SELECT * FROM $tbl_name ORDER BY id DESC";
// OREDER BY id DESC is order result by descending
$result=mysql_query($sql);
?>

[ send.php ]

<?php
include("config.php");
$file= $_POST['file'];
$name = $_POST['name'];
$email = $_POST['email'];
$country = $_POST['country'];
$pp = $_POST['pp'];
$others = $_POST['others'];



$datetime=date("d/m/y h:i:s");
$sql="INSERT INTO $tbl_name(id , file , name , email , country , pp , others )VALUES('$id', '$file', '$name', '$email', '$country', '$pp', '$others')";
$result=mysql_query($sql);

if($result){
echo "DONE";
}
else {
echo "ERROR";
}
mysql_close();
?>

هذا الي قدرت اقدمه ،، المطلوب هو شرح الكود للبحث عن النتاائج ،،

مثلا : ادخلنا الاسم والبلد والايميل والهاتف

طريقه البحث : لما ندخل رقم الهاتف على انه رقم لا يتكرر ابد ،، يستخرج لنا جميع البيانات الي تحت هذا الرقم الهاتفي

( في اغلب المستشفيات يطلب رقم الهاتف ،، ويتأكد ان لك ملف موجود بالمستشفى ام لا ) نفس الفكرة بالضبط

اسف على الازعاج ،، ورفعت لكم الي توصلت له على الرابط التالي :

http://www.inm5.com/demo

وللتأكد من ادخال البيانات :

ملحوظة : لم تعض البيانات كامله بالعرض ،، فقد اكتفيت بعرض الاسم والايميل فقط للتجربه لا غير

http://www.inm5.com/demo/view.php

بنتظار المحترفين ،، جعلها الله في ميزان حسناتكم وتكون فائدة لي وللجميع بإذن الله

في أمان الله

تم تعديل هذه المشاركة بواسطة rixlinux في 12 أكتوبر 2009 في 22:42

#2

شو حابب تعرف بالزبط ؟؟

والبحث عندك ما بيشتغل

استخدم هذا الكود افضل

ويستحسن انك تعرض النتائج في صفحة أخرى مو على نفس الصفحة

$name=$_POST['find'];

$data = mysql_query("SELECT * FROM Demo WHERE file LIKE '%$name%'");
while($row = mysql_fetch_array($data)){
echo $row['name']. "<br>";

}

FineDesign For Graphic and WebDesign

ForEach(Minute in MyLife)

MyExperience ++;

#3

في البداية اشكرك اخوي على التفاعل مع الموضوع ،،

جربت الكود الي عطيتني اياه لكن النتيجة هي : خطأ

لتصحيح البيانات من جديد لكي يعمل الكود//

القاعده : demo

الجدول : demo_table

اليوزر : root

الباسوورد: لا شي

لقد وضعت البحث بصفحة مستقلة وإليك الناتج عمليا على الرابط التالي :

http://www.inm5.com/demo/find.php

شاكر لك تعاونك اخوي وبنتظار تحليلك ان شاء الله

#4

ماشي اخي

ممكن في عندي خطأ او اني ما عرفت اوصلك المعلومة صح

لكن خذ هذا المثال وستجد فيه ما تريد ان شاء الله

ستحتاج الى صفحتين

صفحة HTML

وصفحة PHP

اول كود Html

<html dir="rtl">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1256">
<title>Search Wait PHP/SQL</title>
</head>
<body>
<form action="search.php" method="post">
<p align="center"><font face="Tahoma"><b>كلمة البحث</b></font></p>
<p align="center"><font face="Tahoma">
<input name="find" size="30" style="font-weight: 700" /></font></p>
<p align="center">
<input type="submit" value="ابحث" style="font-weight: 700" /> </p>
</form></body>
</html>

الأت كود Search.php

<html>
<head>
  <title>Search</title>
</head>
<body>
<?php
$host = "localhost";
$dbuser = "username";
$dbpass = "password";
$db = "database";
$DB_t "topics";
$con = mysql_connect($host, $dbuser, $dbpass);
if(!$con){
die(mysql_error());
}
$select = mysql_select_db($db, $con);
if(!$select){
die(mysql_error());
}
$item = $_REQUEST['find'];
if($item == "")
{
        echo "ÇäÊ áã ÊßÊÈ ßáãÉ ÇáÈÍË";
}
else
{
$data = mysql_query("SELECT * FROM $DB_t WHERE topic LIKE '%$item%'");
while($row = mysql_fetch_array($data)){
echo $row['id']. "<br>";
echo $row['topic']. "<br>";
}
}
?>

وأي استفسار أخي انا جاهز

FineDesign For Graphic and WebDesign

ForEach(Minute in MyLife)

MyExperience ++;

#5

أشكرك اخوي جزيل الشكر ،، مثال حلو ونفذ عملية البحث بنجاح

وان شاء الله يكون واضح ومفيد لجميع من يبحث عن حلول البحث بالـ php ولي رجعه بوضع الملفات مرتبه لتعم الفائده

اشكرك مرة اخرى أخي : ibu_love

ولك مني تقديري واحترامي

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