begin process at 2010 02 10 12:52:20
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Web 2.0

 > 

Ajax

 > 

problème de deconexion! script en ajax et php.


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

problème de deconexion! script en ajax et php.

mardi 29 avril 2008 à 12:07:15 | problème de deconexion! script en ajax et php.

petitfute



 				
bonjour!


j'ai un probleme bizard!


Quand je vais sur le t'chat ma SESSION est automatiquement deconnecté!


si j'enleve le session_start(); du deuxieme script, il n ya plus de deconexion mais ma requete marche plus vu que je me sert de $_SESSION['pseudo'];..



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


j'utilise des session_start() pratiquement sur toute mes pages, ils fonctionnent bien , aucun problème.


la deconnection s'effectue juste quand je me rend sur la page de chat en même temps que le rafraichisement du deuxieme script que j'ai donnée.

si vous faire le teste par vous même: http://www.uncupidon.com

voici un compte test:

pseudo = test

password= azerty


une fois connecter , cliquer sur une des photos de la premiere page et cliquer sur chat!

normalement vous allez etre deconectée!


bon j'espere que vous allez pouvoir m'aider!


voici les 2 script qui rentre en jeu:



<?php
session_start();
$_SESSION['pseudo'];
$_SESSION['logged'];
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head>
<title>Chat</title>
<script type="text/javascript">
function plop()
        {
        var xhr_object = null;

        if(window.XMLHttpRequest) // Firefox
           xhr_object = new XMLHttpRequest();
        else
                {
                if(window.ActiveXObject) // Internet Explorer
                        xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
                else // XMLHttpRequest non supporté par le navigateur
                        {
                        alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
                        return;
                        }
                }







        var method   = "POST";
        var filename = "reponse.php";

        var requete  = "message=<?php echo'.$retour.'?>";

        xhr_object.onreadystatechange = function()
                {
                if(xhr_object.readyState == 4)
                        {
                        var reponse = xhr_object.responseText;
                        document.getElementById("content").innerHTML = reponse;
                        }
                }

        xhr_object.open(method, filename, true);

        xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

        xhr_object.send(requete);

        }






</script>

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

</head>

<style type="text/css">


#chatcomplet
{
width:400px;
height:400px;
background-repeat: no-repeat;
border: 1px solid black;
}
  #content
{
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>


$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 ?
}

      $destinataire = $_GET['pseudo'];
?>




<body onLoad="plop()">
<div id="content"></div>




  <div id="chatcomplet">


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


<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>




et voici le deuxieme, il sert a afficher les message dans le <div id="content">,

il se rafraichie toute les 5 seconde:




<?php
session_start();

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


$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 à Hhi', $donnees['timestamp']);
$message = $donnees['message'];
$expediteur = $donnees['expediteur'];
$pseudo= $_GET['pseudo'];

echo '<p><strong> '.$expediteur.' </strong> le '.$date.' : '.$message.' </p>';
}
mysql_close(); // Déconnexion de MySQL
?>

mardi 29 avril 2008 à 12:27:20 | Re : problème de deconexion! script en ajax et php.

Teclis01

Une tartine de code cracra ca donne pas envie de relire...
Nettoie un peu et qqun daignera peut etre relire ton bazar

Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

 Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro

mardi 29 avril 2008 à 12:41:27 | Re : problème de deconexion! script en ajax et php.

petitfute

re!

oui dsl , voila je pense avoir rendu mon code un peu plus propre!


bonjour!



j'ai un probleme bizard!


Quand je vais sur le t'chat ma SESSION est automatiquement deconnecté!


si j'enleve le session_start(); du deuxieme script, il n ya plus de deconexion mais ma requete marche plus vu que je me sert de $_SESSION['pseudo'];..





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




j'utilise des session_start() pratiquement sur toute mes pages, ils fonctionnent bien , aucun problème.




la deconnection s'effectue juste quand je me rend sur la page de chat en même temps que le rafraichisement du deuxieme script que j'ai donnée.

si vous faire le teste par vous même: http://www.uncupidon.com


voici un compte test:


pseudo = test

password= azerty




une fois connecter , cliquer sur une des photos de la premiere page et cliquer sur chat!

normalement vous allez etre deconectée!



bon j'espere que vous allez pouvoir m'aider!




voici les 2 script qui rentre en jeu:








chat.php

<?php
session_start();
$_SESSION['pseudo'];
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head>
<title>Chat</title>
<script type="text/javascript">
function plop()
        {
        var xhr_object = null;

        if(window.XMLHttpRequest) // Firefox
           xhr_object = new XMLHttpRequest();
        else
                {
                if(window.ActiveXObject) // Internet Explorer
                        xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
                else // XMLHttpRequest non supporté par le navigateur
                        {
                        alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
                        return;
                        }
                }







        var method   = "POST";
        var filename = "reponse.php";

        var requete  = "message=<?php echo'.$retour.'?>";

        xhr_object.onreadystatechange = function()
                {
                if(xhr_object.readyState == 4)
                        {
                        var reponse = xhr_object.responseText;
                        document.getElementById("content").innerHTML = reponse;
                        }
                }

        xhr_object.open(method, filename, true);

        xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

        xhr_object.send(requete);

        }






</script>



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

</head>

<style type="text/css">





#chatcomplet
{
width:400px;
height:400px;
background-repeat: no-repeat;
border: 1px solid black;
}
   #content
{
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>






$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 ?
}

      
$destinataire = $_GET['pseudo'];
?>














<body onLoad="plop()">



<div id="content"></div>






    <div id="chatcomplet">



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




<div id="message">

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

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


</div>
</div>

<?php


mysql_close();
?>

</form>


<script>
refresh();
</script>


</body></html>














et voici le deuxieme, il sert a afficher les message dans le <div id="content">,

il se rafraichie toute les 5 seconde:





reponse.php









<?php
session_start();




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


$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 à Hhi', $donnees['timestamp']);
$message = $donnees['message'];
$expediteur = $donnees['expediteur'];
$pseudo= $_GET['pseudo'];

echo '<p><strong> '.$expediteur.' </strong> le '.$date.' : '.$message.' </p>';
}





mysql_close(); // Déconnexion de MySQL

?>
mardi 29 avril 2008 à 14:23:53 | Re : problème de deconexion! script en ajax et php.

Teclis01

Euh... tu as compris le contraire de ce que je voulais que tu comprennes...

Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

 Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro

mardi 29 avril 2008 à 14:52:50 | Re : problème de deconexion! script en ajax et php.

petitfute

okok!  lol

bon je vais essayer de faire simple , et propre.


le script chat.php via ajax fait apel au script reponse.php pour afficher dans le  <div id="content"></div>  de
chat.php les reponses  a la requête de reponse.php.

la requête de reponse.php fonctionne avec un session 
".$_SESSION['pseudo']." .

donc le problême, c'est que si je met un session_start sur le script
reponse.php , ca me deconnecte comme un session_destroy.

Et si j'enleve le session_start  ma requête marche plus.

donc ma question est la suivante:

comment faire passer la session_start  vers reponse.php sans qu'il n y est de deconexion.
 



chat.php

<?php
session_start();
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head>
<title>Chat</title>
<script type="text/javascript">
function plop()
        {
        var xhr_object = null;

        if(window.XMLHttpRequest) // Firefox
           xhr_object = new XMLHttpRequest();
        else
                {
                if(window.ActiveXObject) // Internet Explorer
                        xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
                else // XMLHttpRequest non supporté par le navigateur
                        {
                        alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
                        return;
                        }
                } 


        var method   = "POST";
        var filename = "reponse.php";

        var requete  = "message=<?php echo'.$retour.'?>";

        xhr_object.onreadystatechange = function()
                {
                if(xhr_object.readyState == 4)
                        {
                        var reponse = xhr_object.responseText;
                        document.getElementById("content").innerHTML = reponse;
                        }
                }

        xhr_object.open(method, filename, true);

        xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

        xhr_object.send(requete);

        }

</script>

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

</head>

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


$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 ?
     } 
?>


<body onLoad="plop()"> 

    <div id="content"></div> 

<?php
mysql_close();
?>

          </form>

<script>
refresh();
</script>

</body></html>




 				 						 								reponse.php












<?php
session_start();








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


$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 à Hhi', $donnees['timestamp']);
$message = $donnees['message'];
$expediteur = $donnees['expediteur'];
$pseudo= $_GET['pseudo'];

echo '<p><strong> '.$expediteur.' </strong> le '.$date.' : '.$message.' </p>';
}





mysql_close(); // Déconnexion de MySQL

?>


Cette discussion est classée dans : message, mysql, session, pseudo, expediteur


Répondre à ce message

Sujets en rapport avec ce message

Modifier les enregistrements d'une base donée [ par GillesWebmaster ] Bonjour,j'aimerais savoir comment on fait pour créer un petit "module" qui modifie les enregsitrement d'un livre d'or:2pages: -livreor.php             Parse error [ par CCJ ] bonjour voila mon code : if (isset($_POST['pseudo']) AND isset($_POST['message'])) // Si les variables existent {     if ($_POST['pseudo'] != NULL AN Textarea [ par CCJ ] bonjour.je fais actuellement un site et g kelkes blemes pour etre plus calir voici l'adresse : http://assembleur.perso.ados.fr/Acceuil.php?Page=Tchatl message interne [ par 01cod10 ] Je suis en train de faire une messagerie interne sur mon site. Lorsque je clique sur le lien titre le message ne s'affiche pas.Pouvez vous me dire ce Probleme de requete mysql [ par momoxe ] Bonjour, j'ai fait un code en php pour mon site web et il ne fonctionne pas.A chaque fois, mon serveur me renvoie "parse error on line 5, ce qui corre pb de boucle je supose en php ( navigation dans un tableau associé) [ par fredericmaill ] Bonjour @ tous !!! Voila je vous explique mon problème, je réalise un système d’authentification en php avec un system de sessions. Ce script permet l pb de boucle je supose en php ( navigation dans un tableau associé) [ par fredericmaill ] Bonjour @ tous !!! Voila je vous explique mon problème, je réalise un système d’authentification en php avec un system de sessions. Ce script permet l Pb de lecture des enregistrements [ par fredericmaill ] Bonjour,   J’ai u problème de lecture de mes enregistrements, je mets le résultatd’une raquette dans un tableau associatif. Le problème c quand j’essa pb navigation tableau associatif php [ par fredericmaill ] Pb de lecture des enregistrements Bonjour,   J’ai u problème de lecture de mes enregistrements, je mets le résultatd’une raquette dans un tableau asso double message avec F5 [ par GAMERR ] Bonjour à tous je tient a dire que jai chercher avant de poster.Je suis dans la réalisation d'un livre d'or en php biensur il marche très bien sauf qu


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,340 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales