salut,
tu n'envoie pas de données (xhr.send(null); dans ta requête serveur du coup cela ne fait 'rien' coté serveur
CKEDITOR.tools.enableHtml5Elements( document );
function timer() {
comp = (setTimeout("go()", 5000));
}
function getXhr() {
var xhr = null;
if (window.XMLHttpRequest) // Firefox et autres
xhr = new XMLHttpRequest();
else if (window.ActiveXObject) { // Internet Explorer
try {
xhr = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
}
else { // XMLHttpRequest non supporté par le navigateur
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
xhr = false;
}
return xhr
}
function go() {
var xhr = getXhr()
// On défini ce qu'on va faire quand on aura la réponse
xhr.onreadystatechange = function () {
// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
if (xhr.readyState == 4 && xhr.status == 200) {
var html = xhr.responseText;
document.getElementById('txt').innerHTML = html;
}
}
xhr.open("POST", "brouillon.php", true);
xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhr.send('data='+encodeURI(CKEDITOR.instances.editor1.getData()));
setTimeout('go()', 5000);
}
coté serveur tu récupère $_POST['data'], attention c'est du HTML qui est envoyé (parce que sinon pas formatage.
Globalement tu peux :
Extraite le JS dans un fichier .js a part cela facilitera la lecture du code.
Utiliser une lib js pour la requête serveur, tu va y gagner coté lecture du code. Il y a le classique jQuery qui peut te permettre d'avoir plein de truc plus ou moins bien pour animer ton ihm).
sinon y a moyen de trouver ton bonheur la dedans
http://microjs.com/
perso j'ai testé
reqwest et
psQuery qui font leurs boulots pour des tailles réduite (3.5 ko et 1.7ko).
Il y a du choix, le but c'est de simplifier la lecture du code et sont utilisation / réemploi.
edit :
J'ai oublier un exemple.
Avec psquery tu peux résumer ta mécanique de requête serveur à
$.ajax({
type: 'POST',
url: 'brouillon.php',
data: 'data=' + encodeURI(CKEDITOR.instances.editor1.getData()),
success: function (data) {
document.getElementById('txt').innerHTML = data;
}
});
de 37 lignes de code tu passe à 8

avec juste l'import <script src='
https://rawgit.com/pseudosavant/psQuery ... '></script>
@+