简体   繁体   中英

Using PHP to output XML

<?
    $MySQLPassword = "indian";  
    $HostName = "localhost";    
    $UserName = "monty";

    mysql_connect($HostName,$UserName,$MySQLPassword)
    or die("ERROR: Could not connect to database!");

    mysql_select_db("sachin") or die("cannot select db");

    $keyword = $_POST['keyword'];
    echo $keyword;
   /* Execute the query that performs the actual search in the DB: */
   $result = mysql_query(" SELECT p.page_url AS url,
                           COUNT(*) AS occurrences 
                           FROM page p, word w, occurrence o
                           WHERE p.page_id = o.page_id AND
                           w.word_id = o.word_id AND
                           w.word_word = \"$keyword\"
                           GROUP BY p.page_id
                           ORDER BY occurrences DESC
                           " );

$output = new DOMDocument();
$output->formatOutput = true;
$output = "<loginsuccess>";

for( $i = 1; $row = mysql_fetch_array($result); $i++ )      {


$output .="<person><keyword>".$_POST['keyword']."</keyword><name>".$row['url']."</name><occur>".$row['occurrences']."</occur></person>";
}

$output .= "</loginsuccess>";
print ($output);

?>

I am getting the output as XML, but i need to store it in a separate xml file, can any one help me out.

One more question,....

I am using fwrite and able to write into a file, but how can i clear the file each time it writes, instead of writing at the end of file? i need the existing content to be destroyed and re written again.

Use fwrite .

EDIT: To truncate, use:

$handle = fopen($filename , "wb")

when doing the open. The w means open for writing and truncate to 0 length. The b means binary mode so Windows doesn't mess with your line endings.

file_put_contents是将字符串转储到文件的最简单方法。

只需简单的文件功能,即可在PHP.net网站上进行检查。

In addition, you wanna make sure your properly escape the contents of the XML file. htmlentities() is a good place to start reading up on the subject, or you can just use <![CDATA[ ... ]]>

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM