이 일이 하루종일 나를 괴롭혔어요. . . 하지만 결국 제가 상상했던 효과를 얻을 수 없다는 것을 알게 되었습니다. . . 정말 부끄러운 일입니다. . . XML을 위해서는 PHP를 강화해야 할 것 같습니다. . . 이에 대해 연구한 사람이 있다면. 토론을 위해 글을 쓰는 것을 환영합니다. . .
먼저 테이블을 만듭니다.
테이블 책 만들기(
bookid int(4) NOT NULL auto_increment,
책 이름 varchar(100) NOT NULL,
bookauth varchar(50) NULL이 아닙니다.
bookpublisher varchar(50) NOT NULL,
bookpubdate 날짜/시간은 NULL이 아닙니다.
bookurl varchar(50) NULL이 아닙니다.
KEY 북아이디(bookid),
);
그 다음에. . . 이 섹션은 MYSQL에서 데이터를 가져와 XML로 변환하는 소스 코드입니다.
<?
$connect_id=mysql_connect("localhost","루트","");
mysql_select_db("bbs",$connect_id);
$query="도서 ID별 도서 주문에서 * 선택";
$rs=mysql_query($query,$connect_id);
$numfields=mysql_num_fields($rs);
$XMLfile="<?XML version="1.0" 인코딩="GB2312"?>n";
$XMLfile.="<책>n";
while($row=mysql_fetch_array($rs)){
for($i=0;$i<$numfields;$i ){
$fieldname=mysql_field_name($rs,$i);
$XMLfile.="<" . ">" . $row[$i] . ">n";
}
}
mysql_free_result($rs);
mysql_close($connect_id);
$XMLfile.="</books>n";
$fp=fopen("XMLdoc/XMLdoc.XML","w");
if(fwrite($fp,$XML파일)){
echo "파일에 성공적으로 썼습니다!";
}
또 다른{
echo "파일 쓰기 실패!";
}
?>
이 섹션은 XML에서 데이터를 가져와 HTML로 변환하는 소스 코드입니다. . .
<?
클래스 XML{
var $파서;
함수 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->파서,$data);
}
함수 tag_on($parser,$tag,$attributes){
if(XML_get_current_line_number($parser)==2){
echo "<tr><td colspan="2" align="center">" . $tag "</td>";
}
또 다른{
스위치 ((XML_get_current_line_number($parser)-2)%6){
사례 0:
echo "<tr><td>다운로드<td>";
부서지다;
사례 1:
echo "<tr><td>ID 번호<td>";
부서지다;
사례 2:
echo "<tr><td>책 제목<td>";
부서지다;
사례 3:
echo "<tr><td>저자<td>";
부서지다;
사례 4:
echo "<tr><td>출판사<td>";
부서지다;
사례 5:
echo "<tr><td>출판일<td>";
부서지다;
}
}
}
함수 cdata($parser,$cdata){
에코 $cdata;
}
함수 tag_off($parser,$tag){
에코 "n";
}
}
$XML_parser = 새 XML();
$XMLfilename="XMLdoc/XMLdoc.XML";
$fp=fopen($XML파일명,"r");
$XMLdata=fread($fp,파일 크기($XML파일 이름));
?>
<HTML><head><title>도서 정보</title></head>
<본문>
<table border="0" cellpacing="1" cellpadding="2" width="80%" bgcolor="#b0d8fF" align="center">
<?
$XML_parser->파싱($XMLdata);
?>
</table>
실제로 보면 알 수 있을 것입니다. . 이 예는 실패입니다. . . 효과가 크지 않으니까요. . 당신은 단순히 당신이 원하는 것을 얻을 수 없습니다. . . 잘. . . 격렬한. . . .