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

الموضوع: كيف يمكن تخزين الكلمات

  1. #1
    عضو نشيط
    تاريخ التسجيل
    Sep 2006
    المشاركات
    92

    كيف يمكن تخزين الكلمات



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

    اتمنى من الاخوة ان تساعدنى والا يكونوا بخلاء







  2. #2
    عضو فعال
    تاريخ التسجيل
    Jun 2008
    المشاركات
    1,600


    اخي بما انه لديك موقع بحث (اي يوجد لديك الكثير من الناس تقوم بعمليات البحث) لا انصحك بأي شىء يتعلق بقاعدة البيانات.

    بدلا من ذلك، اذا كنت تستعمل الcpanel، هناك خاصية اسمها row access logs تحوي معلومات حول من تصفح وماذا تم تصفحه في موقعك(يشمل استعلامات get)،يمكنك تنزيل المعلومات على شكل ملف نصي، هذه الخاصية تتنفذ بطريقة اوتوماتيكية، اي لا حاجة لاجهاد قاعدة البيانات، كل ما عليك فعله، هو برمجة سكربت لتحليل هذه البيانات ووضعها في صورة يمكن الاستفادة منها.
    اذا لم يكن لديك cpanel استخدم اي برنامج احصاء يظهر لك ما تم تصفحه في موقعك.





    التعديل الأخير تم بواسطة ahmad sadiq ; 30-12-2009 الساعة 10:45 PM

  3. #3
    عضو نشيط
    تاريخ التسجيل
    Sep 2006
    المشاركات
    92


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






  4. #4
    عضو فعال
    تاريخ التسجيل
    Jun 2008
    المشاركات
    1,600


    اخى الحبيب احمد انا اريد ان اقوم بتخزين ما يتم المستخدمون ادخاله حتى ارسل نتائج البحث الى محركات البحث كجوجل على هيئة روابط يتم ارشفتها كل 24 ساعه
    اتمنى المساعده
    وهذا بالضبط ما قصدته.

    عندما يبحث الزائر عن كلمة اول ما يفعله هو ادخالها في الفورم. الفورم يرسل الكلمة بصيغة get، صيغة get هي عبارة عن رابط في موقعك يلتقطه برنامج الاحصاء، برنامج الاحصاء يقوم بتخزين هذا الرابط تلقائيًا في ملف الlogs ، انت تنزل ملف ال logs وتحلله وتحصل على الروابط المطلوبة في موقعك،تحلل النتائج التي حصلت عليها مرة اخرى وتستخرج منها الروابط التي خرجت من صفحة البحث، وهذه الروابط بالطبع تحوي كلمات البحث التي بحث عنها الزائر.
    الصورة قد توضح القصد-الزائر قد بحث عن كلمة mazda
    http://www.swalif.net/softs/attachme...1&d=1262379402
    لقد قمت بكتابة كود بسيط يقوم بتحليل ملف اللوج
    كود PHP:
    <?php

    $sites 
    = Array();
    $myFile "site.txt";
    $site "http://google.com";
    $fh fopen($myFile'r');
    $theData fread($fhfilesize($myFile));
    fclose($fh);
    $length strlen($myFile);

    $pos1=0;
    $pos2=0;
    $lastPos=strripos($theData,"HTTP/1.1");
    while (
    $pos2!=$lastPos){
    $pos1 strpos($theData,"GET",$pos2);
    $pos1+=4;
    $pos2 strpos($theData,"HTTP/1.1",$pos1);
    if (
    $pos2-$pos1 <100){
    $url =  substr($theData,$pos1,$pos2-$pos1);
    if (
    strpos($url,"query")){
    if (
    strpos($url,"http")==0)
    $sites[]= $site.$url;
    else
    $sites[]= $url;
    }
    }
    }
    print_r($sites);
        

    ?>
    كان يمكن كتابة هذا الكود بالregex ولكني غير متمرس في الموضوع، لذا كتبت الكود بال strpos
    فكرة الكود ان الروابط المطلوبة مسبوقة ب GET وبعدها HTTP://1.1
    ملاحظات عن الكود:
    *تصفية الروابط تتم بواسطة البحث عن كلمة query في الرابط اذا كنت تستعمل كلمة اخرى غيرها
    *هناك شرط اخر لتصفية الروابط الطويلة التي يزيد طولها عن 200 حرف

    ادخل الى raw access logs في ال cpanel تجد التالي:
    http://www.swalif.net/softs/attachme...1&d=1262380043
    تأكد من تعليم الخيار الذي في المستطيل الاحمر وحفظ الخيار
    بعد الحفظ، سيتم ارشفة ملف اللوج كل يوم وستظهر النسخ اليومية في المستطيل الاسود
    كل ما عليك فعله وقتها هو تنزيل الملف المضغوط وفك ضغطه، يظهر لك ملف على اسم الموقع،غير امتداده لصيغة txt
    واستعمل الكود الذي كتبته.

    بالتوفيق





    التعديل الأخير تم بواسطة ahmad sadiq ; 12-05-2011 الساعة 02:18 AM

  5. #5
    عضو نشيط
    تاريخ التسجيل
    Sep 2006
    المشاركات
    92


    اخى الكريم اولا الف شكر على حب الافادة والخير
    ثانيا وددت ان اعرف اين اضع هذا الكود الذى يقوم بتحلييل اللوجز
    وما الذى اقوم بتغييره فى الكود
    وربنا يديم الود






  6. #6
    عضو فعال
    تاريخ التسجيل
    Jun 2008
    المشاركات
    1,600


    ملفات اللوج في ال cpanel كلها مخزنة في المجلد:
    /access-logs
    شوف المحتويات في ال ftp ،في مدير الملفات الذي في لوحة التحكم ما بتبين

    وهذا الملف مرخص 640 اي لا يمكن الا لمدير الموقع رؤيته او نسخه، كما لا يمكن تغيير ترخيصه على ما اعتقد
    يعني لا اعتقد انه يمكن الوصول اليه من public_html.

    ولكن يمكن الوصول اليه من المهام المجدولة cron jobs وهذا ما نريده
    بالنسبة للكود تغير قليلًا حتى يتمكن من انشاء سايت ماب:
    كود PHP:
    <?php
    include("sitemap.php");
    $map = new GoogleSiteMap();
    $sites = Array();
    $site "http://undersite.javahw.com";
    $myFile "/home/YOUR_USER/access-logs/".$site;
    $fh fopen($myFile'r');
    $theData fread($fhfilesize($myFile));
    fclose($fh);
    $length strlen($myFile);
    $pos1=0;
    $pos2=0;
    $lastPos=strripos($theData,"HTTP/1.1");
    while (
    $pos2!=$lastPos){
    $pos1 strpos($theData,"GET",$pos2);
    $pos1+=4;
    $pos2 strpos($theData,"HTTP/1.1",$pos1);
    if (
    $pos2-$pos1 <100){
    $url =  substr($theData,$pos1,$pos2-$pos1);
    if (
    strpos($url,"query")){
    if (
    strpos($url,"http")==0)
    $sites[]= $site.$url;
    else
    $sites[]= $url;
    }
    }
    }
    $map->add($sites);
    $map->write("/home/YOUR_USER/public_html/map.xml"); 
    ?>
    استعملت في هذا الكود كلاس جاهز يقوم بتحويل المصفوفة الى سايت ماب، وهو موجود في المرفقات.
    غير متغير ال $site وضع مكانه رابط موقعك، اما كلمة query فهي المفروض ان تكون اسم الحقل الذي يدخل فيه المستخدم كلمة البحث، غير YOUR_USER الى اسم المستخدم للوحة التحكم.
    اما map.xml فهو اسم السايت ماب الجديدة ، يعني كل مرة يتشغل الكود يعمل سايت ماب، لارسال هذه السايت مابس الى جوجل قم بعمل ملف سايت ماب رئيسي فيه روابط الخرائط الاخرى، وكل ما تعمل خريطة جديدة اضفها للخريطة الرئيسية، وارسل ملف الخريطة الرئيسية فقط الى جوجل.
    ضع الكود في ملف اسمه site.php وضعه مع ملف الكلاس المرفق في مجلد اسمه site قبل ال public_html اي في المجلد /
    لعمل مهمة مجدولة :
    ادخل الى cron jobs واخترStandard Cron Manager
    في الحقل Command to run: ادخل التالي:
    كود:
    php  -q  /home/YOUR_USER/site/site.php
    بحيث ان YOUR_USER هو اسم المستخدم للوحة التحكم
    وادخل الوقت الذي تريد ثم اضغط save crontab

    اذا كان لديك موقع كبير جدًا فمن الارجح ان تحليل الملف لن ينتهي قبل مدة التشغيل القصوى لملف الphp وهو 20 او 30 ثانية على ما اعتقد.
    لذا اذا كنت تستطيع تغيير هذه القيمة في ملف php.ini فافعل(عن طريق رفع ملف الى موقعك)، اما اذا لم تكن تستطيع فاتصل بمدير الاستضافة واطلب منه تغيير القيمة وهو على الاغلب لن يقبل، وفي هذه الحالة ما لك غير تقسم الملف لملفات فرعية


    اترك الباقي لك





    التعديل الأخير تم بواسطة ahmad sadiq ; 12-05-2011 الساعة 02:18 AM





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

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

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