Probleème avec XMLHttpRequest

Eléphanteau du PHP | 15 Messages

19 avr. 2006, 17:02

Bonjour tout le monde…

Pour mon site, et plus particulièrement mon forum, j'ai voulu utiliser ajax pour pouvoir avoir une méthode de prévisualisation. Hors, ma fonction ne marche pas. Elle ne marche seulement lorsqu'il y a une erreur, ça m'affiche l'erreur. Voici mon code :


nouveau_sujet.tpl

Code : Tout sélectionner

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" > <head> <title>Naltariël - Liste des sujets</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <script type="text/javascript" src="includes/bbcode.js"></script> <script type="text/javascript" src="includes/previsualisation.js"></script> <link rel="stylesheet" media="screen" type="text/css" title="Design" href="templates/style.css" /> </head> <body> /* Du code */ <tr> <td><strong>Aperçu</strong></td> <td id="apercu"></td> </tr>
nouveau_sujet.php
<?php
$debut = microtime();
require_once ('includes/sql.class.php');
require_once('includes/template.php');
require_once('includes/xajax.inc.php');

/* Toujours du code */

?>
previsualisation.js

Code : Tout sélectionner

function apercu(f,id) { var texte = document.getElementById('message').value; var xhr; if (window.XMLHttpRequest) xhr = new XMLHttpRequest(); else if (window.ActiveXObject) xhr = new ActiveXObject('Microsoft.XMLHTTP'); else { alert('JavaScript : votre navigateur ne supporte pas les objets XMLHttpRequest...'); return; } xhr.open('POST', 'includes/previsualisation.php', true); xhr.onreadystatechange = function() { if (xhr.readyState == 4) { if (document.getElementById) document.getElementById(id).innerHTML = xhr.responseText; } } xhr.setRequestHeader('Content-type','application/x-www-form-urlencoded'); var data = 'message=' + escape(texte); xhr.send(data); }
previsualisation.php
<?php
header('Content-type: text/html; charset=iso-8859-1'); // en-tête HTTP
include('forum_parse.php'); // pour la fonction bbcode_parse()
echo nl2br(htmlentities(forum_parse($_POST['message']),ENT_QUOTES)); // on affiche le html
?>
Quelqu'un a-t-il la solution ?

Merci d'avance,
Tchouboudou