Использование PHP для вывода XML - PullRequest
0 голосов
/ 25 мая 2009
<?
    $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);

?>

Я получаю вывод в виде XML, но мне нужно сохранить его в отдельном XML-файле, может ли кто-нибудь мне помочь.

Еще один вопрос, ....

Я использую fwrite и могу записывать в файл, но как я могу очистить файл каждый раз, когда он записывает, вместо записи в конце файла? мне нужно, чтобы существующий контент был уничтожен и переписан заново.

Ответы [ 4 ]

4 голосов
/ 25 мая 2009

Использование fwrite .

РЕДАКТИРОВАТЬ: Чтобы усечь, используйте:

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

при открытии. W означает открытый для записи и обрезать до 0 длины. «B» означает двоичный режим, поэтому Windows не портит окончания строк.

2 голосов
/ 25 мая 2009

file_put_contents - это самый простой способ вывести строку в файл.

0 голосов
/ 25 мая 2009

Только простые файловые функции, посмотрите их на сайте PHP.net.

0 голосов
/ 25 мая 2009

Кроме того, вы хотите убедиться, что вы правильно экранировали содержимое файла XML. htmlentities () - хорошее место, чтобы начать читать по этому вопросу, или вы можете просто использовать <![CDATA[ ... ]]>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...