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

الموضوع: دعوة للمساعدة في برمجة برنامج (تصفح كتاب)

  1. #1
    عضو سوبر نشيط
    تاريخ التسجيل
    Dec 2000
    المشاركات
    998


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

    فألاحظ الحاجة الماسة لبرنامج استعراض كتاب على الإنترنت. ولم أجد برنامجا قويا لهذه المهمة، قد يعود هذا لعدم أهمية هذا الأمر عند الغرب لهذا لم يفكروا في برمجته.

    أنا لست مبرمجا، ولا نية عندي لتعلم البرمجة. لأن هذا يؤثر على تخصصي الأصلي وهو اللغة العربية.

    ولو كان هناك مبرمجون لا يخطئون في اللغة العربية لما كلفت نفسي عناء التعب في تعلم تركيب البرامج والخوادم وتعريبها.

    بما أنني لست مبرمجا فهذا اعتراف صريح مني بعجزي عن كتابة برنامج.

    لكن من خلال تعريبي لكثير من البرامج الصغيرة والكبيرة اكتسبت بعض المهارة التي تكفي لتعديل البرنامج أو إضافة بعض الخصائص له.

    من أجل هذا كتبت برمجة أولية لبرنامج ( تصفح الكتاب ).

    والذي ينقصني هو شخص يستطيع أن يتعامل مع php متصلة بقواعد البيانات mysql.

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

    ولا أعرف كيفية وضع المتغيرات في الرابط نحو : showcat=$cat
    وهكذا.

    ماذا عملت؟

    أولا حاولت قدر الاستطاعة إنشاء قاعدة بيانات وهي كالتالي :

    القاعدة تشتمل على ثلاثة جداول :

    الجدول الأول : يتعلق بالمؤلف وسميته (arp_auther). ويتضمن أربعة حقول :

    1 - رقم المؤلف (auther_number )
    2 - اسم المؤلف (auther_name )
    3 - نبذة قصيرة عن المؤلف (auther_des )
    4 - عدد الكتب المتوفرة له (auther_numberofbooks )

    الجدول الثاني : يتعلق بالأقسام المتوفرة للكتب ( لإسلامية، لغوية، جغرافية ... ) وسميته (arp_cat)ويتضمن أربعة حقول :
    1 - اسم القسم (cat_name )
    2 - رقم القسم (cat_num )
    3 - وصف القسم (cat_des )
    4 - عدد الكتب المتوفرة في القسم (cat_booknumber )

    الجدول الثالث : يتعلق بالكتاب وسميته (arp_showbook) ويتضمن عشرة حقول :
    1 - القسم الذي يندرج تحته (book_cat )
    2 - مؤلف الكتاب (book_auther )
    3 - اسم الكتاب (book_name )
    4 - رقم الكتاب (book_number )
    5 - عدد المجلدات (book_moglad )
    6 - عدد صفحات الكتاب (book_pages )
    7 - رقم الصفحة للنص (book_numberofpages )
    8 - نص الصفحة (book_showpage )
    9 - رقم المجلد (book_numofmoglad)
    10 - وصف الطبعة المعتمدة (book_des)


    آمل ممن لديه القدرة أن يفحص القاعدة ويصحح الأخطاء.

    ثانيا : أنشأت الملفات التالية :

    1 - ملف الإعدادات (config.php)

    وهذه برمجته :
    كود:
    <?
    // بدأت في برمجة هذا البرنامج يوم 17 / 9 / 1422 هـ
    // إذا كا لديك استعداد لمساعدتي فيه فأنا أرحب بذلك
    // يمكنك مراسلتي على العنوان ababab90@yahoo.com
    
    // إعدادات قاعدة البيانات  ///
    
    
    // عنوان المستضيف
    
    $config['dserver'] = "localhost";
    
    // اسم المستخدم للقاعدة
    
    $config['duser'] = "";
    
    // كلمة المرور
    
    $config['dpass'] = "";
    
    // اسم القاعدة 
    
    $config['dname'] = "seebook";
    
    // هل ترغي في إظهار خانة (الجديد)؟
    //1 = نعم| 0 = لا
    
    $config['shownew'] = 1;
    
    // هل تغب في السماح بالبحث؟
    //1 = نعم| 0 = لا
    
    $config['search'] = 1;
    
    // هل تريد إظهار خانة (إضافة كتاب)؟
    //1 = نعم| 0 = لا
    
    $config['advnew'] = 1;
    
    // تحديد اتجاه الصفحة، وملف scc
    $dir="<html dir=rtl>";
    echo "<link rel=\"stylesheet\" href=\"scc.css\" type=\"text/css\">";
    ?>
    2 - ملف index.php

    وهذه برمجته :
    كود:
    <?
    // طلب الملفات اللازمة : ملف الإعداد، وملف اللغة
    require ("config.php");
    require ("lang/arabic.php");
    
    // تضمين رأس الصفحة 
    include ("head.php");
    
    // إعدادات طلب المعلومات من قاعدة البيانات
    $db = $config['dname'] ;
    $host = $config['dserver'];
    $name = $config['duser'];
    $pass = $config['dpass'];
    $config[url] = $config['url'];
    
    // عرض خانة الجديد
    
    if ($config['shownew']  ) {
    $ALGADED ="<a href=\"new.php\" >$lang[ALGADED]</a>"; 
    }
    
    // عرض خانة البحث
    
    if ($config['search'] ) {
    
    $SEACRH = "<a href=\"search.php\">$lang[SEARCH]</a>";
    }
    
    // عرض خانة إضافة كتاب
    
    if ($config['advnew'] ) {
    
    $ADDNEW = "<a href=\"addnew.php\" >$lang[ADDBOOK]</a>";
    
    }
    
    // طباعة المتغيرات السابقة
    echo "
    
    <p align=\"center\" font class=\"fontnormal\">$ALGADED | $SEACRH | $ADDNEW </p>
    
    ";
    
    // طلب عدد البوابات من القاعدة
    
    
     $link=   mysql_connect($host, $name, $pass)
            or die ("$lang[MYSQL_NOCOONECT]");
        mysql_select_db ($db)
            or die ("$lang[MYSQL_NOSELECTBASE] ");
        
        $query = "SELECT * FROM arp_cat order by cat_name DESC ";
        $result = mysql_query ($query)
            or die ("$lang[MYSQL_QFILED]");
    $rows=mysql_num_rows ($result) ;
    
    // طباعة عدد البوابات 
    	echo "<p align=\"center\" font class=\"fontnormal\">$lang[CATNUMBER] <font color=\"red\"> ($rows)</font>";
    echo "<br></p>";
    
    // طباعة أسماء البوابات ووصفها وعدد كتبها
    echo "<p align=\"center\"><table border=1> \n";
    
    echo "<tr><td align=\"center\" width=200 font class=\"fontnormal\">$lang[CATNAME]<td align=\"center\" width=200 font class=\"fontnormal\">$lang[BOOKNUM]</tr>\n";
    while ($myrow = mysql_fetch_row($result)) {
    
    	printf("<tr><td><a href=\"showcat?cat=$cat\">%s</a><p> %s</td><td>%s</td></tr>%s</td></tr>\n", $myrow[0], $myrow[2], $myrow[3],$myrow[4]);
    }
    
    ?>
    النقص :
    1 - نحتاج إلى وضع متغير $cat بحيث يكون موافقا برقم البوابة.
    2 - توسيط رقم عدد الكتب.

    ملفات أخرى :

    في ملف index.php تظهر البوابات، عند الضغط عليها تفتح صفحة (showcat.php).

    1 - المطلوب : برمجة صفحة showcat.php بحيث تستورد من القاعدة اسم الكتاب في هذه البوابة والمؤلف وإن أمكن عداد للقراءة وعداد للتحميل.

    اسم البوابة ( استيراد من الجدول cat_name )

    م اسم الكتاب_____________________ المؤلف
    (متغير+) (استيراد منbook_name) استيراد من (book_auther )
    ويكون اسم الكتاب له متغير $ مرتبط بصفحة عرض الكتاب showbook.php حيث يكون مثلا : showbook.php?id=$booknumber

    2 - برمجة ملف showbook.php ، والمطلوب فيه :

    استيراد اسم البوابة السابقة وطبعها (cat_name )ثم علامة > استيراد اسم الكتاب السابق وطبعه (book_name)

    ثم معلومات الكتاب :
    استيراد :
    المؤلف (book_auther)، عدد المجلدات (book_moglad)، عدد الصفحات (book_pages )، الطبعة المعتمدة (book_des).

    عرض الصفحة (استيراد رقم الصفحة book_numberofpages) من المجلد (استيراد رقم المجلدbook_numofmoglad)
    الصفحة التالية(متغير+) الصفحة السابقة (متغير-)
    النص ( استيراد نص الصفحة المطلوبة book_showpage )
    الصفحة التالية(متغير+) الصفحة السابقة (متغير-)
    طباعة هذه الصفحة ( متغير إلى صفحة print.php )
    انتقل إلى صفحة (استيراد رقم الصفحة) من المجلد (استيراد رقم المجلد)
    ابحث في هذا الكتاب :

    ملف البحث : search.php
    انظر صفحة التجربة

    ملف إضافة كتاب addbook.php
    انظر صفحة التجربة، وهذه أستطيع تعديل برمجتها من برنامج آخر.

    ملف طباعة النص print.php :
    يمكن للقارئ اختيار نوع الخط وحجمه.
    ثم النص
    ثم أمر الطباعة



    ملف اللغة في مجلد lang باسم lang.php
    كود:
    <?
    
    $lang[install_welcome] = "السلام عليكم";
    $lang[INSTALL_INFO] = "حربا بك في برنامج تصفح الكتاب";
    $lang[INSATLL_SUS] = "تم إنشاء قاعدة البيانات بنجاح";
    $lang[INSATLL_NEWDATA] = "اسم القاعدة";
    $lang[INSATLL_HOST] = "عنوان الخادم";
    $lang[INSATLL_USER] = "اسم المستخدم";
    $lang[INSATLL_TABLE] = "اسم الجدول";
    $lang[INSATLL_PRESS] = "اضغط هنا للدخول إلى لوحة التحكم";
    $lang[YES] = "نعم";
    $lang[NO] = "لا";
    $lang[SEND] = "أرسل";
    
    
    $lang[ALGADED] = "الجديد";
    $lang[SEARCH] = "البحث";
    $lang[ADDBOOK] = "إضافة كتاب";
    $lang[MYSQL_GOBACK] = "العودة";
    $lang[MYSQL_NOCONNECT] = "لا يمكن الاتصال بقاعدة البيانات";
    $lang[MYSQL_NODATA] = "لا يمكن إنشاء قاعدة البيانات";
    $lang[MYSQL_NOSELECT] = "لم نتمكن من تحديد القاعدة";
    $lang[CATNUMBER] = "عدد البوابات :";
    $lang[CATNAME] = "اسم البوابة";
    $lang[BOOKNUM] = "عدد الكتب";
    $lang[MYSQL_NOCOONECT] = "لم نتمكن من الاتصال بقاعدة البيانات";
    $lang[MYSQL_NOSELECTBASE] = "لم نتمكن من تحديد القاعدة";
    $lang[MYSQL_QFILED] = "تعذر تنفيذ أوامر SQL";
    
    $lang[admin_HEAD] ="لوحة التحكم بالبرنامج";
    $lang[admin_MYSQLHOST] ="عنوان المستضيف";
    $lang[admin_MYSQLUSER] ="اسم المستخدم للقاعدة";
    $lang[admin_MYSQLPASS] ="كلمة المرور";
    $lang[admin_MYSQLBASE] ="اسم القاعدة";
    $lang[admin_ALLOW_NEW] ="هل ترغب في إظهار خانة الجديد؟";
    $lang[admin_ALLOW_SEARCH] ="هل ترغب في السماح بالبحث؟";
    $lang[admin_ALLOWADDBOOK] ="هل ترغب في إظهار خانة إضافة كتاب؟";
    $lang[admin_GENRAL] ="الأعدادات العامة";
    $lang[admin_ADDBOOK] ="إضافة كتاب";
    $lang[admin_EDITBOOK] ="تعديل كتاب";
    $lang[admin_DELBOOK] ="حذف كتاب";
    $lang[admin_EDITAUTHER] ="تعديل معلومات مؤلف";
    $lang[admin_DELAUTHER] ="حذف مؤلف";
    $lang[admin_ADDAUTHER] ="إضافة مؤلف";
    $lang[admin_ADDCAT] ="إضافة بوابة";
    $lang[admin_EDITCAT] ="تعديل بوابة";
    $lang[admin_DELCAT] ="حذف بوابة";
    
    
    ?>
    ====== ملفات المسؤول ---
    3 - مجلد admin :
    أ - ملف index.php
    وهذه برمجته :
    كود:
    <?
    
    require ("config.php");
    require ("lang/arabic.php");
    
    echo "<html dir=\"rtl\">";
    
    echo "
    <a href=\"genral.php\" >$lang[admin_GENRAL]</a><br>
    <a href=\"addcat.php\" >$lang[admin_ADDCAT]</a><br>
    <a href=\"editcat.php\" >$lang[admin_EDITCAT]</a><br>
    <a href=\"delcat.php\" >$lang[admin_DELCAT]</a><br>
    <a href=\"addauther.php\" >$lang[admin_ADDAUTHER]</a><br>
    <a href=\"editauther.php\" >$lang[admin_EDITAUTHER]</a><br>
    <a href=\"delauther.php\" >$lang[admin_DELAUTHER]</a><br>
    <a href=\"addbook.php\" >$lang[admin_ADDBOOK]</a><br>
    <a href=\"editbook.php\" >$lang[admin_EDITBOOK]</a><br>
    <a href=\"delbook.php\" >$lang[admin_DELBOOK]</a><br>
    "; 
    
    ?>
    ملف head.php

    كود:
    <?
    require ("config.php");
    echo "<html dir=\"rtl\">";
    
    
    ?>




    النقص في ملف index.php
    1 - حماية الملف باسم مستخدم وكلمة مرور.
    2 - إذا أمكن وضع جميع الملفات في ملف واحد فهذا جيد، ربما عن طريق function

    بقية الملفات سيأتي الكلام عليها لاحقا إن شاء الله


    === ملف التركيب :3 - ملف التركيب install.php

    وأعمل الآن على برمجته.


    اضغط هنا للحصول على ملف مضغوط يحتوي على الملفات السابقة بما فيها قاعدة البيانات

    http://www.toarabic.net/read/readbook.zip

    أنتظر جوابكم





    __________________
    لا تعاند من إذا قال فعل
    الشنكبوتية
    اللغة العربية سياج هويتنا
    عبد الرحمن غير متواجد حالياً


  2. #2
    عضو نشيط جدا
    تاريخ التسجيل
    Nov 2001
    المشاركات
    576


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

    http://www.arabbuilder.com/forum/sho...3&threadid=445





    php4 غير متواجد حالياً

  3. #3
    عضو سوبر نشيط
    تاريخ التسجيل
    Dec 2000
    المشاركات
    998



    أخي الكريم


    البرنامج الذي طرحته جيد لمن أراد ( مكتبة )

    لاحظ أني أريد برنامج تصفح كتاب على الإنترنت


    لقد وجدت برنامجا أجنبيا :

    http://phpreview.nl.linux.org/index.html

    لكنني فشلت في تركيبه على جهازي





    __________________
    لا تعاند من إذا قال فعل
    الشنكبوتية
    اللغة العربية سياج هويتنا
    عبد الرحمن غير متواجد حالياً

  4. #4
    عضو نشيط جدا
    تاريخ التسجيل
    Nov 2001
    المشاركات
    576


    هذا البرنامج يعرض معلومات عن الكتب ولا يعرض محتوى الكتب





    php4 غير متواجد حالياً

  5. #5
    عضو نشيط
    تاريخ التسجيل
    Aug 2000
    المشاركات
    129


    السلام عليكم
    اخوي عبدالرحمن بخصوص سكربت للكتب اول شيحط في بالك الكتاب ممكن يكون من 100 او 1000 او 3000 صفحه او اكثر ,,
    الي اشوفه افضل طريقه لعمل مثل هالسكربت استخدام ملفات Text ,,
    مثال لملف ال Text ,,
    اسم المؤالف
    <----esm elmo2alef------>
    الصفحة الاولى
    ....
    ....
    ....
    <------page1------->
    الصفحة الثانيه
    ....
    الخ
    --------------------------------------------------------
    الي اقصده من الرمز <------>
    ان السكربت يعرف ان السطر يحتوي على اسم المؤلف وبهالطريقه
    ملف ال text مابياخذ مساحه كبيره ,, والشي الثاني ممكن تستخدم نفس ملفات ال text اذا حبيت تسوي برنامج بالفجول بيسك او غيره ,,,
    بخصوص ترتيب الملفات والاقسام ,رقم القسم , الخ بيكون هالشي اسهل باستخدام ال PHP وال Mysql ,,








    jassim غير متواجد حالياً





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

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

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