السلام عليكم
هل اجد دروس تعليم كيفية التعامل مع بيانات موجوده في قاعده بيانات بلغة xml
يعنى اود استخراجها بال php والتعامل مع الtags الموجوده
كيف؟
السلام عليكم
هل اجد دروس تعليم كيفية التعامل مع بيانات موجوده في قاعده بيانات بلغة xml
يعنى اود استخراجها بال php والتعامل مع الtags الموجوده
كيف؟
__________________
سبحان الله وبحمده سبحان الله العظيم
العضوية يستخدمها اكثر من شخص
Nabeel A. Galal
Hawk Eye
nabeel.galal AT hotmail.com
سيأتيك الرد حالا انشاء الله
__________________
إستخدم ملفك الخاص لكتابة توقيعك
بسم الله الرحمن الرحيم
اخي السائل السلام عليكم ورحمة الله وبركاته
يفترض بالسائل ان يكون ذا خلفية بسيطة عن لغة البرمجة php
لذلك وعلى هذا الاساس سيكون ردي انشاء الله
بإعتبار ان السكربت عبارة عن سكربت مقالات يحتوي على العنوان الرئيسي والوصف وكذلك التاريخ والوصلة الخاصة بكل مقالة
اولا كلنا نعرف لغة html وهي لغة بسيطة وسهله تحتي على عدة وسوم معروفة للجميع
كذلك لغة xml فهي ايضا تحتوي على عدة وسوم ولكنها مغايرة للغة html وان كانت بنفس الفكرة
فمثلا وسم <item> ووسم <link> وكذلك وسم <title> وايضا وسم <description> و وسم <date> وهذه الوسم في لغة xml تعبر عن مفردات باللغة الانجليزية مثل وحدة ووصلة وعنوان ووصف وتاريخ بالتوالي وهي بلغة ال xml تعطي نفس المعاني
توجد بلغة ال xml وسوم كثيرة ولكننا نكتفي بهذه الوسوم المتكررة والتي غالبا ما يحتاجها السائل والتي اتوقع ان يكون قد سألها لحاجة سكربت خاص يعمل به
الوحدة item هي بداية التكرار وتكون بعدد تكرار السجلات الموجودة بقاعدة البيانات ويقابلها بلغة قاعدة البيانات الرقم ID نظريا .... فلكل سجل من قاعدة البيانات يحتوي id خاص به بالمقابل يوجد item بلغة xml
الوسم عنوان <title> هو العنوان الرئيسي لكل مقالة
الوسم وصف <description> هو الكلمات الرئيسية او مقدمة المقالة
الوسم تاريخ <date> هو تاريخ كتابة المقالة
الوسم وصلة <link> هو العنوان الاكتروني url للمقالة
اعتقد انني اعطيتك شرحا نظريا لمعرفة الفرق بين لغة قاعدة البيانات ولغة xml
لا يوجد شي افضل من المثال العملي
مثال
يوجد لدي سكربت مقالات يحتوي على
id = رقم المقالة الفريد
title = عنوان المقالة
description = وصف المقالة (كما هو يعتبر تمهيد لقراءة المقال او وصف مختصر)
date = تاريخ المقالة
وبالطبع هنا سوف تسأل اين الوصلة سأجيب بأن رقم المقالة الفريد = الوصلة
----------------
نحتاج أولا لملف كونفق
----كود PHP:
<?php
$dbserver="localhost";
$dbuser="database-user";
$dbpass="password for data base";
$dbname="database name";
mysql_connect($dbserver,$dbuser,$dbpass);
mysql_select_db($dbname);
?>
يتبع
__________________
إستخدم ملفك الخاص لكتابة توقيعك
بإعتبار قاعدة البيانات الخاصة بك تحتوي على
وجدول القاعدة هو articlesكود:$id + $date + $description + $title
وعن تحليلك للكود أعلاه ستجد بأن العملية سهله للغايةكود PHP:
<?php
include("config.php");
header('Content-Type: text/xml');
// -------------- Header of XML -------------- //
echo "<?xml version=\"1.0\" encoding=\"Windows-1256\" ?>
<rss version=\"1.0\">
<channel>
<title>موقعك دوت كوم آخر مواد الموقع</title>
<link>http://www.swalif.net/</link>
<description>swalif أخر مقالات وأخبار الموقع</description>
";
// ------------------------------------------ //
$Sql = "select title, description, date, id from articles order by id DESC LIMIT 15";
$Result = mysql_query($Sql);
while ($Row = mysql_fetch_array($Result))
{
$title=$Row[title];
$id=$Row[id];
$date=$Row[date];
$description=$Row[description];
ECHO "\t<item>\r\n";
ECHO "\t\t<title>$title</title>\r\n";
ECHO "\t\t<link>http://www.swalif.net/articles.php?id=$id</link>\r\n";
ECHO "\t\t<description>$description</description>\r\n";
ECHO "\t\t<Date>$date</Date>\r\n";
ECHO "\t</item>\r\n";
}
ECHO "</channel>\r\n";
ECHO "</rss>";
?>
فالهدف من عملية تحويل لغة قاعدة البيانات إلى لغة xml
هو وضع اسطمبة (تمبلت) او نموذج جاهز بلغة xml يحتوي على ومتغيرات اربعة سبق ذكرها بالأعلى وتكرارها لعدد معين limit ووضعها بسكربت بسيط php (المثال أعلاه) ومن ثم تجربة السكربت لإحضار البيانات من قاعدة البيانات وصفها لك بطريقة xml
أرجو من الاخوة في موقع سوالف حفظ حقي بالشرح
اخوكم عبداللطيف العنزي aq8.net
__________________
إستخدم ملفك الخاص لكتابة توقيعك
طيب وكيف نقرا ملف xml ونستخرج منه المعلومات؟
السلام عليكم
جميل جدا الشرح اخي
انا لدي معرفة جيدة بالبي اتش بي يقابلها عدم معرفة ال xml
سؤال :
اذا كانت البيانات داخل القاعده مكتوبه هكذا
<فقرة > الحمد لله ذي العزة ، وأشهد أن <اسم مجموعة="علم" نوع="نبي" معياري="محمد بن عبد الله بن عبد المطلب الهاشمي القرشي" > محمدًا </اسم> عبده ورسوله الذي فضله الله بالنبوة والإرسال، صلى الله عليه وآله وصحبه خير صحب وآل، وسلَّم تسليمًا كثيرًا. <نه/> <سميك>وبعد:</سميك> <نه/> </فقرة>
فما تفسيرك وكيف اتعامل معه
__________________
سبحان الله وبحمده سبحان الله العظيم
العضوية يستخدمها اكثر من شخص
Nabeel A. Galal
Hawk Eye
nabeel.galal AT hotmail.com
لا يوجد قاعده بيانات اسمها xml
الـ xml تحفظ البيانات بها داخل tags محدده او تنشئه من قبلك ...
يمكنك قراءة او بالاصح توصيف ملف ال xml عبر xsl
__________________
مؤسسة المهمات البرمجية
00966507585887
0507585887
www.mr-php.com.sa
www.mr-php.com
بكيفي لتحميل الملفات
القران الكريم
المجموعة السعودية للانترنت
الحرية .. نبض ومعنى
اخي الكريم انا لدي حقل بقاعده البيانات يحتوي على نصوص مكتوبه كما اوضحت
كيف اتعامل معها ؟ كيف امررها لملف xsl مثلا وكيف اعرضها في صفحتى بصيغه مقرؤة
__________________
سبحان الله وبحمده سبحان الله العظيم
العضوية يستخدمها اكثر من شخص
Nabeel A. Galal
Hawk Eye
nabeel.galal AT hotmail.com
بسيطة استخدم طريقة str_replace لتحويل <فقرة> إلى <item>
مثال
وهكذاكود PHP:
$anyfunc = str_replace('<فقرة>','<item>',$anyfunc );
$anyfunc = str_replace('</فقرة>','</item>',$anyfunc );
__________________
إستخدم ملفك الخاص لكتابة توقيعك
الأخ فارس القبيلة
اليك رد ما سألت عنه
طبعا تحويل لغة xml إلى php مرة أخرى به اكثر من طريقة وأكثر من مثال
وطبعا الأخ المبدع استاذي ( رضا ) دائما يكرر في المثال خير مقال
اليك هذا الكود الذي يقوم بتحويل ملف xml على سيرفر خارجي إلى ملف مقروء بلغة php والناتج منه صفحة html
مثال لدينا كود xml من الجزيرة
http://www.aljazeera.net/Portal/RSS/...A67426F3B3.xml
نقوم بما يلي
كود PHP:
<?php
$backend = "http://www.aljazeera.net/Portal/RSS/RSS-8FD54E7F-56C5-49A0-B60A-89A67426F3B3.xml";
$insideitem = false;
$tag = "";
$title = "";
$description = "";
$link = "";
function startElement($parser, $tagName, $attrs) {
global $insideitem, $tag;
if ($insideitem) {
$tag = $tagName;
} elseif ($tagName == "ITEM") {
$insideitem = true;
}
}
function characterData($parser, $data) {
global $insideitem, $tag, $title, $description, $link;
if ($insideitem) {
switch ($tag) {
case "TITLE":
$title .= $data;
break;
case "DESCRIPTION":
$description .= $data;
break;
case "LINK":
$link .= $data;
break;
}
}
}
function endElement($parser, $tagName) {
global $insideitem, $tag, $title, $description, $link;
if ($tagName == "ITEM") {
printf("<p><b><a href='%s'><li dir=rtl>%s</li></a></b></p>",
trim($link),htmlspecialchars(trim($title)));
printf("<p dir=rtl><b>%s</b></p>",$description);
$title = $description = $link = $insideitem = false;
}
}
$xml_parser = xml_parser_create();
xml_set_element_handler($xml_parser, "startElement", "endElement");
xml_set_character_data_handler($xml_parser, "characterData");
$fp = fopen($backend, r);
while ($data = fread($fp, 4096)) {
xml_parse($xml_parser, $data, feof($fp))
or die(sprintf("XML error: %s at line %d",
xml_error_string(xml_get_error_code($xml_parser)),
xml_get_current_line_number($xml_parser)));
}
fclose($fp);
xml_parser_free($xml_parser);
?>
وللعلم الكود أعلاه يعمل مع 90 بالمئة من ملفات xml العالمية وقمت بنقله من احد المواقع المختصة بلغة php الاجنبية
اتمنى من الله ان اكون قد افدتك اخوي
__________________
إستخدم ملفك الخاص لكتابة توقيعك
يعنى ماذا تعنى العبارة
<اسم مجموعة="علم" نوع="نبي" معياري="محمد بن عبد الله بن عبد المطلب الهاشمي القرشي" > محمدًا </اسم>
واذا كان لدي اكثر من اسم نبي ومكتوب بنفس الطريقة واسماء اشياء اخرى وودت عرض اسماء الانبياء فقط هل تساعد ال xml في ذلك؟
__________________
سبحان الله وبحمده سبحان الله العظيم
العضوية يستخدمها اكثر من شخص
Nabeel A. Galal
Hawk Eye
nabeel.galal AT hotmail.com
اخي السائل
قاعدة البيانات لديك اعتقد انها مبرمجة بطريقة معينه بحيث يفهمها برنامج مصمم من قبل فيجوال بيسك على سبيل المثال والوسوم الموجودة تساعد البرنامج في فهم تصنيفات الاسماء
فمثلا وسم اسم المجموعة علم بمعنى (اسم علم) عكس (نكرة) يندرج تحته اكثر من نوع ومبين ذلك في النص الذي كتبته انت ومن هذه الانواع نبي
يجب معرفة كيف تكونت قاعدة البيانات لديك حتى نستطيع فهم طريقة الوسوم
بين قوسين ( اذا عرفنا كيف تكونت اساسا قاعدة البيانات لديك نستطيع فك رموزها )
وحط تحت الجاي خط
-----
-----
بصراحة حاس اني مو فاهم وراح اضيعك معاي![]()
__________________
إستخدم ملفك الخاص لكتابة توقيعك
قاعده البيانات لموقع وليس لبرنامج فيجوال
هي المشكلة انى اود ان اعلم هل تساعد ال xml في عرض بيانات معينه بناءا على التاج ام ان هذه الوسوم وضعت فقط لحاجه في نفس المبرمجين ..على العموم لو تضيفنى يكون افضل
hawkeye000@hotmail.com
__________________
سبحان الله وبحمده سبحان الله العظيم
العضوية يستخدمها اكثر من شخص
Nabeel A. Galal
Hawk Eye
nabeel.galal AT hotmail.com
أخى العزيز aq8.net بارك الله فيك و نفعك بما علمك و زادك علما
موضوع مهم جدا و شرح رائع
و جارى التجربة![]()
تحياتى لك يا aq8.net
__________________
شبكة البيت للتصميمات وبرمجة الاسكربتات الخاصة
http://www.Elbayt.NeT
الزواج - العقارات -الاخبار- مجلات خاصة - نيوك - منتديات - قروبات - مستعمل - الجوال - الوظائف - واى من الاسكربتات الخاصة