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

الموضوع: طلب مساعدة في قراءة ملف XML

  1. #1

    Question طلب مساعدة في قراءة ملف XML



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

    لدي ملف XML تم إنشاؤه بواسطة الـ (.NET) ومطلوب إني أقرأه بالـ (PHP) لحتى الآن ما في مشكلة

    كود:
    $xml_str = file_get_contents(file.xml);
    $xml = new SimplexmlElement($xml_str);
    foreach($xml->Tablix1 as $item) {
             echo $item->Details_Collection->Details['fname'].' - '.$item->Details_Collection->Details['fid'];
    }
    طلعت لي النتائج مع خطأ في البداية
    كود:
    Warning: SimpleXMLElement::__construct() [simplexmlelement.--construct]: namespace warning : xmlns: URI PHP_Drivers is not absolute in C:\xampp\htdocs\XML\demo.php on line 7
    
    Warning: SimpleXMLElement::__construct() [simplexmlelement.--construct]: i="http://www.w3.org/2001/XMLSchema-instance" xmlns="PHP_Drivers" in C:\xampp\htdocs\XML\demo.php on line 7
    
    Warning: SimpleXMLElement::__construct() [simplexmlelement.--construct]: ^ in C:\xampp\htdocs\XML\demo.php on line 7
    المهم بعد محاولات لقيت انه في بداية الـ XML مكتوب:
    كود:
    <?xml version="1.0" encoding="utf-8"?>
    <Report xsi:schemaLocation="PHP_Drivers http://URL LOCATION" Name="PHP_Drivers" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="PHP_Drivers">
    URL LOCATION
    هو مكان تواجد الملف على السيرفر.

    المهم مسحت المعلومات الي داخل الـ Report tag
    بالشكل التالي
    كود:
    <?xml version="1.0" encoding="utf-8"?>
    <Report>
    اشتغل تمام بدون أخطاء

    حالياً كيف أتعامل مع الخطأ الي طلع لي لأني ما بأقدر أعدل على الـ XML

    وشكراً







  2. #2
    عضو سوبر نشيط
    تاريخ التسجيل
    Jun 2003
    المشاركات
    789


    اخوى انسخ لنا الاوسمه الموجوده في الملف عشان تقدر نساعد بالطريقة

    كمثال

    <root>
    <name id="test">test</name>
    </root>





    __________________
    متى استعبدتم الناس وقد ولدتهم أمهاتهم أحرار........
    -----------------------------------
    شبكة الشعر الادبيه

  3. #3


    @ArabCoders

    هذا جزء من الكود
    كود:
    <?xml version="1.0" encoding="utf-8"?>
    <Report xsi:schemaLocation="PHP_Drivershttp://URL LOCATION" Name="PHP_Drivers" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="PHP_Drivers">
    <Tablix1>
    	<Details_Collection>
    		<Details fname="name01" fid="fid01" seat1="seat01" modelyear="modelyear01" model="model01" platenumber="platenumber01" fleetnumber="fleetnumber01" />
    		<Details fname="name02" fid="fid02" seat1="seat02" modelyear="modelyear02" model="model02" platenumber="platenumber02" fleetnumber="fleetnumber02" />
    	</Details_Collection>
    </Tablix1>
    </Report>
    شاكر لك ردك





    التعديل الأخير تم بواسطة greatsami ; 10-10-2010 الساعة 05:31 PM سبب آخر: حذف طلب الـ Loop

  4. #4
    عضو سوبر نشيط
    تاريخ التسجيل
    Jun 2003
    المشاركات
    789


    وعليكم السلام

    ودي اساعدك بشكل اكبر بس طريقة الملف شوي غريبه عليه على العموم اولا يجب ان تقرا محتوى XML عن طريق


    كود PHP:
    $xml file_get_contents('test.xml');
    $xml = @simplexml_load_string($xml,'SimpleXMLElement',LIBXML_NOCDATA); 
    ومن ثم لكي تستخرج محتوى attributes وإلى هم (fname, seat1 والخ) نستخدم هذا الكود

    كود PHP:
    echo $xml->Tablix1->Details_Collection->Details[0]->attributes()->fname
    على نفس المحتوى إلى عطيتني اياه راح يطلع لك name01 طبعاً قوم بعمل loop لتغير رقم 0 إلى العدد الموجود





    __________________
    متى استعبدتم الناس وقد ولدتهم أمهاتهم أحرار........
    -----------------------------------
    شبكة الشعر الادبيه

  5. #5


    @ArabCoders

    أشكرك على ردك والتجاوب معي
    أنا سويت ال Loop وطلعت كل المخرجات و كل شي تمام بس اللي ما رضي يضبط معي الـ Error الي كتبته في طلبي فوق (اللي بسبب Reports tag)
    هذا الي موقف معي .... ما عرفت أحله.

    كود:
    Warning: SimpleXMLElement::__construct() [simplexmlelement.--construct]: namespace warning : xmlns: URI PHP_Drivers is not absolute in C:\xampp\htdocs\XML\demo.php on line 8
    
    Warning: SimpleXMLElement::__construct() [simplexmlelement.--construct]: i="http://www.w3.org/2001/XMLSchema-instance" xmlns="PHP_Drivers" in C:\xampp\htdocs\XML\demo.php on line 8
    
    Warning: SimpleXMLElement::__construct() [simplexmlelement.--construct]: ^ in C:\xampp\htdocs\XML\demo.php on line 8
    أما كود الـ Loop فهذا هو:
    كود:
    $requestAddress = "./PHP_Drivers.xml";
    $xml_str = file_get_contents($requestAddress);
    $xml = new SimplexmlElement($xml_str); 
    foreach($xml->Tablix1->Details_Collection->Details as $Details) {
    	echo $Details['fname'] . " - " . $Details['fid'] . " - " . $Details['model'] . "<br />";
    }
    أو مثل ما تفضلت لتحديد سطر واحد ....

    تحياتي










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

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

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