اذهب إلى المحتوى

السؤال

نشر

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

حاولت جلب بيانات بدون تحديث الصفحة ولم تضبط الطريقة


    <form>
      <input type="text" size="30" onkeyup="showResult(this.value)">
      <div id="livesearch"></div>
    </form>

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

$qq = mysql_query("select * from `AA` where `BB` LIKE '%$SS_age%' ");

ارفقت صورة للفكرة وهي المطلوبه بهذا الشكل

مجرد كتابه الكلمة تنزل قائمة بالمواضع التي تحتوي على نفس الكلمة في حقل البحث

لقطة شاشة 2024-11-23 023228.png

Recommended Posts

  • 0
نشر

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

أولا يجب وضع كود الإستعلام المرفق في ملف php منفصل حتى يتم إرسال طلب البحث له و لنفرض أن إسم الملف هو search.php .

الآن يجب وضع كود javascript التالي في نفس الملف الموجود به كود html :

function showResult(str) {
  document.getElementById("livesearch").innerHTML = "";
  fetch(`search.php?q=${encodeURIComponent(str)}`)
    .then(response => response.text())
    .then(data => {
      document.getElementById("livesearch").innerHTML = data;
    })
    .catch(error => {
      console.error('Error:', error);  // التعامل مع الأخطاء إذا حدثت
    });
}

وهكذا قمنا بإنشاء الدالة showResult الذي يتم إستدعاءها عند الحدث keyup . ونقوم فيها أولا بتفريغ محتوى العنصر livesearch وبعد ذلك نرسل طلب البحث إلى الملف search.php و نقوم بوضع كلمة البحث في parameter يسمى q و بعد ذلك نستقبل ال data وهي البيانات التي تم إرجاعها من الخادم من ملف search.php و نضعها بداخل العنصر livesearch.

الآن في ملف search.php نستقبل الطلب كالتالي :

<?php

if (isset($_GET['q'])) {
  $SS_age = $conn->real_escape_string($_GET['q']);
  $qq = mysql_query("select * from `AA` where `BB` LIKE '%$SS_age%' ");
  
  if (mysql_num_rows($qq)) {
    // عرض النتائج
    while ($row = mysql_fetch_assoc($qq)) {
      echo "<div>" . $row['BB'] . "</div>";  // يمكنك تغير هذا السطر بناء على البيانات التي لديك
    }
  } else {
    echo "No results found";
  }
}

وهكذا سيتم إرسال البيانات إذا وجدت في قاعدة البيانات . ويمكنك تغير السطر بداخل حلقة while إلى الكود الذي تريده لبناء القائمة الخاصة بالنتائج

  • 0
نشر
بتاريخ 20 ساعة قال محمد عاطف17:

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

أولا يجب وضع كود الإستعلام المرفق في ملف php منفصل حتى يتم إرسال طلب البحث له و لنفرض أن إسم الملف هو search.php .

الآن يجب وضع كود javascript التالي في نفس الملف الموجود به كود html :

function showResult(str) {
  document.getElementById("livesearch").innerHTML = "";
  fetch(`search.php?q=${encodeURIComponent(str)}`)
    .then(response => response.text())
    .then(data => {
      document.getElementById("livesearch").innerHTML = data;
    })
    .catch(error => {
      console.error('Error:', error);  // التعامل مع الأخطاء إذا حدثت
    });
}

وهكذا قمنا بإنشاء الدالة showResult الذي يتم إستدعاءها عند الحدث keyup . ونقوم فيها أولا بتفريغ محتوى العنصر livesearch وبعد ذلك نرسل طلب البحث إلى الملف search.php و نقوم بوضع كلمة البحث في parameter يسمى q و بعد ذلك نستقبل ال data وهي البيانات التي تم إرجاعها من الخادم من ملف search.php و نضعها بداخل العنصر livesearch.

الآن في ملف search.php نستقبل الطلب كالتالي :

<?php

if (isset($_GET['q'])) {
  $SS_age = $conn->real_escape_string($_GET['q']);
  $qq = mysql_query("select * from `AA` where `BB` LIKE '%$SS_age%' ");
  
  if (mysql_num_rows($qq)) {
    // عرض النتائج
    while ($row = mysql_fetch_assoc($qq)) {
      echo "<div>" . $row['BB'] . "</div>";  // يمكنك تغير هذا السطر بناء على البيانات التي لديك
    }
  } else {
    echo "No results found";
  }
}

وهكذا سيتم إرسال البيانات إذا وجدت في قاعدة البيانات . ويمكنك تغير السطر بداخل حلقة while إلى الكود الذي تريده لبناء القائمة الخاصة بالنتائج

ما شاء الله عليك ضبط واشتغل معاي

الله يسعدك في الدارين

فيه شغلة بسيطة اذا مسحت اللي بداخل الحقل بيظهر كل البيانات اللي في القاعدة انا ابغاه ما يظهر شي الا اذا انكتب واول ما امسح بتختفي النتائج

 

واخيرا اعتذر عن التأخير في الرد لم يصلني اشعارات من الموقع ان فيه رد على موضوعي .

  • 0
نشر
بتاريخ On 23‏/11‏/2024 at 07:10 قال محمد عاطف17:

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

أولا يجب وضع كود الإستعلام المرفق في ملف php منفصل حتى يتم إرسال طلب البحث له و لنفرض أن إسم الملف هو search.php .

الآن يجب وضع كود javascript التالي في نفس الملف الموجود به كود html :

function showResult(str) {
  document.getElementById("livesearch").innerHTML = "";
  fetch(`search.php?q=${encodeURIComponent(str)}`)
    .then(response => response.text())
    .then(data => {
      document.getElementById("livesearch").innerHTML = data;
    })
    .catch(error => {
      console.error('Error:', error);  // التعامل مع الأخطاء إذا حدثت
    });
}

وهكذا قمنا بإنشاء الدالة showResult الذي يتم إستدعاءها عند الحدث keyup . ونقوم فيها أولا بتفريغ محتوى العنصر livesearch وبعد ذلك نرسل طلب البحث إلى الملف search.php و نقوم بوضع كلمة البحث في parameter يسمى q و بعد ذلك نستقبل ال data وهي البيانات التي تم إرجاعها من الخادم من ملف search.php و نضعها بداخل العنصر livesearch.

الآن في ملف search.php نستقبل الطلب كالتالي :

<?php

if (isset($_GET['q'])) {
  $SS_age = $conn->real_escape_string($_GET['q']);
  $qq = mysql_query("select * from `AA` where `BB` LIKE '%$SS_age%' ");
  
  if (mysql_num_rows($qq)) {
    // عرض النتائج
    while ($row = mysql_fetch_assoc($qq)) {
      echo "<div>" . $row['BB'] . "</div>";  // يمكنك تغير هذا السطر بناء على البيانات التي لديك
    }
  } else {
    echo "No results found";
  }
}

وهكذا سيتم إرسال البيانات إذا وجدت في قاعدة البيانات . ويمكنك تغير السطر بداخل حلقة while إلى الكود الذي تريده لبناء القائمة الخاصة بالنتائج

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

index.html

<a href="sss.php?id=12">الرابط</a>

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

reboot.php

$qq = mysqli_query($coo,"UPDATE `AA` set `BB` = '1' WHERE  `id` = '$SS_age' "); // $SS_age هو اي دي الرابط 12

 

aaa.png

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...