الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

درس عمل فلاشة عرض اخر الاخبار وربطها بالPHP (يوجد صوت وصورة)

بدأه خالد محمد جلال في 28 يناير 2010 · 1 رد · 1,300 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

السلام عليكم ورحمة الله وبركاته اقدم لكم درس في كيفية عمل فلاشة عرض اخر الاخبار وربطها بال PHP

اولاً قبل ان نبدأ: فكرة هذا الدرس هي كيفية جعل ملف فلاش (.swf) ديناميكي وليس استاتيكي اي النصوص مثلا او الصور المعروضة داخل ملف الفلاش يمكن تغييرها من قبل لوحة تحكم ولا يجب اعادة استخراج ملف الفلاش من قبل Flash MX مرة اخرى.

لبرمجة هذا الامر يجب اشتخدام لغتين برمجة على الاقل, لغة البي اتش بي او اي لغة مشابهة مثل ال ASP.NET ولغة ال Action Script .

في هذا الدرس لن اشرح اكواد Action Script على الاطلاق لان انا سأشرح على ملف فلاش (.swf) جاهز وسيكون تركيزي على الشق الخاص ببرمجة الphp.

في هذا المشروع نقوم بارسال النصوص والصور الى ملف الفلاش من لوحة تحكمنا (المبرمجة بالphp) عن طريق ملف (.xml) اي ان داخل ملف الفلاش يوجد كود action script يقوم بقرائة هذه النصوص والصور وعرضها ومن الناحية الاخرى نقوم بتحرير ملف ال (.xml)

فاذا كان هذا هو الكود الموجود في ملف ال .xml

كود هتمل:

<FlashRotator>
<FlashNews>
<line>
<image image="flashNews/imgs/aa_20100101110813.jpg"/>
<title title="الخبر الاول"/>
<brief brief="الخبر الاول "/>
<link link="http://localhost/flashNews/?p=1"/>
</line>
<line>
<image image="flashNews/imgs/c_20091228231552.jpg"/>
<title title="الخبر الثاني"/>
<brief brief="الخبر الثاني الخبر الثاني الخبر الثاني الخبر الثاني الخبر الثاني الخبر الثاني"/>
<link link="http://localhost/flashNews/?p=2"/>
</line>
<line>
<image image="flashNews/imgs/aa.jpg"/>
<title title="الخبر الثالث"/>
<brief brief="الخبر الثالث الخبر الثالث الخبر الثالث الخبر الثالث الخبر الثالث الخبر الثالث"/>
<link link="http://localhost/flashNews/?p=3"/>
</line>
<line>
<image image="flashNews/imgs/q.jpg"/>
<title title="الخبر الرابع"/>
<brief brief="الخبر الرابع الخبر الرابع الخبر الرابع الخبر الرابع الخبر الرابع الخبر الرابع الخبر الرابع الخبر الرابع الخبر الرابع"/>
<link link="http://localhost/flashNews/?p=4"/>
</line>
</FlashNews>
</FlashRotator>

فان الهدف هو تحرير هذا الملف باكواد php

وهذا هو كود ال php المسئول عن قراءة ملف ال xml

كود PHP:

$menu = array();

            $doc = new DOMDocument();
            $doc->load('xml/NewsClipHome.xml');

            $lines = $doc->getElementsByTagName("line");
            foreach( $lines as $line )
            {
              $images = $line->getElementsByTagName("image");
              $image = $images->item(0)->getAttribute("image");

              $titles = $line->getElementsByTagName("title");
              $title = $titles->item(0)->getAttribute("title");

              $briefs = $line->getElementsByTagName("brief");
              $brief = $briefs->item(0)->getAttribute("brief");

              $links = $line->getElementsByTagName("link");
              $link = $links->item(0)->getAttribute("link");

              array_push($menu, array($image, $title, $brief, $link));
            }
            $_SESSION["menu"] = $menu;

نلاحظ هنا اننا نقوم بقراءة كل صفوف ملف ال xml ثم نخزنها في ال $_SESSION["menu"]

بعد ذللك تأتي مرحلة التحرير . الان اصبح معنا جميع الصفوف مخزنة داخل ال $_SESSION["menu"]

أما في هذا الكود

كود PHP:

$_SESSION["menu"][$_POST["id"]][0] = "flashNews/imgs/" . $_SESSION["fileName"];
        $_SESSION["menu"][$_POST["id"]][1] = $_POST["title"];
        $_SESSION["menu"][$_POST["id"]][3] = $_POST["brief"];
        $_SESSION["menu"][$_POST["id"]][2] = $_POST["cDetails"];

        $menu = $_SESSION["menu"];
        $myFile = "xml/NewsClipHome.xml";
        $fh = fopen($myFile, 'w') or die("can't open file");

        fwrite($fh, "<FlashRotator>\n");
        fwrite($fh, "<FlashNews>\n");
        $id = 0;
        foreach ($menu as $rows){
            fwrite($fh, "<line>\n");
            fwrite($fh, "<image image=\"{$rows[0]}\"/>\n");
            fwrite($fh, "<title title=\"{$rows[1]}\"/>\n");
            fwrite($fh, "<brief brief=\"{$rows[2]}\"/>\n");
            fwrite($fh, "<link link=\"{$rows[3]}\"/>\n");
            fwrite($fh, "</line>\n");
            $id++;
        }
        fwrite($fh, "</FlashNews>\n");
        fwrite($fh, "</FlashRotator>\n");

        fclose($fh);

فاننا نقوم بجلب محتويات الحقول <form>

ووتخزينها مرة اخرى في المتغير $_SESSION["menu"] ولكن هذه المره نقول

$_SESSION["menu"][$_POST["id"]][رقم الحقل]

ثم نجلب كل محتويات ال $_SESSION["menu"] ونكتبها في ملف ال xml

اقدم لكم ايضاً عرض المشروع بالصوت والصورة + رابط تحميل السكربت كامل

داخل هذا الرابط:

http://3lemni.madpage.com/site/index.php?pid=22

ارجو ان اكون وفقت في الشرح

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

#2

مشكور جدا ، درس رائع

FineDesign For Graphic and WebDesign

ForEach(Minute in MyLife)

MyExperience ++;

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…