Oooops ma chaine XML est interprétée comme du PHP...

Oooops ma chaine XML est interprétée comme du PHP... - Programmation

Marsh Posté le 23-04-2002 à 13:40:35    

j'ai une fonction javascript pour détecter la version du parseur MSXML ionstallé chez le client:
 
function xml3()  // MSXML3 ?
{
    var objDOM ;
    var xmlDoc = "<?xml version=\"1.0\"?><FOOBAR>Hello</FOOBAR>";
    // instructions...
}
 
Dans une page HTML ca passait tres bien mais maintenant que c'est une page PHP (pour session_start entre autres), j'ai beau déclarer le code PHP par <?php ... ?>, il interprete le string placé dans le javascript comme du PHP à cause de <?xml ... ?>, et du coup j'ai droit à ma parse error... :cry:
 
J'ai essayé de remplacer < par < et > par > dans le string, mais du coup la fonction javascript marche plus... :(
 
Une idée? :)

Reply

Marsh Posté le 23-04-2002 à 13:40:35   

Reply

Marsh Posté le 23-04-2002 à 13:51:19    

Essaie de faire des

Code :
  1. <?echo "<?"?>

mais c'est bourrin :D

Reply

Marsh Posté le 23-04-2002 à 13:59:16    

Tentacle a écrit a écrit :

Essaie de faire des

Code :
  1. <?echo "<?"?>

mais c'est bourrin :D  




;) ca serait bete que ca marche vu que c presk pile poil le meme cas, m'enfin kinetenteriennarien

Reply

Marsh Posté le 23-04-2002 à 14:01:06    

var xmlDoc = "<" + "?xml version=\"1.0\"?" + "><FOOBAR>Hello</FOOBAR>";  
 
(je pense)
 
mais c'est pas très bô :(

Reply

Marsh Posté le 23-04-2002 à 14:27:35    

j'ai fait ca:
var xmlDoc = "<?php echo "<?xml version=\"1.0\"?>"?><FOOBAR>Hello</FOOBAR>";
 
mais ca donne pareil qu'avec < et >, page blanche (ca foire quoi)
 
youdontcare >> jva essayer, ca m'a l'air bien

Reply

Marsh Posté le 23-04-2002 à 14:41:06    

youdontcare a écrit a écrit :

var xmlDoc = "<" + "?xml version=\"1.0\"?" + "><FOOBAR>Hello</FOOBAR>";  
 
(je pense)
 
mais c'est pas très bô :(  




 
ouep! c futé et ca marche :jap:
etonnant qd meme que le php pige po qu'on lui parle pas kan on dit "<?xml"...!

Reply

Marsh Posté le 23-04-2002 à 17:11:17    

sinon, y a çà :
 
echo '
function xml3()  // MSXML3 ?
{
   var objDOM ;
   var xmlDoc = "<?xml version=\"1.0\"?><FOOBAR>Hello</FOOBAR>";
   // instructions...
}
';

Reply

Marsh Posté le 23-04-2002 à 17:14:26    

bin non, le singlequote ne regle rien.
bien essayé mais youdontcare winner! :D

Reply

Marsh Posté le 23-04-2002 à 17:16:33    

c'est la même technique que ceux qui écrivent du js en js, avec un document.write("<scr" + "ipt>" + le code js);
 
enfin je crois :D

Reply

Marsh Posté le 23-04-2002 à 17:18:03    

jva mettre ca dans un koin de ma tete.
:jap: encore

Reply

Marsh Posté le 23-04-2002 à 17:18:03   

Reply

Marsh Posté le 23-04-2002 à 17:22:18    

y'a encore une autre solution, écrire le code unicode d'un des caractères :
 
document.write('\u003f';) -> affiche '?'
document.write('<\u003fxml\u003f>';) -> affiche '<?xml?>'
 
c'est toujours pas génial mais ça évite la concaténation.

Reply

Marsh Posté le 23-04-2002 à 17:32:56    

youdontcare a écrit a écrit :

y'a encore une autre solution, écrire le code unicode d'un des caractères :
 
document.write('\u003f';) -> affiche '?'
document.write('<\u003fxml\u003f>';) -> affiche '<?xml?>'
 
c'est toujours pas génial mais ça évite la concaténation.  




 
mais document.write, ca va vrmt l'afficher sur le browser nan? [:whiteponey]

Reply

Marsh Posté le 23-04-2002 à 17:35:17    

oui, mais le principe reste le même :)
 
var xmlDoc = "<\u003fxml version= ...";

Reply

Marsh Posté le 23-04-2002 à 17:38:07    

youdontcare a écrit a écrit :

oui, mais le principe reste le même :)
 
var xmlDoc = "<\u003fxml version= ...";  




suis-je bete (vi)
ca marche glop comme tu dis [:yaisse]

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed