simulation frame par xmlhttprequest

Mammouth du PHP | 1311 Messages

08 juin 2005, 19:56

salut
ma question est la suivante
peut t'on simuler un frame ou iframe avec la fonction xmlhttprequest?
c'est a dire recharger un bout de page générer par du php sans bien sur recharger la page complete

merci

Invité
Invité n'ayant pas de compte PHPfrance

08 juin 2005, 20:11

bien sur que cela est possible.

un exemple que j'utilise pour un site de rencontre avec chat, il me permet de vérifier que quelq'un essaie de me contacter si oui il affiche une page d'alerte
<?
echo "<script language='javascript'>\n";
echo "<!--\n";
echo "function alerte_chat() {\n";
echo "var xhr_object = null;\n";
echo "\n";
echo "if(window.XMLHttpRequest)\n";
echo "xhr_object = new XMLHttpRequest();\n";
echo "else if(window.ActiveXObject)\n";
echo "xhr_object = new ActiveXObject('Microsoft.XMLHTTP');\n";
echo "else {\n";
echo "alert('Votre navigateur ne supporte pas les objets XMLHTTPRequest...');\n";
echo "return;\n";
echo "}\n";
echo "\n";
echo "xhr_object.open('POST', 'mon_script.php', true);\n";
echo "\n";
echo "xhr_object.onreadystatechange = function() {\n";
echo "if(xhr_object.readyState == 4) {\n";
echo "mess_chat = xhr_object.responseText;\n";
echo "if (mess_chat=='no_alerte')\n";
echo "{\n";
echo "}\n";
echo "if (mess_chat=='alerte')\n";
echo "{\n";
echo "window.open('ma page d'alerte');\n";
echo "}\n";

echo "}\n";
echo "}\n";
echo "\n";
echo "xhr_object.send(null);\n";
echo "\n";
echo "setTimeout('alerte_chat()',10000);\n";
echo "}\n";
echo "//-->\n";
echo "</script>\n";
?>
mon_script.php c'est le script qui verifie les messages

ma page d'alerte c'est la page qui vas s'ouvrir si je reçoit un message

en espérant t'avoir aidé


pour plus d'infos essaie de chercher sur les sites traitant du javascript