begin process at 2012 05 31 05:01:13
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

Pb de conception


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

Pb de conception

vendredi 2 juin 2006 à 10:33:25 | Pb de conception

blinix123

Bonjour à tous, alors voila, je vous explique avant de vous balancer tout le code :p
J'ai un code mini-chat, et un code page protegé par mot de passe, j'ai fais un mix des 2 bien sur!
Donc dans le code du motdepasse, IF mot de passe = "" et la j'ai copier TOUT le code du mini-chat, ELSE, retaper le mot de passe,
Je rentre la pass tout va bien je rentre dans partie du code mini-chat, mais lorsque je rentre le pseudo et un message, je clique sur envoyer, ben la bimbamboum, je suis de retour sur la page du mot de passe (enfin je suis sortie du code mini-chat quoi),
Je ne comprend pas pourquoi (parceque si on prend QUE le code du chat seul, il va se repeter comme un grand, donc on pourra chatter, mais des que je l'insere,il ne se repete plus,sniif)

voilou vous pouver faire un copier/coller si vous voulez

<?php
// J'ai choisi le mot de passe "kangourou"

if (isset($_POST['mot_de_passe'])) // Si la variable existe
{
    // On se crée une variable $mot_de_passe avec le mot de passe entré
    $mot_de_passe = $_POST['mot_de_passe'];
}
else // La variable n'existe pas encore
{
    $mot_de_passe = ""; // On crée une variable $mot_de_passe vide
}


if ($mot_de_passe == "kangourou") // Si le mot de passe est bon
{
// On affiche la page cachée.
?>

   

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" " [ Lien ]">
<html xmlns=" [ Lien ]" xml:lang="fr" lang="fr">
    <head>
        <title>Mini-chat</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    </head>
    <style type="text/css">
    form
    {
    text-align:center;
    }
    </style>
    <body>

 

 
 
 
<?php
if (isset($_POST['pseudo']) AND isset($_POST['message'])) // Si les variables existent
{
    if ($_POST['pseudo'] != NULL AND $_POST['message'] != NULL) // Si on a quelque chose à enregistrer
    {
        // D'abord, on se connecte à MySQL
        mysql_connect("localhost", "root", "");
        mysql_select_db("minichat");

        // On utilise la fonction PHP htmlentities pour éviter d'enregistrer du code HTML dans la table
        $message = htmlentities ($_POST['message']);
        $pseudo = htmlentities ($_POST['pseudo']);
  $heure = date('H:i:s');

        // Ensuite on enregistre le message
        mysql_query("INSERT INTO msnix VALUES('', '$pseudo', '$message', '$heure')");

        // On se déconnecte de MySQL
        mysql_close();
    }

// Que l'on ait enregistré des données ou pas...
// On affiche le formulaire puis les 20 derniers messages

// Tout d'abord le formulaire :
?>

 

<form action="pass.php" method="post">

<p>
Pseudo : <input type="text" name="pseudo" /><br />
Message :  <input type="text" name="message" /><br />

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

</form>


<?php
mysql_connect("localhost", "root", ""); //connection à la base
mysql_select_db("minichat"); //selection base
$retour = mysql_query("SELECT count( * )  as nbmess FROM msnix") or die (mysql_error()); //compte le nombre de message dans le chat dans la table msnix
$donnees = mysql_fetch_array($retour);

if ($donnees['nbmess'] > 19) //s'il y a plus de 19 messages, la base se vide
{
mysql_query("DELETE FROM msnix");
echo "base vidé";
}
?>

<?php

// Maintenant on doit récupérer les 20 dernières entrées de la table
// On se connecte d'abord à MySQL :
mysql_connect("localhost", "root", "");
mysql_select_db("minichat");

// On utilise la requête suivante pour récupérer les 20 derniers messages :
$reponse = mysql_query("SELECT * FROM msnix ORDER BY ID DESC LIMIT 0,20");

// On se déconnecte de MySQL
mysql_close();

// Puis on fait une boucle pour afficher tous les résultats :
while ($donnees = mysql_fetch_array($reponse) )
{
?>

<p><strong>(<?php echo $donnees['heure'];?>) <?php echo $donnees['pseudo']; ?></strong> : <?php echo $donnees['message']; ?> </p>

 

<?php
}
// Fin de la boucle, le script est terminé !
?>

    </body>
</html>

<?php
}

 

else // le mot de passe n'est pas bon
{
// On affiche la zone de texte pour rentrer le mot de passe.
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" " [ Lien ]">
<html xmlns=" [ Lien ]" xml:lang="fr" lang="fr">
    <head>
        <title>Page protégée par mot de passe</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    </head>
    <body>
<p>Veuillez entrer le mot de passe pour accèder :</p>
<form action="pass.php" method="post">
<p>
<input type="password" name="mot_de_passe" /> <input type="submit" value="Valider" />
</p>
</form>
<p>Cette page est réservée au IG. Si vous n'en faites pas parti, inutile d'insister vous ne trouverez jamais le mot de passe ! ;-)</p>
    </body>
</html>

<?php

} // Fin du else

// Fin du code
?>

vendredi 2 juin 2006 à 10:42:33 | Re : Pb de conception

PoFMaN

Réponse acceptée !
Salut, Si j'ai tout suivi quand tu envoi ton message pour ton chat et bien tu revien sur la mêm page mais sans passer de variable $_POST['mot_de_passe'] du coup ta variable $mot_de_passe prend une chaîne vide et du coup ton test "if ($mot_de_passe == "kangourou") " foire donc le mot de passe est pas bon et du coup tu demande le saisir
vendredi 2 juin 2006 à 10:43:39 | Re : Pb de conception

pastis51forever

Bonjour! Une fois que le mot de passe est rentré une fois, mets un champs dans ton formulaire, sinon, la variable $mot_de_passe" ne sera pas enregistrée quand tu enverras ton formulaire avec le pseudo et le texte. Brice
vendredi 2 juin 2006 à 10:45:55 | Re : Pb de conception

blinix123

ha oui c'est pas bete de retenir la valeur de motdepasse, merci les gars

vendredi 2 juin 2006 à 10:56:59 | Re : Pb de conception

blinix123

mierda, marche pas, je suis un gros débutant, je ne sais ou rentrer ton input ... ?
vendredi 2 juin 2006 à 11:07:56 | Re : Pb de conception

pastis51forever

C'est une solution, mais dis toi bien que le mot de passe est renvoyé a chaque fois, et surtout que du coup il apparait en clair dans le code source de la page... (j'avais pas beaucoup réfléchi...) Tu devrais peut-etre mieux prendre une variable de session determinant si l'utilisateur s'est loggé ou pas: -------------------- ... -------------------- Si tu veux en savoir plus, recherche "session" sur ce site Brice
vendredi 2 juin 2006 à 11:11:26 | Re : Pb de conception

pastis51forever

Pour la premiere solution (la moins sûre), il faut faire: Pseudo :
Message :
Comme tu as pu le voir, y'a une erreur dans ma 2eme solution (pas testée, mal relue...): if (($mot_de_passe == "kangourou") OR (isset($_SESSION['connection']) AND $_SESSION['connection'] == 'oui')) Y'avait une parenthese de trop...
vendredi 2 juin 2006 à 11:15:13 | Re : Pb de conception

PoFMaN

Réponse acceptée !
Ouaip ou si tu veu pas t'enbêter avec les sessions tu peut changer ce if: "if ($mot_de_passe == "kangourou")" en "if (isset($_POST['pseudo']) || $mot_de_passe == "kangourou")" Si tu reçoit $_POST['pseudo'] sur ta page ca veut dire que t'a déjà vérifié le mot de passe du gars donc plus besoin de la faire. Bon coté sécurité c'est pas à toutes épreuve mais comme c'est des variables post c'est deja pas mal
vendredi 2 juin 2006 à 11:21:38 | Re : Pb de conception

blinix123

PoFMaN  ton 2eme if marche nickel, il est très bien pensé (de mon point de vue de débutant lol)
pastis51forever pour les sessions je vais essayer après ;)
vendredi 2 juin 2006 à 11:52:47 | Re : Pb de conception

blinix123

pour les sessions:


if (($mot_de_passe == "kangourou") or ($_SESSION['pass'] == "kangourou"))  // Si le mot de passe est bon ou si $_SESSION['pass'] = kangourou

{
$_SESSION['pass'] = $mot_de_passe; // $mot_de_passe = kangourou donc 'pass' prend "kangourou" et je rejoint ainsi mon IF ci dessus
// On affiche la page cachée.
?>



compris...

De la ca marche,enfin presque, j'arrive sur la page de chat, je lance une phrase ca marche,mais je lance une seocnde phrase,je reviens sur la page des mots de page, c'est bizarre que ca marche une fois et pas 2



Et en changeant:
$_SESSION['pass'] = $mot_de_passe    en     $_SESSION['pass'] = "kangourou"
ca marche !!!!!!! mais pourtant $mot_de_passe = "kangourou", c'est louche ???!!!  

1 2 3

Cette discussion est classée dans : message, code, mysql, mot, passe


Répondre à ce message

Sujets en rapport avec ce message

Password MySQL [ par eax ] salut!je me suis amusé avec phpmyadmin pour mettre un mot de passe à mon root mysql (mot de passe nul par défaut avec easyphp).mon problème est là qua mysql users [ par elanspeech ] Salut,J'ai un probleme qui commence a me donner la migraine.Quand je cree un user "essai" sans mot de passe, j'obtiens ce message quand je fais un co connexion mysql avec mot de passe crypté [ par vincenteraptor ] Bonjour,J aurai voulu savoir sil etait possible de se connecter à un base de données via un password déja crypté avec le cryptage de mysql??exemple : smileys et mysql [ par nico606 ] g un livre d'or avec des smileys mais mysql bug voila ma sourcema page avec le formulaire:<form method=post action="go_livre.php" name=form1 onsubmit= Pb mot de passe avec MySQL [ par vince062 ] Salut.J'ai une base MySQL protégée par mot de passe. Je veux y accéder par le PHP et une requête. je met le mot de passe dans la commande mysql_connec mot de passe [ par stequer ] voila je rechecher un srcipt pour securiser ma parti menbre de mon site j ai deja une base de donner pseudo et code pour la gestion des utilisateur et Condition case sensitive en MySQL [ par Bestgamer ] Bonjour,je code en php (base de données MySQL) une page de login et je tente de la sécurisé le plus possible.Je veux donc que le nom d'usager et le mo insertion multiple dans une bdd mysql [ par arnold002 ] Bonjour à tous,J'ai une base de données contenant 700 membres.Je voudrai générer un mot de passe aléatoire, et faire ensuite un update dans ma base.Le Page Protégée par mot de pass [ par MindFreak ] Salut je vous propose un code php pour securiser une page web a fond  codé par moi même Ce code est simple, je ne discuterai pas longtemps dessus. Je message d'erreur authentification [ par didine6 ] Bonjour,voici mon problème : j'ai une page auth.php avec un login et un mot de passe. Ce script (ci-dessous) vérifie si l'utilisateur est bien dans la


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
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 : 0,468 sec (3)

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