banner

[Rule] Rules  [Home] Main Forum  [Portal] Portal  
[Members] Member Listing  [Statistics] Statistics  [Search] Search  [Reading Room] Reading Room 
[Register] Register  
[Login] Loginhttp  | https  ]
 
Forum Index Thảo luận hệ điều hành Windows Một thắc mắc nhỏ về PHP (xml view)  XML
  [Question]   Một thắc mắc nhỏ về PHP (xml view) 23/09/2007 03:46:12 (+0700) | #1 | 86359
L0ng3ta
Locked

[Minus]    0    [Plus]
Joined: 17/09/2002 13:47:43
Messages: 264
Location: Địa cầu
Offline
[Profile] [PM]
Tôi có đoạn code php sau:

Code:
<?php
  function showXML(){
    header( "content-type: text/xml" );
    $str = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>"; //dong 3
    $str .= "<?xml-stylesheet type=\"text/xsl\" href=\"format.xsl\"?>";  //dong 4
    //$str .= " <books>";
    //$str .= "<book name=\"Code Generation in Action\"><price>120$</price><author>abc</author></book>";
    //$str .= "</books>";
    //echo $str;
    
    echo ( "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>");
    echo( "<?xml-stylesheet type=\"text/xsl\" href=\"format.xsl\"?>");
    echo (" <books>");
    echo ("<book name=\"Book Title 1 \" ><price>120$</price><author>abc</author></book>");
    echo ("<book name=\"Book Title 2 \" ><price>130$</price><author>sdfdsc</author></book>");
    echo ("<book name=\"Book Title 3\" ><price>140$</price><author>asdf</author></book>");
    echo ("<book name=\"Book Title 4\" ><price>1250$</price><author>abdsfsdc</author></book>");
    echo( "</books>");
  }
  
showXML();	
?>


và đây là format.xsl

Code:
<?xml version="1.0" encoding="UTF-8"?>
	<xsl:stylesheet xmlnssmiliesl="http://www.w3.org/1999/XSL/Transform" version="1.0">
	   <xsl:output method="html" />
	   <xsl:template match="/">
	    <html>
		<head>
		<link rel="stylesheet" href="default.css" type="text/css" media="screen" />
		</head>
		 <body>
			<table width="400">
			<xsl:for-each select="/books/book">
				<tr>
					<td align="center" class="menu-active">
						<xsl:value-of select="@name" />
						
					</td>
				</tr>
				<tr>
					<td>
						<table>
							<tr>
								<td class="menu-inactive" width="200" align="center">
									<xsl:value-of select="price" />
								</td>
								<td class="menu-inactive"  width="200" align="center">
									<xsl:value-of select="author" />
								</td>
							</tr>
						</table>
					</td>
				</tr>
			</xsl:for-each>
			</table>
		 </body>
		</html>
	  </xsl:template>
	 </xsl:stylesheet>

Và kết quả là:




Vấn đề ở đây là khi tôi comment hai dòng (dòng 3 và dòng 4) ở đoạn code PHP trên thì sẽ không hiển thị gì cả ?! nếu bỏ comment thì kết quả tốt, điều lạ ở đây là 2 dòng trên chẳng liên quan gì cả. Vậy ai biết như thế nào và lý do gì xin giải thích hộ. Thank.

Bổ sung: PHP phiên bản 5.2.4 cấu hình trên IIS 5.1
[Up] [Print Copy]
  [Question]   Re: Một thắc mắc nhỏ về PHP (xml view) 26/09/2007 07:37:32 (+0700) | #2 | 87034
[Avatar]
SuperChicken
Elite Member

[Minus]    0    [Plus]
Joined: 11/07/2006 18:31:27
Messages: 635
Location: bottom of hell
Offline
[Profile] [PM]
http://www.php.net/manual/en/language.basic-syntax.comments.php
Quả thật làm việc hơn 1 năm với PHP mà bây giờ mới biết cái vụ này.
Vấn đề là trong dòng 3 có dấu này: <?
Nên mặc dù có comment out nó ra thì PHP lại vẫn tiếp tục dịch tiếp đoạn phía sau dấu <? và kết quả là syntax error, "không hiển thị gì cả" có thể là do file ini của bạn đã set display_error = Off
Vụ này đúng là lạ thiệt, theo nguyên tắc thì tất cả những gì phía sau ký tự comment đều bị bỏ qua, ấy vậy mà PHP lại dịch tiếp nếu phát hiện dấu mở PHP trên dòng đó smilie
[Up] [Print Copy]
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to: 
 Users currently in here 
1 Anonymous

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|