النتائج 1 إلى 4 من 4

الموضوع: عاجلاً وخطير جداً / لخبراء PHP vbulletin مامشكلة هذا الكود ؟

  1. #1

    عاجلاً وخطير جداً / لخبراء PHP vbulletin مامشكلة هذا الكود ؟



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

    بداية فعلت شيئاً ما بالمنتدى أدى إلى جعل جميع مشاركات بعض الأعضاء في جدول الـ post كزائر أي أن الـ userid لمشاركات العضو = 0

    لكن العضويات موجودة في جدول user ..


    أي انه يتطلب مني أن اقوم في كل مرة أرى عضواً كأنه محذوف أقوم بهذا الأمر ( مثال طبعاً ) /
    كود:
    UPDATE post SET userid = 1 WHERE username = 'مدمن نت'
    وهذا متعب جداً

    لذا خطر علي أن اقوم ببرمجة كود وهذا هو كما ترونه /

    كود PHP:

    <?php
    error_reporting
    (E_ALL & ~E_NOTICE);
    define('THIS_SCRIPT''user_restore');
    $phrasegroups = array();
    $specialtemplates = array();
    $globaltemplates = array();
    $actiontemplates = array();
    require_once(
    './global.php');

    $user $db->query_first("SELECT userid, username FROM user");

    while (
    $post $db->fetch_array($user))
    {
         
    $db->query_write("UPDATE post SET userid = " $post['userid'] . " WHERE username = '" $post['username'] . "'");
        echo 
    "تم بنجاح حل مشكلة العضو " $post['username'];
    }

    ?>
    لكن عند تنفيذ ذلك عبر المتصفح تأتيني صفحة بيضاء فقط

    ولم أعرف مالمشكلة

    الله لايهينكم أحد يعرف وش الحل ؟





    __________________
    تابعني على Twitter


  2. #2


    حسناً الأمر تمام

    سويت كود جديد وهذا هو

    كود PHP:
    $db_name "vb";
    $db_username "vb";
    $db_password "123456";
    $db_connect mysql_connect("localhost"$db_username$db_password);
    mysql_select_db($db_name$db_connect);

    $user mysql_query("SELECT userid, username FROM user");

    while (
    $post mysql_fetch_array($user))
    {
        
    $sql "UPDATE post SET userid = " $post['userid'] . " WHERE username = '" $post['username'] . "'";
        if(
    mysql_query($sql))
        {
            echo 
    "تم بنجاح حل مشكلة العضو " $post['username'] . "<br />";
        }


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

    كود:
    tcp_error: A communication error occurred: ""
    افكر اني اعدل الاستعلام الخاص باستدعاء جدول الـ user إلى هكذا

    كود PHP:
    $user mysql_query("SELECT userid, username FROM user LIMIT 100"); 
    وذلك لتخفيف الحمل على السيرفر

    لكن المشكلة هي اني كيف اكمل مابعد الـ 100 ؟؟

    اتمنى من الخبراء يفيدوني كيف ذلك ..

    خاصة المبرمج فلاشر أو العندليب أتمنى أنهم يشرفون موضوعي ويعالجون مشكلتي بيض الله وجههم





    __________________
    تابعني على Twitter

  3. #3
    عضو نشيط جدا
    تاريخ التسجيل
    Nov 2003
    المشاركات
    461


    ممكن تجعله يجلب كل البيانات عادي ولكن اثناء loop استخدم sleep او usleep بعد مدة تنفيذ مثلا 100 استعلام او 50 ، وهكذا

    http://de2.php.net/sleep
    http://de2.php.net/usleep





    __________________
    AlwatanVoice, www.alwatanvoice.com
    Almashroo, www.almashroo.com

    Pal Coder == Palestinian Coder

  4. #4
    عضو نشيط جدا
    تاريخ التسجيل
    Feb 2007
    المشاركات
    393


    ال SQL هذا اظن كافي ان شاء الله :

    كود:
    update post JOIN user on post.username = user.username set post.userid =  user.userid
    أو

    كود:
    update post set post.userid = (select userid from user where user.username = post.username)






    __________________
    موقعي الشخصي
    www.Flasher.ws

    جزيرة الفنون
    www.Artsisland.net





ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | دليل الكويت العقاري | مقروء | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض