المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : شرح طريقة عمل بحث فى قاعدة البيانات عبر PHP & MySQLi



salima
11-01-2013, بتوقيت غرينيتش 04:38 PM
http://www.dzbatna.com/images/icons/icon30.gif ط´ط±ط* ط¹ظ…ظ„ ط¨ط*ط« ظپظ‰ ظ‚ط§ط¹ط¯ط© ط§ظ„ط¨ظٹط§ظ†ط§طھ ط¹ط¨ط± PHP & MySQLi (http://www.dzbatna.com/t2242467/)



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

سنتعرف فى هذه التدوينة سريعًا على كيفية برمجة نظام بحث فى قاعدة البيانات، حيث أن كثير من المبرمجين لا يعرفون طريقة القيام بالبحث فى قاعدة البيانات سوى عن طريق مطابقة كلمة البحث لمحتوى العمود فى قاعدة البيانات، أما عبر درس مفصلنا هذا فسنتعرف على كيفية القيام بعمل بحث فى قاعدة البيانات بشكل متقدم نوعًا ما بإذن الله، فكل الموضوع يتلخص فى كلمة واحدة فى لغة SQL للقيام بتلك العملية !! وسنعرف كيف الآن.
فنفترض ان لدينا صفحة بإسم search.php وهي الصفحة المسئولة عن عرض نتائج البحث، وفى صفحتنا الرئيسية نموذج للبحث شيفرته كالتالى: رمز PHP:

<code style="white-space:nowrap"> <code> <form method="get"
id="searchform" action="search.php">
<div>
<input type="text"
value="" name="s" id="s" /> <input type="submit"
id="searchsubmit" value="Search" class="submit" /> </div>
</form>
</code> </code>

الآن سننتقل إلى ملف search.php ونقوم بأخذ النص الذي قام المستخدم بالبحث عنه كما بالسطر التالي:
رمز PHP:

<code style="white-space:nowrap"> <code> $s = $_GET&#91;'s'&#93;;
</code> </code>

والآن نقوم بالتحقق من إذا كان نص البحث لا يحتوى على شيء لإظهار رسالة خطأ: رمز PHP:

<code style="white-space:nowrap"> <code> if($s == ""){
echo "You Didn't enter a text to search for !";
}
</code> </code>

والآن نقوم بإضافة else حيث أنه إذا كان نص البحث يحتوى على شيء فسيتم عملية البحث، وستكون عملية البحث عبر إدخال أمر SQL وهو مسئول عن البحث كما في الشيفرة التالية:
رمز PHP:

<code style="white-space:nowrap"> <code> $search = $db->query("SELECT * FROM `blogs` WHERE `title` LIKE '%$s%'");
</code> </code>

حيث أن blogs اسم الجدول المراد البحث فيه، و title هو اسم العمود المراد البحث فيه، و $s هو اسم المتغير الموجود به نص البحث.
الآن سنقوم بإخراج عدد الصفوف التى تم استخراجها ومقارنتها ما إذا كانت تساوى صفر أو لأ، فإذا كانت تساوى صفر فسيتم عرض رسالة عدم وجود نتائج بحث، وإن كانت لا تساوى صفر فسيتم عرض نتائج البحث ليصبح شيفرة الصفحة كاملة كالتالي:
رمز PHP:

<code style="white-space:nowrap"> <code> $s = $_GET&#91;'s'&#93;;



if($s == ""){
echo "You Didn't enter a text to search for !";
}else{
$search = $db->query("SELECT * FROM `blogs` WHERE `title` LIKE '%$s%'");
$num = $search->num_rows;
if($num != 0){
$row = $search->fetch_object();
?>
<li><a href="blog.php?id=<?php echo $row->id; ?>"><?php
echo $row->title; ?></a></li> <?php
}else{
echo "There is no results for this seach !!!<br>Try Another Search Words
"; }
} </code> </code>

بالتوفيق http://www.dzbatna.com/images/smilies/cupidarrow.gif

المصدر: مدرس مفصلة البي اتش بي (http://phpitc.blogspot.com/) PHP - شرح طريقة عمل بحث فى قاعدة البيانات عبر PHP & MySQLi (http://phpitc.blogspot.com/2014/03/php-mysqli.html)






ألعاب الأندرويد مجانا و حصريا (http://www.apotox.info/forum)




https://fbcdn-sphotos-d-a.akamaihd.net/hphotos-ak-ash4/482113_236967293114455_1193518507_n.png (http://www.dzbatna.com)
©المشاركات المنشورة تعبر عن وجهة نظر صاحبها فقط، ولا تُعبّر بأي شكل من الأشكال عن وجهة نظر إدارة المنتدى (http://www.dzbatna.com)©

استعمل مربع البحث في الاسفل لمزيد من المواضيع


سريع للبحث عن مواضيع في المنتدى