par
Tchouboudou » 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
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]
<!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>
[/code]
nouveau_sujet.php
[php]
<?php
$debut = microtime();
require_once ('includes/sql.class.php');
require_once('includes/template.php');
require_once('includes/xajax.inc.php');
/* Toujours du code */
?>
[/php]
previsualisation.js
[code]
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);
}
[/code]
previsualisation.php
[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
?>
[/php]
Quelqu'un a-t-il la solution ?
Merci d'avance,
[i][b]Tchouboudou[/b][/i]