Sript pour tchat non fonctionnel
Résolu
rolly41
Messages postés
244
Date d'inscription
Statut
Membre
Dernière intervention
-
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour à vous, j'ai actuellement un script qui reprend le message posté dans un formulaire.
Le travail de ce script est d'afficher le message une fois posté. Mais celui-ci ne s'affiche pas chez les autres utilisateur et n'inscrit pas les données dans la base de données.
Je ne trouve malheureusement pas l'erreur dans le script.
Pourriez-vous m'aider à trouver le problème?
dossier source:
shoutbox.php
include/get_shoutbox.php
include/post_shoutbox.php
js/main_shoutbox.php
Voici main_shoutbox.js
Voici get_shoutbox.php
Voici post_shoutbox.php
Voici shoutbox.php
Pourriez-vous m'aider à trouver la/les source(s) du (des) problème(s) ?
Le travail de ce script est d'afficher le message une fois posté. Mais celui-ci ne s'affiche pas chez les autres utilisateur et n'inscrit pas les données dans la base de données.
Je ne trouve malheureusement pas l'erreur dans le script.
Pourriez-vous m'aider à trouver le problème?
dossier source:
shoutbox.php
include/get_shoutbox.php
include/post_shoutbox.php
js/main_shoutbox.php
Voici main_shoutbox.js
$('#envoyer').click(function(e) { e.preventDefault(); // on empêche le bouton d'envoyer le formulaire var pseudo = encodeURIComponent( $('#pseudo_expediteur').val() );//pseudo de l'expediteur var msg = encodeURIComponent( $('#message_expediteur').val() );//message envoyé var id_salon = encodeURIComponent( $('#id_salon').val() );//id du salon var id = encodeURIComponent( $('#id_expediteur').val() );//id de l'expediteur var timer = new Date(); //création variable timer var annee = timer.getFullYear(); var mois = timer.getMonth()+1; var jour = timer.getDate(); var hrs = timer.getHours(); var mins = timer.getMinutes(); var secs = timer.getSeconds(); var heure = ((hrs<10)?"0":"")+hrs; var minute = ((mins<10)?"0":"")+mins; var seconde = ((secs<10)?"0":"")+secs; var date = jour+"/"+mois+"/"+annee; var time = heure+":"+minute+":"+seconde; if(msg != "") { // on vérifie que les variables ne sont pas vides $.ajax( { url : "../include/post_shoutbox.php", // on donne l'URL du fichier de traitement type : "POST", // la requête est de type POST data : "date=" + date + "&time=" + time + "&message=" + msg + "&id_salon=" + id_salon + "&id=" + id// et on envoie nos données }); $('#messages').append("<font>" + date + " à " + time + " " + pseudo + " dit : " + msg + "</font>"); // on ajoute le message dans la zone prévue } else { alert('Votre message est vide'); } }); function charger() { setTimeout( function() { var premierID = $('#messages p:first').attr('id'); // on récupère l'id le plus récent $.ajax( { url : "../include/get_shoutbox.php?id=" + premierID, // on passe l'id le plus récent au fichier de chargement type : GET, success : function(html) { $('#messages').prepend(html); } }); charger(); }, 500); } charger();
Voici get_shoutbox.php
<?php if(!empty($_GET['id'])) { // on vérifie que l'id est bien présent et pas vide $id = (int) $_GET['id']; // on s'assure que c'est un nombre entier // on récupère les messages ayant un id plus grand que celui donné $requete = $bdd->prepare('SELECT * FROM messages WHERE id > :id ORDER BY id DESC'); $requete->execute(array("id" => $id)); $messages = 'Ce message n\'existe pas'; // on inscrit tous les nouveaux messages dans une variable while($donnees = $requete->fetch()) { $messages .= "<font id=\"" . $donnees['id'] . "\">".$msg['date']." à ".$msg['time']." ".$msg['author']." dit : ". $msg['message']."<hr/></font>"; } echo $messages; // enfin, on retourne les messages à notre script JS } ?>
Voici post_shoutbox.php
<?php if (!empty($_POST)) { if(!empty(strip_tags($_POST['message'])) && strlen(strip_tags($_POST['message'])) >= 1) { $message= strip_tags($_POST['message']); if(isset($_SESSION)) { $id_salon=$_POST['id_salon']; $id_session=$_SESSION['id']; $erreur['msg']='Vous pouvez maintenant faire de nouvelle vérifications'; $requete = $bdd->prepare("SELECT * FROM shoutbox_msg WHERE id_expediteur = ? AND id_salon = ?"); $requete->bindParam(1, $id_session); $requete->bindParam(2, $id_salon); $requete->execute(); if($requete->fetch()) { $erreur['msg']='La requête indique que vous avez déjà posté des messages dans ce salon'; $flood=false; //$flood=true; } else { $erreur['msg']='La requête indique que vous n\'avez pas posté de message dans ce salon'; $flood=false; } if($flood==false) { $erreur['msg']='Votre message peut-être enregistré'; $requete = $bdd->prepare("INSERT INTO shoutbox_msg (id_expediteur, time_msg, date_msg, msg, id_salon) VALUES (?,?,?,?,?)"); $requete->bindParam(1, $id_session); $requete->bindParam(2, $time); $requete->bindParam(3, $date); $requete->bindParam(4, $message); $requete->bindParam(5, $id_salon); $requete->execute(); if($requete) { $erreur['msg']='Votre message a été envoyé'; $erreur=array(); $message=array(); } else { $erreur['msg']='Votre message n\'a pas été envoyé'; } } else { $erreur['msg']='Ce message a déjà été envoyé ses 10 derniére secondes'; } } else { $erreur['msg']='Vous devez être connecté pour pouvoir discuter'; } } else { $erreur['msg']='Votre message doit contenir au minimum 1 caractére'; $message= strip_tags($_POST['message']); } } ?>
Voici shoutbox.php
<?php if(empty($subtitle)) { $subtitle='Shoutbox'; include 'include/header.php'; include 'include/body.php'; if (!isset($nbrs_admin)) { $nbrs_admin='0'; } if (!isset($nbrs_modo)) { $nbrs_modo='0'; } if (!isset($nbrs_membre)) { $nbrs_membre='0'; } if($maintenance == 'off') { if(empty($id_salon)) { $id_salon='2'; } $erreur=array(); $_SESSION['id']='1'; $_SESSION['pseudo']='Administrateur'; include('include/post_shoutbox.php'); ?> <div height="100%" width="100%" align="center" valign="middle"> <form method="POST" action="shoutbox.php"> <table border="1" align="bottom" class="shoutbox"> <tr valign="middle" width="100%" class="shout1"><td colspan="2" align="center">Bienvenue dans la Shoutbox <font color="#444444"><?php echo $_SESSION['pseudo'];?></font></td></tr> <tr valign="middle" align="left" class="shout2"><td colspan="2"><u>Liste des salons</u> | <u>#Aide</u> | <u>#Général</u></td></tr> <tr valign="middle" align="center" class="shout1"><td width="80%" align="center">Suivi de discution</td><td>Membre en ligne</td></tr> <tr align="left" height="423px" class="shout2"> <td valign="bottom" height="423px"> <div style="height:100%;width:100%;display: block;overflow:hidden;overflow-x: hidden;overflow-y: auto;overflow : -moz-scrollbars-vertical;" id="messages"> <input type="hidden" name="id_salon" value="<?php echo $id_salon?>" /> <?php include ('include/affichage_msg_salon.php'); ?> </div> </td> <td valign="top" height="423px"> <div style="height:100%;width:100%;display: block;overflow:hidden;overflow-x: hidden;overflow-y: auto;overflow : -moz-scrollbars-vertical;"><?php echo '<font color="#660000">Administrateurs :<br /><br />'; if ($nbrs_admin!='0') { echo 'Des administrateurs sont en ligne <br />'; } else { echo 'Aucun administrateur en ligne'; } echo '</font><hr/>'; echo '<font color="#006600">Modérateurs :<br /><br />'; if ($nbrs_modo!='0') { echo 'Des modérateurs sont en ligne<br />'; } else { echo 'Aucun modérateur en ligne'; } echo '</font><hr/>'; echo '<font color="000066">Membres :<br /><br />'; if ($nbrs_membre!='0') { echo 'Des membres sont en ligne<br />'; } else { echo 'Aucun membre en ligne'; } echo '</font>'; ?> </td> </tr> <tr valign="middle" align="left" class="shout1"><td colspan="2">Actions : | <b>G</b> | <i>I</i> | <s>B</s> | <u>S</u> | | | | | | | | | </td></tr> <tr valign="middle" align="left"><td style="background-color:#dddddd;"> <input type="hidden" name="pseudo" id="pseudo_expediteur" value="<?php echo $_SESSION['pseudo'];?>" /> <input type="hidden" name="id" id="id_expediteur" value="<?php echo $_SESSION['id'];?>" /> <input type="texte" name="message" id="message_expediteur" size="100%" placeholder="Votre message ici" style="width:90%;" /> <font size="1"> <input type="submit" name="envoyer" id="envoyer" value="Envoyer" /> </font> </td><td align="center" class="shout2">Shoutbox version : Alpha</td></tr> </table> </form> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> <script src="js/main_shoutbox.js"> </script> </div> <?php } else { echo $img_maintenance; } include 'include/no-body.php'; } else { echo 'La shoutbox est indisponnible pour cette page !'; echo 'Veuillez-vous rendre sur <a href="shoutbox.php" rel="nofollow noopener noreferrer" target="_blank">cette page</a>'; } ?>
Pourriez-vous m'aider à trouver la/les source(s) du (des) problème(s) ?
A voir également:
- Sript pour tchat non fonctionnel
- Tchat gratuit - Accueil - Réseaux sociaux
- Coco tchat - Accueil - Réseaux sociaux
- Tchat locaux - Forum MSN / WLM
- Tchat comme coco ✓ - Forum Réseaux sociaux
- Arnaque tchat "chat.tchatche.com" - Forum Vos droits sur internet
2 réponses
Bonjour,
il y aurait beaucoup de choses à dire sur tes codes... mais bon.
Déjà.. je ne vois pas dans tes script ajax (php) la connexion à la BDD.
Ensuite, vu que tu sembles utiliser la PDO... pense à activer la gestion des erreurs PDO et à mettre tes requêtes dans des blocs try/catch
Comme ici :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
N'hésites pas non plus à utiliser les success / error de l'ajax (jquery) pour afficher (via des console.log) ce qui est retourné par ton php.
Et enfin.. regarde dans la console de ton navigateur ce qui apparait lorsque tu postes un message... histoire de voir si il n'y aurait pas des erreurs... ou au moins voir le résultat des console.log
voici un exemple ajax complet ici qui pourra te donner quelques pistes sur l'écriture d'un code "propre"
https://forums.commentcamarche.net/forum/affich-33258760-remplir-un-formulaire-dynamiquement-en-fonction-d-une-combobox#2
il y aurait beaucoup de choses à dire sur tes codes... mais bon.
Déjà.. je ne vois pas dans tes script ajax (php) la connexion à la BDD.
Ensuite, vu que tu sembles utiliser la PDO... pense à activer la gestion des erreurs PDO et à mettre tes requêtes dans des blocs try/catch
Comme ici :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
N'hésites pas non plus à utiliser les success / error de l'ajax (jquery) pour afficher (via des console.log) ce qui est retourné par ton php.
Et enfin.. regarde dans la console de ton navigateur ce qui apparait lorsque tu postes un message... histoire de voir si il n'y aurait pas des erreurs... ou au moins voir le résultat des console.log
voici un exemple ajax complet ici qui pourra te donner quelques pistes sur l'écriture d'un code "propre"
https://forums.commentcamarche.net/forum/affich-33258760-remplir-un-formulaire-dynamiquement-en-fonction-d-une-combobox#2
la console me dit :
Page main_shoutbox.js ligne 47:4
ReferenceError: GET is not defined
type : GET,
L’utilisation de « getPreventDefault() » est obsolète. Utiliser « defaultPrevented » à la place. (il semble que la librairie ajax 1.8 soit la cause de cette erreur)
je suppose que ça veut dire que GET n'est pas défini dans mon javascript
La page main_shoutbox.js
la ligne 47 est :
Page main_shoutbox.js ligne 47:4
ReferenceError: GET is not defined
type : GET,
L’utilisation de « getPreventDefault() » est obsolète. Utiliser « defaultPrevented » à la place. (il semble que la librairie ajax 1.8 soit la cause de cette erreur)
je suppose que ça veut dire que GET n'est pas défini dans mon javascript
La page main_shoutbox.js
$('#envoyer').click(function(e) { e.preventDefault(); // on empêche le bouton d'envoyer le formulaire var pseudo = encodeURIComponent( $('#pseudo_expediteur').val() );//pseudo de l'expediteur var msg = encodeURIComponent( $('#message_expediteur').val() );//message envoyé var id_salon = encodeURIComponent( $('#id_salon').val() );//id du salon var id = encodeURIComponent( $('#id_expediteur').val() );//id de l'expediteur var timer = new Date(); //création variable timer var annee = timer.getFullYear(); var mois = timer.getMonth()+1; var jour = timer.getDate(); var hrs = timer.getHours(); var mins = timer.getMinutes(); var secs = timer.getSeconds(); var heure = ((hrs<10)?"0":"")+hrs; var minute = ((mins<10)?"0":"")+mins; var seconde = ((secs<10)?"0":"")+secs; var date = jour+"/"+mois+"/"+annee; var time = heure+":"+minute+":"+seconde; if(msg != "") { // on vérifie que les variables ne sont pas vides $.ajax( { url : "./include/post_shoutbox.php", // on donne l'URL du fichier de traitement type : "POST", // la requête est de type POST data : "message=" + msg + "&id_salon=" + id_salon + "&id=" + id,// et on envoie nos données success : function(data, statut) { console.log(data); } }); $('#messages').append("<font>" + date + " à " + time + " " + pseudo + " dit : " + msg + "</font><hr />"); // on ajoute le message dans la zone prévue } else { alert('Votre message est vide'); } }); function charger() { setTimeout( function() { var premierID = $('#messages p:first').attr('id'); // on récupère l'id le plus récent $.ajax( { url : "./include/get_shoutbox.php?id=" + premierID, // on passe l'id le plus récent au fichier de chargement type : GET, success : function(html) { $('#messages').append("<font>" + date + " à " + time + " " + pseudo + " dit : " + msg + "</font><hr />"); } }); charger(); }, 500); } charger();
la ligne 47 est :
type : GET,
Les erreur PDO sont activé à la requete de connexion de connect-bdd.php
Dans la console, ça me dis que la valeur date n'existe pas (et ça me fait la boucle pour afficher les nouveau messages)
erreur console :
[En savoir plus]main_shoutbox.js:46:5
ReferenceError: date is not defined
Voici les pages actuelle avec leur dossiers parents :
dossier racine
-shoutbox.php
dossier racine
-include
--get_shoutbox.php
--post_shoutbox.php
--connect-bdd.php
--affichage_msg_salon.php
get_shoutbox.php
post_shoutbox.php
connect-bdd.php
affichage_msg_salon.php
Dans la console, ça me dis que la valeur date n'existe pas (et ça me fait la boucle pour afficher les nouveau messages)
erreur console :
[En savoir plus]main_shoutbox.js:46:5
ReferenceError: date is not defined
Voici les pages actuelle avec leur dossiers parents :
dossier racine
-shoutbox.php
<?php if(empty($subtitle)) { $subtitle='Shoutbox'; include 'include/header.php'; include 'include/body.php'; if (!isset($nbrs_admin)) { $nbrs_admin='0'; } if (!isset($nbrs_modo)) { $nbrs_modo='0'; } if (!isset($nbrs_membre)) { $nbrs_membre='0'; } if($maintenance == 'off') { if(empty($id_salon)) { $id_salon='2'; } $erreur=array(); $_SESSION['id']='1'; $_SESSION['pseudo']='Administrateur'; ?> <div height="100%" width="100%" align="center" valign="middle"> <form method="POST" action="shoutbox.php"> <table border="1" align="bottom" class="shoutbox"> <tr valign="middle" width="100%" class="shout1"><td colspan="2" align="center">Bienvenue dans la Shoutbox <font color="#444444"><?php echo $_SESSION['pseudo'];?></font></td></tr> <tr valign="middle" align="left" class="shout2"><td colspan="2"><u>Liste des salons</u> | <u>#Aide</u> | <u>#Général</u></td></tr> <tr valign="middle" align="center" class="shout1"><td width="80%" align="center">Suivi de discution</td><td>Membre en ligne</td></tr> <tr align="left" height="423px" class="shout2"> <td valign="bottom" height="423px"> <div style="height:100%;width:100%;display: block;overflow:hidden;overflow-x: hidden;overflow-y: auto;overflow : -moz-scrollbars-vertical;" id="messages"> <input type="hidden" name="id_salon" value="<?php echo $id_salon?>" /> <?php include ('include/affichage_msg_salon.php'); ?> </div> </td> <td valign="top" height="423px"> <div style="height:100%;width:100%;display: block;overflow:hidden;overflow-x: hidden;overflow-y: auto;overflow : -moz-scrollbars-vertical;"><?php echo '<font color="#660000">Administrateurs :<br /><br />'; if ($nbrs_admin!='0') { echo 'Des administrateurs sont en ligne <br />'; } else { echo 'Aucun administrateur en ligne'; } echo '</font><hr/>'; echo '<font color="#006600">Modérateurs :<br /><br />'; if ($nbrs_modo!='0') { echo 'Des modérateurs sont en ligne<br />'; } else { echo 'Aucun modérateur en ligne'; } echo '</font><hr/>'; echo '<font color="000066">Membres :<br /><br />'; if ($nbrs_membre!='0') { echo 'Des membres sont en ligne<br />'; } else { echo 'Aucun membre en ligne'; } echo '</font>'; ?> </td> </tr> <tr valign="middle" align="left" class="shout1"><td colspan="2">Actions : | <b>G</b> | <i>I</i> | <s>B</s> | <u>S</u> | | | | | | | | | </td></tr> <tr valign="middle" align="left"><td style="background-color:#dddddd;"> <input type="hidden" name="pseudo" id="pseudo_expediteur" value="<?php echo $_SESSION['pseudo'];?>" /> <input type="hidden" name="id" id="id_expediteur" value="<?php echo $_SESSION['id'];?>" /> <input type="texte" name="message" id="message_expediteur" size="100%" placeholder="Votre message ici" style="width:90%;" /> <font size="1"> <input type="submit" name="envoyer" id="envoyer" value="Envoyer" /> </font> </td><td align="center" class="shout2">Shoutbox version : Alpha</td></tr> </table> </form> <script src="js/main_shoutbox.js"> </script> <script type="text/javascript"> element = document.getElementById('messages'); element.scrollTop = element.scrollHeight; </script> </div> <?php } else { echo $img_maintenance; } include 'include/no-body.php'; } else { echo 'La shoutbox est indisponible pour cette page !'; echo 'Veuillez-vous rendre sur <a href="shoutbox.php" rel="nofollow noopener noreferrer" target="_blank">cette page</a>'; } ?>
dossier racine
-include
--get_shoutbox.php
--post_shoutbox.php
--connect-bdd.php
--affichage_msg_salon.php
get_shoutbox.php
<?php if(!empty($_GET['id'])) { include ('connect-bdd.php'); // on vérifie que l'id est bien présent et pas vide $id = (int) $_GET['id']; // on s'assure que c'est un nombre entier // on récupère les messages ayant un id plus grand que celui donné $requete = $bdd->prepare('SELECT * FROM shoutbox_msg WHERE id > :id ORDER BY id DESC'); $requete->execute(array("id" => $id)); $messages = 'Ce message n\'existe pas'; // on inscrit tous les nouveaux messages dans une variable while($donnees = $requete->fetch()) { $messages .= "<font id=\"" . $donnees['id'] . "\">".$msg['date']." à ".$msg['time']." ".$msg['author']." dit : ". $msg['message']."<hr/></font>"; } echo $messages; // enfin, on retourne les messages à notre script JS } ?>
post_shoutbox.php
<?php if (!empty($_POST)) { include ('connect-bdd.php'); if(!empty(mysql_real_escape_string($_POST['message'])) && strlen(mysql_real_escape_string($_POST['message'])) >= 1) { $messag= strip_tags($_POST['message']); $message= mysql_real_escape_string($_POST['message']); if(isset($_SESSION)) { $id_salon=$_POST['id_salon']; $id_session=$_SESSION['id']; $erreur['msg']='Vous pouvez maintenant faire de nouvelle vérifications'; $requete = $bdd->prepare("SELECT * FROM shoutbox_msg WHERE id_expediteur = ? AND id_salon = ?"); $requete->bindParam(1, $id_session); $requete->bindParam(2, $id_salon); $requete->execute(); if($requete->fetch()) { $erreur['msg']='La requête indique que vous avez déjà posté des messages dans ce salon'; $flood=false; //$flood=true; } else { $erreur['msg']='La requête indique que vous n\'avez pas posté de message dans ce salon'; $flood=false; } if($flood==false) { $erreur['msg']='Votre message peut-être enregistré'; $requete = $bdd->prepare("INSERT INTO shoutbox_msg (id_expediteur, time_msg, date_msg, msg, id_salon) VALUES (?,?,?,?,?)"); $requete->bindParam(1, $id_session); $requete->bindParam(2, $time); $requete->bindParam(3, $date); $requete->bindParam(4, $message); $requete->bindParam(5, $id_salon); $requete->execute(); if($requete) { $erreur['msg']='Votre message a été envoyé'; $erreur=array(); $message=array(); } else { $erreur['msg']='Votre message n\'a pas été envoyé'; } } else { $erreur['msg']='Ce message a déjà été envoyé ses 10 derniére secondes'; } } else { $erreur['msg']='Vous devez être connecté pour pouvoir discuter'; } } else { $erreur['msg']='Votre message doit contenir au minimum 1 caractére'; $message= strip_tags($_POST['message']); } } ?>
connect-bdd.php
<?php try { $bdd = new PDO('mysql:host=localhost;dbname=gamer-online', 'utilisateur', 'monmdptruc', array ( PDO::ATTR_PERSISTENT => true ) ); } catch(Exception $e) { die('Erreur :'.$e->getMessage()); } ?>
affichage_msg_salon.php
<?php //code php pour afficher le contenu du salon ;) $requete = $bdd->prepare("SELECT id FROM shoutbox_salon WHERE id = ?"); $requete->bindParam(1, $id_salon); $requete->execute(); if($requete->fetch()) { $erreur_salon['msg']='Ce salon existe !<br />'; $requete = $bdd->prepare("SELECT * FROM shoutbox_msg WHERE id_salon = ?"); $requete->bindParam(1, $id_salon); $requete->execute(); if($requete->fetch()) { $requete1 = $bdd->prepare('SELECT * FROM shoutbox_msg WHERE id_salon = ? LIMIT 0,500'); $requete1->bindParam(1, $id_salon); $requete1->execute(); if(!empty($erreur) and $erreur['msg']!=false) { $erreur1=$erreur['msg']; echo '<div style="background-color:#ff0000;color:#ffffff;" align="center">'.$erreur1.'</div>'; } echo '<div id="message">'; while($donnees = $requete1->fetch()) { $requete2=$bdd->prepare('SELECT * FROM membre WHERE id = ?'); $requete2->bindParam(1, $donnees['id_expediteur']); $requete2->execute(); $requete2=$requete2->fetch(); if($donnees['date_msg']==$date) { $msg['date']='Aujourd\'hui'; } else { $msg['date']=$donnees['date_msg']; } $msg['time']=$donnees['time_msg']; $msg['author']=$requete2['pseudo']; $msg['message']=$donnees['msg']; echo "<font id=\"" . $donnees['id'] . "\">".$msg['date']." à ".$msg['time']." ".$msg['author']." dit : ". $msg['message']."<hr/></font>"; $erreur=array(); $erreur_salon=array(); } echo '</div>'; } else { $erreur['msg']='Ce salon n\'a encore aucun message !'; } } else { $erreur_salon['msg']='Ce salon n\'existe pas, veuiller selectionner un salon dans la liste des salons !'; } if(!empty($erreur_salon)) { echo $erreur_salon['msg']; } ?>
j'ai maintenant ceci :
j'ai ajouter la connexion à la base de données dans les page de traitement (get_shoubox.php et post_shoutbox.php).
Quand j'envois un message, j'ai a chaque fois 2 alert (error et complete)
Qu'elle est la différence entre succes et complete ?
Par contre... au lieu de faire les alert... fais donc des console.log(data)
et dis nous ce que la console de ton navigateur te retourne