Problème SQL.

Résolu
WebLooser Messages postés 63 Date d'inscription   Statut Membre Dernière intervention   -  
Autumn`Tears Messages postés 1054 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
J'ai créé un système de rafraichissement automatique d'une div. Il rafraichit une requête SQL qui sélectionne les 17 derniers messages.
Le problème c'est qu'au lieu de m'afficher les messages ils marque : Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
En revanche si je remet la requête dans ma div et bien cela fonctionne très bien. Où est le problème ?

refresh.js :

function writediv(texte, endroit)
{
document.getElementById(endroit).innerHTML = texte;
}

function afficher()
{

if(texte = file('recup.php')) // Ton fichier à inclure dans la <div>
{
writediv('<p align="left">'+texte+'</p>', 'tchat'); // chat = <div id='chat'>, c'est l'emplacement où tu veux placer ta page
}
}

function file(fichier)
{
if(window.XMLHttpRequest) // FIREFOX
xhr_object = new XMLHttpRequest();
else if(window.ActiveXObject) // IE
xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else
return(false);
xhr_object.open("GET", fichier, false);
xhr_object.send(null);
if(xhr_object.readyState == 4) return(xhr_object.responseText);
else return(false);
}

setInterval('afficher()', 1000); // nombre de milisecondes entre deux rafraichissements : ici 1 seconde


Ma div:
<div id="tchat"></div>


Ma requête SQL :
     <?php
         $sql = "SELECT * FROM messages ORDER BY id DESC LIMIT 17"; //On récupère les 15 derniers messages dans la table Messages de la DataBase.
		 $req = mysql_query($sql) or die(mysql_error());
		 $d = array();
		 while($data = mysql_fetch_assoc($req)){
		     $d[] = $data;
			 }
			 for($i = count($d)-1;$i>=0;$i--)
			 {
			 
		 ?>
                 <p><strong>[<?php echo $d[$i]["date"]; ?>]<?php echo htmlspecialchars($d[$i]["pseudo"]); ?></strong> : <?php echo htmlspecialchars($d[$i]["message"]); ?></p>


		 <?php
		 
		    }
			
         ?>


Merci de votre aide.
A voir également:

3 réponses

Autumn`Tears Messages postés 1054 Date d'inscription   Statut Membre Dernière intervention   145
 
Salut,

Est-ce que dans recup.php tu mets bien la connexion à ta base ? (Je te déconseille d'utiliser mysql au passage et de te tourner vers mysqli, ou pdo, mysql devenant obsolète).
Pour ton formatage en HTML tu peux faire plus simple :


while($data = mysql_fetch_assoc($req))
{
echo '<p><strong>['.$data['date'].'] '.htmlspecialchars($data['pseudo']).' : '.htmlspecialchars($data['message']).'</p>';
}
?>
1
WebLooser Messages postés 63 Date d'inscription   Statut Membre Dernière intervention   7
 
Oui car dans tchat.php j'ai mit:
require('connect.php')
De ce qui est pour faire plus "simple": C'est vrai mais je préfère ma version car je m'y retrouve mieux ^^
0
Autumn`Tears Messages postés 1054 Date d'inscription   Statut Membre Dernière intervention   145
 
D'accord.

Ce qui est étrange est ton erreur MySQL,elle vient plutôt de la connexion qui n'arrive pas à s'effectuer, plutôt que du fait de mettre ton code ici ou là...
Tu arrives à accéder à PhpMyAdmin ?
0
WebLooser Messages postés 63 Date d'inscription   Statut Membre Dernière intervention   7
 
Oui très bien. Sachant que pour arriver sur cette page où il y a un problème SQL, l'utilisateur doit se connecter ! Si tu veux voir:
http://netdead.fr (no spam, no virus, mdp en MD5 pour ceux qui ont peurt ^^)
0
Autumn`Tears Messages postés 1054 Date d'inscription   Statut Membre Dernière intervention   145
 
Fais un test dans un premier temps, après l'inclusion de ton fichier connect.php dans recup, retourne juste un echo 'ok'; par exemple. Essaie aussi dans connect.php de faire un or die(mysql_error()) lors de la connexion à la base
0
WebLooser Messages postés 63 Date d'inscription   Statut Membre Dernière intervention   7
 
L'inclusion de connect.php ne se trouve pas dans recup.php mais se trouve au tout début de la page chat.php...
0
Autumn`Tears Messages postés 1054 Date d'inscription   Statut Membre Dernière intervention   145
 
Inclus ton fichier connect.php au sein de ton fichier recup.php
0
WebLooser Messages postés 63 Date d'inscription   Statut Membre Dernière intervention   7
 
Up
0