Salut,
J'ai une page dans laquelle je veux requêter régulierement mon serveur
sans rechargement de la page, et faire apparaitre des messages à l'utilisateur si il y en a.
L'utilisateur pourra alors ignorer la notification, et elle ne lui sera plus jamais affichée.
Donc une page html avec une requête ajax lancée toutes les 10 secondes
faisant appel à une page php qui demande à MySQL si il y a des notifications à afficher.
Voila mon HTML
et voila mon php
Mon javascript n'observe pas la classe 'interact'
M'y prends-je de la bonne manière ?
Modifié par Glide (15 Sep 2009 - 17:13)
J'ai une page dans laquelle je veux requêter régulierement mon serveur
sans rechargement de la page, et faire apparaitre des messages à l'utilisateur si il y en a.
L'utilisateur pourra alors ignorer la notification, et elle ne lui sera plus jamais affichée.
Donc une page html avec une requête ajax lancée toutes les 10 secondes
faisant appel à une page php qui demande à MySQL si il y a des notifications à afficher.
Voila mon HTML
<!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="en" lang="en">
<head>
<script language="JavaScript" type="text/javascript" src="../javascript/jquery-1.3.2.min.js"></script>
<script language="JavaScript" type="text/javascript" src="../javascript/jquery.timers-1.1.3.js"></script>
<script language="JavaScript" type="text/javascript">
$(document).everyTime(5000, function() {
$('#notifier').load('test.php');
});
function interact() {
$(this).removeClass('interact');
if ($(this).hasClass('ignore')) {
$('#notifier').load('test.php', {'action': 'ignore', 'id': $(this).parent().attr('id')});
}
}
$('.interact').click(interact());
</script>
</head>
<body>
<div id="notifier"></div>
</body>
et voila mon php
<?php
ini_set('include_path', '/home/httpd/html/default/v8/mod_report/include');
include('mini_db.php');
if ($action) {
echo ('<pre>');
print_r($_REQUEST);
echo ('</pre>');
die();
}
$v8 = new mini_db();
$sql = 'SELECT
id
, message
FROM notification
;';
$v8->query($sql);
foreach ($v8->arr_result as $row) { // <- ca c'est l'array avec le dataset renvoyé par MySQL
?>
<div id="<?php echo($row['id']) ?>">
<span class="interact ignore">ignore</span>
| <?php echo ($row['message']) ?>
</div>
<?php
}
?>
Mon javascript n'observe pas la classe 'interact'
M'y prends-je de la bonne manière ?
Modifié par Glide (15 Sep 2009 - 17:13)