generazione XML

ciao! avevo un guestbook in flash che leggeva i dati dal database tramite una pagina asp che generava un file XML, ho dovuto spostare il sito su linux per utilizzare PHP e mysql e ho tradotto il codice asp in PHP utilizzando lo stesso actionscript che funzionava cambiando solo il nome del file che mi caricava i dati, ma ora il guestbook scrive ma non legge!! questo è il file PHP:

<?php
include ("connessione.php");
connect_to_chat_db();

include ("errore.php");


echo nl2br("<?xml version='1.0' encoding='UTF-8'?>");
echo nl2br("<web>");

$sql="SELECT * FROM motta_guestbook ORDER BY idmsg ASC";
$query = mysql_query($sql) or die (errore_server());

while ($row= mysql_fetch_array ($query)){
   
   echo nl2br("<guestbook>");
   echo nl2br("<nome>". $row['nome'] ."</nome>");
   echo nl2br("<email>". $row['email'] ."</email>");
   echo nl2br("<msg>". $row['msg'] ."</msg>");
   echo nl2br("<datamsg>". $row['datamsg'] ."</datamsg>");
   echo nl2br("</guestbook>");
   
}

echo nl2br("</web>");
//nl2br().

?>

ho aggiunto la funzione nl2br(); perche mi ricordo che flash non leggeva l'asp se non c'era una funzione che mandava a capo così:

[response.write "<guestbook>"&vbcrlf

avevo provato anche con \n ma l'XML mi dava errore, forse non è il modo corretto per andare a capo comunque l'xml generato è così e non da errore mi aiutate a capire perchè il flash leggeva l'xml di asp e non quello di php??:

[ <?xml version="1.0" encoding="UTF-8" ?> 
- <web>
- <guestbook>
  <nome>pippo</nome> 
  <email>pippo@ciao.it</email> 
  <msg /> 
  <datamsg>2007-04-21</datamsg> 
  </guestbook>
  </web>
inviato 9 anni fa
cyb
cyb
1
X 0 X

Hai un esempio di file XML generato da ASP? Potresti confrontarlo con uno equivalente generato dallo script PHP e cercare le differenze.

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

si con ASP mi funzionava, la differenza sta nell'andare a capo dopo il tag, la funzione  nl2br() è giusta o c'è un altro modo per andare a capo??

con asp facevo :

response.write "<guestbook>"&vbcrlf

con php ho provato così:

echo nl2br("<guestbook>");

credo sia questo il problema non so andare a capo con PHP (con \n mi dava errore)

risposto 9 anni fa
cyb
cyb
1
X 0 X

prova a togliere gli nl2br (che servono a tutt'altro scopo) e metti i caratteri \n alla fine di ogni riga prodotta  cone le echo:

echo "<guestbook>\n";

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

grazie!! ora funziona mi dava errore perche ci mettevo il punto!! :bye:

ciao

cyb

risposto 9 anni fa
cyb
cyb
1
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda