لقد كانت هذه الأشياء تعبث معي طوال اليوم. . . لكن في النهاية، وجدت أنني لم أتمكن من تحقيق التأثير الذي تخيلته. . . يا للعار. . . يبدو أن PHP بحاجة إلى تعزيز لـ XML. . . إذا كان أي شخص لديه بحث في هذا الشأن. مرحبا بكم في الكتابة للمناقشة. . .
قم أولاً بإنشاء الجدول:
إنشاء كتب الجدول (
bookid int(4) ليس NULL auto_increment،
اسم الكتاب varchar(100) ليس فارغًا،
bookauth varchar(50) ليست فارغة،
ناشر الكتب varchar(50) ليس فارغًا،
bookpubdate datetime ليس فارغًا،
bookurl varchar(50) ليس فارغًا،
مفتاح الكتاب (bookid)،
)؛
ثم. . . هذا القسم هو الكود المصدري لجلب البيانات من MYSQL وتحويلها إلى XML:
<؟
$connect_id=mysql_connect("localhost"،"root"،"")؛
mysql_select_db("bbs",$connect_id);
$query="select * from books order by bookid";
$rs=mysql_query($query,$connect_id);
$numfields=mysql_num_fields($rs);
$XMLfile="<?XML version="1.0" encoding="GB2312"?>n";
$XMLfile.="<books>n";
while($row=mysql_fetch_array($rs)){
for($i=0;$i<$numfields;$i ){
$fieldname=mysql_field_name($rs,$i);
$XMLfile.="<" . $fieldname ">" .
}
}
mysql_free_result($rs);
mysql_ Close($connect_id);
$XMLfile.="</books>n";
$fp=fopen("XMLdoc/XMLdoc.XML"،"w");
إذا(fwrite($fp,$XMLfile)){
echo "جاري الكتابة للملف بنجاح!";
}
آخر{
صدى "فشلت كتابة الملف!";
}
?>
هذا القسم هو الكود المصدري الذي يجلب البيانات من XML ويحولها إلى HTML. . .
<؟
فئة XML {
فار $محلل
وظيفي XML(){
$this->parser = XML_parser_create();
XML_set_object($this->المحلل اللغوي,&$this);
XML_set_element_handler($this->parser,"tag_on",tag_off");
XML_set_character_data_handler($this->parser,"cdata");
}
تحليل الدالة($data){
XML_parse($this->parser,$data);
}
وظيفة tag_on($محلل,$tag,$attributes){
إذا (XML_get_current_line_number($محلل)==2){
echo "<tr><td colspan="2" align="center">" $tag "</td>" .
}
آخر{
التبديل ((XML_get_current_line_number($parser)-2)%6){
الحالة 0:
صدى "<tr><td>تنزيل<td>";
استراحة؛
الحالة 1:
صدى "<tr><td>رقم الهوية<td>";
استراحة؛
الحالة 2:
echo "<tr><td>عنوان الكتاب<td>";
استراحة؛
الحالة 3:
صدى "<tr><td>المؤلف<td>";
استراحة؛
الحالة 4:
echo "<tr><td>دار النشر<td>";
استراحة؛
الحالة 5:
echo "<tr><td>تاريخ النشر<td>";
استراحة؛
}
}
}
دالة cdata($محلل،$cdata){
صدى $cdata؛
}
وظيفة tag_off($محلل,$tag){
صدى "ن"؛
}
}
$XML_parser = new XML();
$XMLfilename="XMLdoc/XMLdoc.XML";
$fp=fopen($XMLfilename,"r");
$XMLdata=fread($fp,filesize($XMLfilename));
?>
<HTML><head><title>معلومات الكتاب</title></head>
<الجسم>
<حدود الجدول = "0" تباعد الخلايا = "1" خلية الحشو = "2" العرض = "80٪" bgcolor = "#b0d8fF" محاذاة = "المركز">
<؟
$XML_parser->parse($XMLdata);
?>
</table>
في الواقع، يجب أن تكون قادرًا على رؤيته. . هذا المثال فاشل. . . لأن التأثير ليس كبيرا. . أنت ببساطة لا تستطيع الحصول على ما تريد. . . حسنًا. . . مر. . . .