Script php chat qui marche mal

micka30 Messages postés 102 Statut Membre -  
micka30 Messages postés 102 Statut Membre -
Bonjour,

Bonjour,

bonjour!

j'ai un problême avec ce script de chat

pour chaque message il me recreer un chat, avec un bouton envoyer ,

voyez par vous même :

http://www.uncupidon.com/chat.php?pseudo=petitfute

merci d'avance de votre aide!

voici le script:

<?php
// on commence par ouvrir la session
session_start();
$_SESSION['pseudo'];
$_SESSION['logged'];

// D'abord, on se connecte à MySQL

$cnx=mysql_connect("**************", "**********", "***********") or die("Pb connexion au serveur".mysql_error());
$db=mysql_select_db("*********") or die("Pb selection base".mysql_error());

if (isset($_POST['message'])) // Si les variables existent
{
if ($_POST['message'] != NULL) // Si on a quelque chose à enregistrer
{

// On utilise les fonctions PHP mysql_real_escape_string et htmlspecialchars pour la sécurité
$message = mysql_real_escape_string(htmlspecialchars($_POST['message']));
$timestamp = time();

$expediteur = $_SESSION['pseudo'];
$destinataire = $_GET['pseudo'];
// Ensuite on enregistre le message
mysql_query("INSERT INTO chat VALUES('', '$expediteur', '$destinataire', '$message', '$timestamp', '')");

?>

<!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="fr" lang="fr">
<head>
<title>t'chat uncupidon</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<style type="text/css">

#chatcomplet
{
width:400px;
height:400px;
background-attachment: fixed;
background-repeat: no-repeat;

}

#lecture
{
width:400px;
height:300px;
background-color: red;
color : yellow;
overflow: auto
border: 1px solid green;
}

#message
{
width:400px;
height:100px;
border: 1px solid green;
margin-top:300px;
}
</style>
<body>

<?php
$reponse2 = mysql_query("SELECT expediteur, message, timestamp FROM chat WHERE destinataire='".$_SESSION['pseudo']."'OR expediteur='".$_SESSION['pseudo']."'");
while ($donnees2 = mysql_fetch_array($reponse2) )
{
// On se déconnecte de MySQL

$date = date('d/m/Y \à H\hi', $donnees2['timestamp']);
$message = $donnees2['message'];
$expediteur = $donnees2['expediteur'];
$pseudo= $_GET['pseudo'];

?>

<div id="chatcomplet">
<div id="lecture">
<form action="<?php echo'chat.php?pseudo='.$pseudo.''?>" method="post"/>

<p><strong><?php echo $expediteur ?></strong> le <?php echo $date ?>: <?php echo $message ?></p>

<div id="message">
<p>Message : <input type="text" name="message" /><br />

<input type="submit" value="Envoyer" />
</p>
</div>
</div>
</div>

<?php
}

}

}

else
{

?>
<!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="fr" lang="fr">
<head>
<title>t'chat uncupidon</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<style type="text/css">

#chatcomplet
{
width:400px;
height:400px;
background-attachment: fixed;
background-repeat: no-repeat;

}

#lecture
{
width:400px;
height:300px;
background-color: red;
color : yellow;
overflow: auto
border: 1px solid green;
}

#message
{
width:400px;
height:100px;
border: 1px solid green;
margin-top:300px;
}
</style>
<body>

<?php
$reponse2 = mysql_query("SELECT expediteur, message, timestamp FROM chat WHERE destinataire='".$_SESSION['pseudo']."'OR expediteur='".$_SESSION['pseudo']."'");
while ($donnees2 = mysql_fetch_array($reponse2) )
{
// On se déconnecte de MySQL

$date = date('d/m/Y \à H\hi', $donnees2['timestamp']);
$message = $donnees2['message'];
$expediteur =$donnees2['expediteur'];
$pseudo= $_GET['pseudo'];

?>

<div id="chatcomplet">
<div id="lecture">
<form action="<?php echo'chat.php?pseudo='.$pseudo.''?>" method="post"/>

<p><strong><?php echo $expediteur ?></strong> le <?php echo $date ?>: <?php echo $message ?></p>

<div id="message">
<p>Message : <input type="text" name="message" /><br />

<input type="submit" value="Envoyer" />
</p>
</div>
</div>
</div>

<?php
}
}
mysql_close();
?>
</form>

</body>
Configuration: Windows XP
Internet Explorer 6.0

12 réponses

  1. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    salut,

    pour moi ça a l'air de tourner.

    je suppose que tu as trouvé l'erreur, tiens nous au courant !
    0
    1. micka30 Messages postés 102 Statut Membre 5
       
      bonsoir!

      oui j'ai trouvé l'erreur , c'etait la boucle que j'avais mal placée .

      MAIS, j'ai un autre problême je voudrai que mon script se rafraichisse automatiquement , et donc j'ai rajouté un peu de ajax ( PS / JE NE CONNAIS RIEN EN AJAX) eT donc biensur ca ne marche pas.

      a oui j'oublier, il ,n ya aucune erreur juste, il veut pas rafraichir!


      pouvez vous m'expliquer mes erreur svp?



      <?php
      // on commence par ouvrir la session
      session_start();
      $_SESSION['pseudo'];
      $_SESSION['logged'];


      // D'abord, on se connecte à MySQL

      $cnx=mysql_connect("**********", "***********", "********") or die("Pb connexion au serveur".mysql_error());
      $db=mysql_select_db("**********") or die("Pb selection base".mysql_error());



      if (isset($_POST['message'])) // Si les variables existent
      {
      if ($_POST['message'] != NULL) // Si on a quelque chose à enregistrer
      {


      // On utilise les fonctions PHP mysql_real_escape_string et htmlspecialchars pour la sécurité
      $message = mysql_real_escape_string(htmlspecialchars($_POST['message']));
      $timestamp = time();


      $expediteur = $_SESSION['pseudo'];
      $destinataire = $_GET['pseudo'];
      // Ensuite on enregistre le message
      mysql_query("INSERT INTO chat VALUES('', '$expediteur', '$destinataire', '$message', '$timestamp', '')");
      }
      }

      function chat () {
      $retour_xajax = new xajaxResponse();
      $retour = '';

      $reponse = mysql_query("SELECT expediteur, message, timestamp FROM chat WHERE destinataire='".$_SESSION['pseudo']."'OR expediteur='".$_SESSION['pseudo']."'");
      while ($donnees = mysql_fetch_array($reponse) )
      {

      $date = date('d/m/Y \à H\hi', $donnees2['timestamp']);
      $message = $donnees['message'];
      $expediteur = $donnees['expediteur'];
      $pseudo= $_GET['pseudo'];

      $retour='<p><strong> '.$expediteur.' </strong> le '.$date.' : '.$message.' </p>';
      }
      $retour_xajax->addAssign("lecture", "innerHTML", $retour);
      return $retour_xajax->getXML();
      }

      require("xajax.inc.php");
      $xajax = new xajax();
      $xajax->registerFunction("chat");
      $xajax->processRequests();
      $xajax->printJavascript();
      ?>





      <!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="fr" lang="fr">
      <head>
      <title>t'chat uncupidon</title>
      <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
      <?php $xajax->printJavascript(); /* Affiche le Javascript */?>
      <script type="text/javascript">

      function refresh()
      {
      chat();
      setTimeout("refresh()", 5000);
      }
      </script>


      </head>
      <style type="text/css">


      #chatcomplet
      {
      width:400px;
      height:400px;

      background-repeat: no-repeat;
      border: 1px solid black;
      }

      #lecture
      {
      position : absolute ;
      width:400px;
      height:300px;
      background-color: red;
      color : yellow;
      overflow : scroll ;
      border: 1px solid green;
      }

      #message
      {
      background-color: green;
      background-attachment: fixed;
      width:400px;
      height:100px;
      border: 1px solid green;
      padding: 1px;
      padding-top: 300px;

      }
      </style>
      <body>




      <div id="chatcomplet">

      <form action="<?php echo'chat.php?pseudo='.$pseudo.''?>" method="post"/>
      <div id="lecture"></div>

      <div id="message">

      <p>Message : <input type="text" name="message" size="30"/><br />

      <input type="submit" value="Envoyer" />
      </p>

      </div>
      </div>

      <?php


      mysql_close();
      ?>


      </form>

      <script>
      refresh();
      </script>


      </body>
      </html>
      0
  2. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    salut,

    peut être parce qu'il n'y a pas le type du script (tu es en XHTML Strict).
    <script type="text/javascript">
    refresh();
    </script> 

    sinon tu peux essayer de l'initialiser au chargement :
    <body onload="refresh()">


    et pense à mettre ton code en forme (avec le bouton "Conserver la mise en forme du texte sélectionné") avant de poster, merci !
    0
    1. micka30 Messages postés 102 Statut Membre 5
       
      merci de ta reponse!

      donc j'ai rajouter le type="text/javascript et cela ne change rien!!


      et je ne sais pas comment faire ni ou metre cela <body onload="refresh()">pour l'initialiser au chargement !




      <?php 
      // on commence par ouvrir la session 
      session_start(); 
      $_SESSION['pseudo']; 
      $_SESSION['logged']; 
      
      
      // D'abord, on se connecte à MySQL 
      
      $cnx=mysql_connect("**********", "************", "**********") or die("Pb connexion au serveur".mysql_error());
      $db=mysql_select_db("*************") or die("Pb selection base".mysql_error());
      
      
      
      if (isset($_POST['message'])) // Si les variables existent 
      { 
      if ($_POST['message'] != NULL) // Si on a quelque chose à enregistrer 
      { 
      
      
      // On utilise les fonctions PHP mysql_real_escape_string et htmlspecialchars pour la sécurité 
      $message = mysql_real_escape_string(htmlspecialchars($_POST['message'])); 
      $timestamp = time(); 
      
      
      $expediteur = $_SESSION['pseudo']; 
      $destinataire = $_GET['pseudo']; 
      // Ensuite on enregistre le message 
      mysql_query("INSERT INTO chat VALUES('', '$expediteur', '$destinataire', '$message', '$timestamp', '')"); 
      } 
      } 
      
      function chat () { 
      $retour_xajax = new xajaxResponse(); 
      $retour = ''; 
      
      $reponse = mysql_query("SELECT expediteur, message, timestamp FROM chat WHERE destinataire='".$_SESSION['pseudo']."'OR expediteur='".$_SESSION['pseudo']."'"); 
      while ($donnees = mysql_fetch_array($reponse) ) 
      { 
      
      $date = date('d/m/Y \à H\hi', $donnees2['timestamp']); 
      $message = $donnees['message']; 
      $expediteur = $donnees['expediteur']; 
      $pseudo= $_GET['pseudo']; 
      
      $retour='<p><strong> '.$expediteur.' </strong> le '.$date.' : '.$message.' </p>'; 
      } 
      $retour_xajax->addAssign("lecture", "innerHTML", $retour); 
      return $retour_xajax->getXML(); 
      } 
      
      require("xajax.inc.php"); 
      $xajax = new xajax(); 
      $xajax->registerFunction("chat"); 
      $xajax->processRequests(); 
      $xajax->printJavascript(); 
      ?> 
      
      
      
      
      
      <!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="fr" lang="fr"> 
      <head> 
      <title>t'chat uncupidon</title> 
      <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
      <?php $xajax->printJavascript(); /* Affiche le Javascript */?> 
      <script type="text/javascript"> 
      
      function refresh() 
      { 
      chat(); 
      setTimeout("refresh()", 5000); 
      } 
      </script> 
      
      
      </head> 
      <style type="text/css"> 
      
      
      #chatcomplet 
      { 
      width:400px; 
      height:400px; 
      
      background-repeat: no-repeat; 
      border: 1px solid black; 
      } 
      
      #lecture 
      { 
      position : absolute ; 
      width:400px; 
      height:300px; 
      background-color: red; 
      color : yellow; 
      overflow : scroll ; 
      border: 1px solid green; 
      } 
      
      #message 
      { 
      background-color: green; 
      background-attachment: fixed; 
      width:400px; 
      height:100px; 
      border: 1px solid green; 
      padding: 1px; 
      padding-top: 300px; 
      
      } 
      </style> 
      <body> 
      
      
      
      
      <div id="chatcomplet"> 
      
      <form action="<?php echo'chat.php?pseudo='.$pseudo.''?>" method="post"/> 
      <div id="lecture"></div> 
      
      <div id="message"> 
      
      <p>Message : <input type="text" name="message" size="30"/><br /> 
      
      <input type="submit" value="Envoyer" /> 
      </p> 
      
      </div> 
      </div> 
      
      <?php 
      
      
      mysql_close(); 
      ?> 
      
      
      </form> 
      
      <script type="text/javascript">
      refresh();
      </script>
      
      
      </body> 
      </html>
      0
  3. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    à la place de <body> dans le document HTML !!!
    0
    1. micka30 Messages postés 102 Statut Membre 5
       
      ok, donc j'ai fait comme tu m'as et non ca ne marche pas!


      il n ya rien qui s'affiche dans le :

      <div id="lecture"></div>

      tu as une autre solution?




      <?php 
      // on commence par ouvrir la session 
      session_start(); 
      $_SESSION['pseudo']; 
      $_SESSION['logged']; 
      
      
      // D'abord, on se connecte à MySQL 
      
      $cnx=mysql_connect("***********", "*************", "************") or die("Pb connexion au serveur".mysql_error());
      $db=mysql_select_db("************") or die("Pb selection base".mysql_error());
      
      
      
      if (isset($_POST['message'])) // Si les variables existent 
      { 
      if ($_POST['message'] != NULL) // Si on a quelque chose à enregistrer 
      { 
      
      
      // On utilise les fonctions PHP mysql_real_escape_string et htmlspecialchars pour la sécurité 
      $message = mysql_real_escape_string(htmlspecialchars($_POST['message'])); 
      $timestamp = time(); 
      
      
      $expediteur = $_SESSION['pseudo']; 
      $destinataire = $_GET['pseudo']; 
      // Ensuite on enregistre le message 
      mysql_query("INSERT INTO chat VALUES('', '$expediteur', '$destinataire', '$message', '$timestamp', '')"); 
      } 
      } 
      
      function chat () { 
      $retour_xajax = new xajaxResponse(); 
      $retour = ''; 
      
      $reponse = mysql_query("SELECT expediteur, message, timestamp FROM chat WHERE destinataire='".$_SESSION['pseudo']."'OR expediteur='".$_SESSION['pseudo']."'"); 
      while ($donnees = mysql_fetch_array($reponse) ) 
      { 
      
      $date = date('d/m/Y \à H\hi', $donnees2['timestamp']); 
      $message = $donnees['message']; 
      $expediteur = $donnees['expediteur']; 
      $pseudo= $_GET['pseudo']; 
      
      $retour='<p><strong> '.$expediteur.' </strong> le '.$date.' : '.$message.' </p>'; 
      } 
      $retour_xajax->addAssign("lecture", "innerHTML", $retour); 
      return $retour_xajax->getXML(); 
      } 
      
      require("xajax.inc.php"); 
      $xajax = new xajax(); 
      $xajax->registerFunction("chat"); 
      $xajax->processRequests(); 
      $xajax->printJavascript(); 
      ?> 
      
      
      
      
      
      <!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="fr" lang="fr"> 
      <head> 
      <title>t'chat uncupidon</title> 
      <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
      <?php $xajax->printJavascript(); /* Affiche le Javascript */?> 
      <script type="text/javascript"> 
      
      function refresh() 
      { 
      chat(); 
      setTimeout("refresh()", 5000); 
      } 
      </script> 
      
      
      </head> 
      <style type="text/css"> 
      
      
      #chatcomplet 
      { 
      width:400px; 
      height:400px; 
      
      background-repeat: no-repeat; 
      border: 1px solid black; 
      } 
      
      #lecture 
      { 
      position : absolute ; 
      width:400px; 
      height:300px; 
      background-color: red; 
      color : yellow; 
      overflow : scroll ; 
      border: 1px solid green; 
      } 
      
      #message 
      { 
      background-color: green; 
      background-attachment: fixed; 
      width:400px; 
      height:100px; 
      border: 1px solid green; 
      padding: 1px; 
      padding-top: 300px; 
      
      } 
      </style> 
      <body onload="refresh()">
      
      
      
      <div id="chatcomplet"> 
      
      <form action="<?php echo'chat.php?pseudo='.$pseudo.''?>" method="post"/> 
      <div id="lecture"></div> 
      
      <div id="message"> 
      
      <p>Message : <input type="text" name="message" size="30"/><br /> 
      
      <input type="submit" value="Envoyer" /> 
      </p> 
      
      </div> 
      </div> 
      
      <?php 
      
      
      mysql_close(); 
      ?> 
      
      
      </form> 
      
      <script type="text/javascript">
      refresh();
      </script>
      
      
      </body> 
      </html>
      0
  4. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    tant qu'à coller ton code à chaque fois, voilà une version compacte et indentée, c'est plus utile que les commentaires !
    -;o)
    as-tu mis la version en ligne à jour ?
    <?php 
    	session_start(); 
    	$_SESSION['pseudo']; 
    	$_SESSION['logged']; 
    	
    	$cnx = mysql_connect( "***********", "*************", "************") or die( "Pb connexion au serveur".mysql_error() );
    	$db = mysql_select_db( "************" ) or die( "Pb selection base".mysql_error() );
    	
    	if ( isset( $_POST['message'] ) && !is_null( $_POST['message'] ) )
    	{ 
    		$message = mysql_real_escape_string( htmlspecialchars( $_POST['message'] ) ); 
    		$timestamp = time(); 
    		$expediteur = $_SESSION['pseudo']; 
    		$destinataire = $_GET['pseudo']; 
    		mysql_query( "INSERT INTO chat VALUES('', '$expediteur', '$destinataire', '$message', '$timestamp', '')" );  // et tu ne stockes pas le résultat dans une variable ?
    	} 
    
    	function chat ()
    	{ 
    		$retour_xajax = new xajaxResponse(); 
    		$retour = ''; 
    		$reponse = mysql_query( "SELECT expediteur, message, timestamp FROM chat WHERE destinataire='".$_SESSION['pseudo']."'OR expediteur='".$_SESSION['pseudo']."'" ); 
    		while( $donnees = mysql_fetch_array( $reponse ) ) 
    		{ 
    			$date = date( 'd/m/Y \à H\hi', $donnees2['timestamp'] ); 
    			$message = $donnees['message']; 
    			$expediteur = $donnees['expediteur']; 
    			$pseudo= $_GET['pseudo']; 
    			$retour='<p><strong> '.$expediteur.' </strong> le '.$date.' : '.$message.' </p>'; 
    		} 
    		$retour_xajax->addAssign( 'lecture' , 'innerHTML' , $retour ); 
    		return $retour_xajax->getXML(); 
    	} 
    	
    	require( 'xajax.inc.php' ); 
    	$xajax = new xajax(); 
    	$xajax->registerFunction( 'chat' ); 
    	$xajax->processRequests(); 
    	$xajax->printJavascript(); 
    ?> 
    
    <!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="fr" lang="fr"> 
    	<head> 
    		<title>t'chat uncupidon</title> 
    		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
    <?php $xajax->printJavascript(); ?> 
    		<script type="text/javascript"> 
    function refresh() 
    { 
    	chat(); 
    	setTimeout("refresh()", 5000); 
    } 
    		</script> 
    		<style type="text/css"> 
    #chatcomplet 
    { 
    width:400px; 
    height:400px; 
    background-repeat: no-repeat; 
    border: 1px solid black; 
    } 
    #lecture 
    { 
    position : absolute ; 
    width:400px; 
    height:300px; 
    background-color: red; 
    color : yellow; 
    overflow : scroll ; 
    border: 1px solid green; 
    } 
    #message 
    { 
    background-color: green; 
    background-attachment: fixed; 
    width:400px; 
    height:100px; 
    border: 1px solid green; 
    padding: 1px; 
    padding-top: 300px; 
    } 
    		</style> 
    	</head> 
    	<body>
    		<div id="chatcomplet"> 
    			<form action="<?php echo'chat.php?pseudo='.$pseudo.''?>" method="post"/> 
    			<div id="lecture"></div> 
    			<div id="message"> 
    				<p>Message :
    					<input type="text" name="message" size="30"/>
    					<br /> 
    					<input type="submit" value="Envoyer" /> 
    				</p> 
    			</div> 
    		</div> 
    <?php mysql_close(); ?>  // inutile
    		</form> 
    		<script type="text/javascript">refresh();</script>
    	</body> 
    </html>
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    pfff !!!
    évidement !
    regarde le code servie de ta version en ligne !

    ton script est en dehors du document !

    mais comment fonctionne ton code ?
    c'est un seul fichier ce que tu nous as donné ?

    je regarde de plus près.
    0
  7. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    et y a une erreur, il trouve pas le fichier JS :
    'Error: the xajax Javascript file could not be included. Perhaps the URL is incorrect?\nURL: xajax_js/xajax.js'
    0
  8. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    mets ça en ligne, stp et vérifie si 'xajax.js' est bien à sa place.
    <?php 
    	session_start(); 
    	$_SESSION['pseudo']; 
    	$_SESSION['logged']; 
    	
    	$cnx = mysql_connect( "***********", "*************", "************") or die( "Pb connexion au serveur".mysql_error() );
    	$db = mysql_select_db( "************" ) or die( "Pb selection base".mysql_error() );
    	
    	if ( isset( $_POST['message'] ) && !is_null( $_POST['message'] ) )
    	{ 
    		$message = mysql_real_escape_string( htmlspecialchars( $_POST['message'] ) ); 
    		$timestamp = time(); 
    		$expediteur = $_SESSION['pseudo']; 
    		$destinataire = $_GET['pseudo']; 
    		mysql_query( "INSERT INTO chat VALUES('', '$expediteur', '$destinataire', '$message', '$timestamp', '')" );  // et tu ne stockes pas le résultat dans une variable ?
    	} 
    
    	function chat ()
    	{ 
    		$retour_xajax = new xajaxResponse(); 
    		$retour = ''; 
    		$reponse = mysql_query( "SELECT expediteur, message, timestamp FROM chat WHERE destinataire='".$_SESSION['pseudo']."'OR expediteur='".$_SESSION['pseudo']."'" ); 
    		while( $donnees = mysql_fetch_array( $reponse ) ) 
    		{ 
    			$date = date( 'd/m/Y \à H\hi', $donnees2['timestamp'] ); 
    			$message = $donnees['message']; 
    			$expediteur = $donnees['expediteur']; 
    			$pseudo= $_GET['pseudo']; 
    			$retour='<p><strong> '.$expediteur.' </strong> le '.$date.' : '.$message.' </p>'; 
    		} 
    		$retour_xajax->addAssign( 'lecture' , 'innerHTML' , $retour ); 
    		return $retour_xajax->getXML(); 
    	} 
    	
    	require( 'xajax.inc.php' ); 
    	$xajax = new xajax(); 
    	$xajax->registerFunction( 'chat' ); 
    	$xajax->processRequests(); 
    ?>
    <!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="fr" lang="fr"> 
    	<head> 
    		<title>t'chat uncupidon</title> 
    		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
    <?php $xajax->printJavascript(); ?> 
    		<script type="text/javascript"> 
    function refresh() 
    { 
    	chat(); 
    	setTimeout("refresh()", 5000); 
    } 
    		</script> 
    		<style type="text/css"> 
    #chatcomplet 
    { 
    width:400px; 
    height:400px; 
    background-repeat: no-repeat; 
    border: 1px solid black; 
    } 
    #lecture 
    { 
    position : absolute ; 
    width:400px; 
    height:300px; 
    background-color: red; 
    color : yellow; 
    overflow : scroll ; 
    border: 1px solid green; 
    } 
    #message 
    { 
    background-color: green; 
    background-attachment: fixed; 
    width:400px; 
    height:100px; 
    border: 1px solid green; 
    padding: 1px; 
    padding-top: 300px; 
    } 
    		</style> 
    	</head> 
    	<body>
    		<div id="chatcomplet"> 
    			<form action="<?php echo'chat.php?pseudo='.$pseudo.''?>" method="post"/> 
    			<div id="lecture"></div> 
    			<div id="message"> 
    				<p>Message :
    					<input type="text" name="message" size="30"/>
    					<br /> 
    					<input type="submit" value="Envoyer" /> 
    				</p> 
    			</div> 
    		</div> 
    		</form> 
    		<script type="text/javascript">refresh();</script>
    	</body> 
    </html>
    0
    1. micka30 Messages postés 102 Statut Membre 5
       
      re!

      voila il est en ligne!

      ca ne marche pas.

      et xajax.js est a la racine de mon site.
      0
  9. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    donc il faut corriger l'url :
    <script type="text/javascript" src="xajax.js"></script>

    et enlève la ligne entre la fin du PHP et le DocType, stp.
    0
    1. micka30 Messages postés 102 Statut Membre 5
       
      voila!


      ca ne change rien!


      vraiment merci de ton aide en tout cas!


      <?php 
      	session_start(); 
      	$_SESSION['pseudo']; 
      	$_SESSION['logged']; 
      	
      	$cnx=mysql_connect("**********", "***********","**********") or die("Pb connexion au serveur".mysql_error());
      $db=mysql_select_db("***************") or die("Pb selection base".mysql_error());
      	
      	if ( isset( $_POST['message'] ) && !is_null( $_POST['message'] ) )
      	{ 
      		$message = mysql_real_escape_string( htmlspecialchars( $_POST['message'] ) ); 
      		$timestamp = time(); 
      		$expediteur = $_SESSION['pseudo']; 
      		$destinataire = $_GET['pseudo']; 
      		mysql_query( "INSERT INTO chat VALUES('', '$expediteur', '$destinataire', '$message', '$timestamp', '')" );  // et tu ne stockes pas le résultat dans une variable ?
      	} 
      
      	function chat ()
      	{ 
      		$retour_xajax = new xajaxResponse(); 
      		$retour = ''; 
      		$reponse = mysql_query( "SELECT expediteur, message, timestamp FROM chat WHERE destinataire='".$_SESSION['pseudo']."'OR expediteur='".$_SESSION['pseudo']."'" ); 
      		while( $donnees = mysql_fetch_array( $reponse ) ) 
      		{ 
      			$date = date( 'd/m/Y \à H\hi', $donnees2['timestamp'] ); 
      			$message = $donnees['message']; 
      			$expediteur = $donnees['expediteur']; 
      			$pseudo= $_GET['pseudo']; 
      			$retour='<p><strong> '.$expediteur.' </strong> le '.$date.' : '.$message.' </p>'; 
      		} 
      		$retour_xajax->addAssign( 'lecture' , 'innerHTML' , $retour ); 
      		return $retour_xajax->getXML(); 
      	} 
      	
      	require( 'xajax.inc.php' ); 
      	$xajax = new xajax(); 
      	$xajax->registerFunction( 'chat' ); 
      	 
      ?>
      
      <!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="fr" lang="fr"> 
      	<head> 
      		<title>t'chat uncupidon</title> 
      		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
      <?php $xajax->printJavascript(); ?> 
      		<script type="text/javascript" src="xajax.js">
      		
      		
      		
      function refresh() 
      { 
      	chat(); 
      	setTimeout("refresh()", 5000); 
      } 
      		</script> 
      		<style type="text/css"> 
      #chatcomplet 
      { 
      width:400px; 
      height:400px; 
      background-repeat: no-repeat; 
      border: 1px solid black; 
      } 
      #lecture 
      { 
      position : absolute ; 
      width:400px; 
      height:300px; 
      background-color: red; 
      color : yellow; 
      overflow : scroll ; 
      border: 1px solid green; 
      } 
      #message 
      { 
      background-color: green; 
      background-attachment: fixed; 
      width:400px; 
      height:100px; 
      border: 1px solid green; 
      padding: 1px; 
      padding-top: 300px; 
      } 
      		</style> 
      	</head> 
      	<body>
      		<div id="chatcomplet"> 
      			<form action="<?php echo'chat.php?pseudo='.$pseudo.''?>" method="post"/> 
      			<div id="lecture"></div> 
      			<div id="message"> 
      				<p>Message :
      					<input type="text" name="message" size="30"/>
      					<br /> 
      					<input type="submit" value="Envoyer" /> 
      				</p> 
      			</div> 
      		</div> 
      		</form> 
      		<script type="text/javascript" src="xajax.js">refresh();</script>
      	</body> 
      </html>
      0
      1. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923 > micka30 Messages postés 102 Statut Membre
         
        ben attends, faut déjà un document clean !

        fais la modif en <13>, après ça devrait être valide.
        0
  10. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    et tu as fermé la balise <form> en l'ouvrant :
    <form action="chat.php?pseudo=" method="post"/>

    à corriger en :
    <form action="chat.php?pseudo=" method="post">
    0
    1. micka30 Messages postés 102 Statut Membre 5
       
      voila il est ok!


      This Page Is Valid XHTML 1.0 Strict!
      0
  11. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    muy bien !

    maintenant il y a trois fois la bibliothèque !
    ça devrait suffire !
    -:oD
    <script src="xajax_js/xajax.js" type="text/javascript">
    <script src="xajax.js" type="text/javascript">
    <script src="xajax.js" type="text/javascript">

    et je ne retrouve pas ta fonction 'Refresh()'…
    c'est le b***el !
    0
  12. micka30 Messages postés 102 Statut Membre 5
     
    lol , dsl je suis un boulet en ajax!

    j'ai pas compris ce que je devait faire en 17
    0
    1. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
       
      riende particulier, je te partageais mon désarrois !

      et sans le 'Refresh()' tu réussis toujours à faire tourner le chat ?
      (pauvre chat…)
      -:o)
      0
      1. micka30 Messages postés 102 Statut Membre 5 > Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention  
         
        ben rien ne s'affiche ni les messages recu ni les messages envoyée


        tien si tu veut testé:


        http://www.uncupidon.com/chat.php?pseudo=yohasakura
        0
  13. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    et tu sais à quoi tu as touché depuis que ça marchait ?
    0
    1. micka30 Messages postés 102 Statut Membre 5
       
      ben avant de rajouter ajax ca marchait,
      0
      1. micka30 Messages postés 102 Statut Membre 5 > micka30 Messages postés 102 Statut Membre
         
        Donc comme ca,



        <?php 
        // on commence par ouvrir la session 
        session_start(); 
        $_SESSION['pseudo']; 
        $_SESSION['logged']; 
        
        
        // D'abord, on se connecte à MySQL 
        
        $cnx=mysql_connect("**********", "***********", "********") or die("Pb connexion au serveur".mysql_error()); 
        $db=mysql_select_db("**********") or die("Pb selection base".mysql_error()); 
        
        
        
        if (isset($_POST['message'])) // Si les variables existent 
        { 
        if ($_POST['message'] != NULL) // Si on a quelque chose à enregistrer 
        { 
        
        
        // On utilise les fonctions PHP mysql_real_escape_string et htmlspecialchars pour la sécurité 
        $message = mysql_real_escape_string(htmlspecialchars($_POST['message'])); 
        $timestamp = time(); 
        
        
        $expediteur = $_SESSION['pseudo']; 
        $destinataire = $_GET['pseudo']; 
        // Ensuite on enregistre le message 
        mysql_query("INSERT INTO chat VALUES('', '$expediteur', '$destinataire', '$message', '$timestamp', '')"); 
        } 
        } 
        
        
        
        
        
        
        
        <!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="fr" lang="fr"> 
        <head> 
        <title>t'chat uncupidon</title> 
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
        <?php $xajax->printJavascript(); /* Affiche le Javascript */?> 
        <script type="text/javascript"> 
        
        function refresh() 
        { 
        chat(); 
        setTimeout("refresh()", 5000); 
        } 
        </script> 
        
        
        </head> 
        <style type="text/css"> 
        
        
        #chatcomplet 
        { 
        width:400px; 
        height:400px; 
        
        background-repeat: no-repeat; 
        border: 1px solid black; 
        } 
        
        #lecture 
        { 
        position : absolute ; 
        width:400px; 
        height:300px; 
        background-color: red; 
        color : yellow; 
        overflow : scroll ; 
        border: 1px solid green; 
        } 
        
        #message 
        { 
        background-color: green; 
        background-attachment: fixed; 
        width:400px; 
        height:100px; 
        border: 1px solid green; 
        padding: 1px; 
        padding-top: 300px; 
        
        } 
        </style> 
        <body> 
        
        
        
        
        <div id="chatcomplet"> 
        
        <form action="<?php echo'chat.php?pseudo='.$pseudo.''?>" method="post"/> 
        <div id="lecture">
        
        $reponse = mysql_query("SELECT expediteur, message, timestamp FROM chat WHERE destinataire='".$_SESSION['pseudo']."'OR expediteur='".$_SESSION['pseudo']."'"); 
        while ($donnees = mysql_fetch_array($reponse) ) 
        { 
        
        $date = date('d/m/Y \à H\hi', $donnees2['timestamp']); 
        $message = $donnees['message']; 
        $expediteur = $donnees['expediteur']; 
        $pseudo= $_GET['pseudo']; 
        
        $retour='<p><strong> '.$expediteur.' </strong> le '.$date.' : '.$message.' </p>'; 
        } 
        
        
        
        </div> 
        
        <div id="message"> 
        
        <p>Message : <input type="text" name="message" size="30"/><br /> 
        
        <input type="submit" value="Envoyer" /> 
        </p> 
        
        </div> 
        </div> 
        
        <?php 
        
        
        mysql_close(); 
        ?> 
        
        
        </form> 
        
        
        </body> 
        </html>
        0
      2. micka30 Messages postés 102 Statut Membre 5 > micka30 Messages postés 102 Statut Membre
         
        up
        0
      3. micka30 Messages postés 102 Statut Membre 5 > micka30 Messages postés 102 Statut Membre
         
        j'ouvre un autre poste avec un titre plus explicite!
        0