Personnaliser une session... (difficulté entre 1 à 100) : 8

Eléphant du PHP | 112 Messages

16 déc. 2006, 16:16

Mais la page accueil sert seulement à interroger là table...
Modifié en dernier par France-Webmaster le 16 déc. 2006, 16:42, modifié 1 fois.
Cordialement, France-Webmaster
www.france-webmaster.fr
[email protected]
--------------------------------------
Magnifique invention qu'est la base de donnée !!

ViPHP
ViPHP | 1961 Messages

16 déc. 2006, 16:20

Re,

Je ne voudrais pas être désagréable, mais là tu exagères !
La suite sans moi !
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein

Eléphant du PHP | 112 Messages

16 déc. 2006, 16:32

pourtant j'ai posté mon message dans "Débuter en PHP"... hum car la page accueil.php sert seulement à à interooger une table rien de plus...
Cordialement, France-Webmaster
www.france-webmaster.fr
[email protected]
--------------------------------------
Magnifique invention qu'est la base de donnée !!

Eléphant du PHP | 112 Messages

16 déc. 2006, 16:42

Je suppose qu'il faut envoyer par url ? :

Je suis tomber sur un bontexte mais cela est de html à url puis php

moi je veut de php à url puis php... comment faire ?

Code : Tout sélectionner

Tu désires envoyer des variables de la verifLogin.php à la accueil.php. verifLogin.php3 : l'envoi <html> <head> <script language="Javascript" <!-- // On passe 2 variables tant qu'à faire var param1="var1"; var param2="var2"; function go() { window.location.href="accueil.php3?param1="+param1+"&param2="+param2; } // --> </script> </head> <body> <a href="javascript:go()">Vers la page 2</a> </body> </html> L'utilisation deJS n'est qu'un ex. On peut aussi avoir : <?php $param1="10"; $param2="20"; ?> ... <a href="accueil.php3?param1=<?php echo $param1; ?>&param2=<?php echo $param2; ?>">Vers la page 2</a> Page 2 : la réception Php va automatiquement créer pour toi les variables $param1 et $param2 : tu n'as donc rien à faire ! accueil.php3 <html> <head> </head> <body> ... <?php echo "param1=".$param1."<br>"; echo "param2=".$param2."<br>"; ?> ... </body> </html> Une autre solution consiste à utiliser les formulaires : par ex avec un formulaire la page verifLogin.php3 devient : <html> <body> <form action="accueil.php3" method="post"> <input type="submit" value="Vers la page 2"> Entrez le param 1 : <input type="text" name="param1"> Entrez le param 2 : <input type="text" name="param2"> </form> </body> </html> Si tu ne désires pas saisir il suffit de transmettre les paramètres en tant que champs cachés ( hidden) <form action="accueil.php3" method="post"> <input type="submit" value="Vers la page 2"> <input type="hidden" value="<?php echo $param1; ?>" name="param1"> <input type="hidden" value="<?php echo $param2; ?>" name="param2"> </form> Ce qui est important c'est de bien donné un nom avec l'attribut "name" ! La page 2 reste inchangée !! Ps : j'ai trouvé ces explications en anglais sur l'excellent site : http://www.wsabstract.com Bye Philippe
Cordialement, France-Webmaster
www.france-webmaster.fr
[email protected]
--------------------------------------
Magnifique invention qu'est la base de donnée !!

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

16 déc. 2006, 17:35

Modération :
France-Webmaster, je crois que Alojoca est énervé car le site que tu mets en lien dans ta signature est commercial.
Si tu comptes revendre des scripts à tes clients, il faut être très méticuleux et bien faire les choses.
France-Webmaster est une équipe se chargeant de mettre à votre disposition un site Internet afin de promouvoir votre entreprise et vos projets personnels, ceci d'une manière simple et à des prix attractifs.
Par ailleurs il existe sur le web des tutos concernant l'architecture d'un espace membre sur un site...par exemplesur Developpez.com. Regarde l'utilisation des sessions aussi.
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

Eléphant du PHP | 112 Messages

16 déc. 2006, 17:43

Oui, ce n'est pas interdit de vendre non pas des script mais l'intégralité de script, tant qu'on est déclaré... c'est tout...

Je ne vend pas les script, mais je service, j'installe les script et les personnalise, je vais d'ailleurs créer une parti ou les gens pourrons les installer eu même si ils ont un minimum de talent... bref la vente est un test si pendant 1 an sa marche pas je fait tout gratuit (et la sa sera plus de la personnalisation mais un genre de rayon ou le monde se sert gratis... voilà je ne fait rien d'illégal !!
Cordialement, France-Webmaster
www.france-webmaster.fr
[email protected]
--------------------------------------
Magnifique invention qu'est la base de donnée !!

Eléphant du PHP | 112 Messages

16 déc. 2006, 17:47

Bon j'ai super bien bossé là :
Un peu de débrouille sa fait pas de mal :

J'obtien :

Code : Tout sélectionner

pseudo= pass= Erreur SQL ! SELECT pseudo,pass". "FROM user ". "WHERE pseudo="" You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '". "WHERE pseudo=""' at line 1
id.php

Code : Tout sélectionner

vide
nompage.php3

Code : Tout sélectionner

<?php echo "pseudo=".$pseudo."<br>"; echo "pass=".$pass."<br>"; // on se connecte à MySQL $db = mysql_connect('sql.free.fr', 'francewebmaster', '********'); // on sélectionne la base mysql_select_db('francewebmaster',$db); // on crée la requête SQL $sql = 'SELECT pseudo,pass". "FROM user ". "WHERE pseudo="'.$pseudo.'"'; // on envoie la requête $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); // on ferme la connexion à mysql mysql_close(); ?>
session.php

Code : Tout sélectionner

<html> <head> <title>Connexion</title> </head> <body> <?php if(isset($_GET['msg']) && $_GET['msg'] == '0'){ echo '<center><h3>Le pseudonyme ou le mot de passe est erroné, veuillez réessayer !</h3></center>'; } ?> <form method="post" action="verifLogin.php"> <table border="0" width="400" align="center"> <tr> <td width="200">Pseudo</td> <td width="200"> <input type="texte" name="pseudo"> </td> </tr> <tr> <td width="200">Pass</td> <td width="200"> <input type="password" name="pass" /> </td> </tr> <tr> <td colspan="2"> <input type="submit" name="submit" value="Vérifier"> </td> </tr> </table> </form> </body> </html>
verifLogin.php

Code : Tout sélectionner

<?php $loginOK = false; $pseudo = isset($_POST['pseudo']) ? $_POST['pseudo'] : ""; $pass = isset($_POST['pass']) ? $_POST['pass'] : ""; if ( (!empty($pseudo)) && (!empty($pass)) ) { //connexion à la base de données $liendb = mysql_connect("sql.free.fr","francewebmaster","******"); $db = mysql_select_db(francewebmaster); // On va vérifier l'existence du couple pseudonyme+mot de passe $sql = "SELECT COUNT(*) FROM `user` WHERE `pseudo` = '" . addslashes($pseudo) . "' AND `pass` = '" . addslashes($pass) . "'"; /* Exécution de la requête */ $req = mysql_query($sql) or die("Erreur lors de l'exécution de la requête : \"".$sql ."\";<br />\nErreur retournée : ". mysql_error()); // On vérifie le résultat retourné if (mysql_result($req, 0) == 1) { $loginOK = true; } } // Si le login a été validé on met les données en sessions if ($loginOK) { /* On enregistre jamais un mot de passe dans une variable de session ! */ $_SESSION['pseudo'] = $pseudo; /* REDIRECTION VERS LA PAGE UTILISATEUR RECONNU*/ header('Location: nompage.php3'); } else { header('Location: id.php?msg=o'); } // ESSAYER SANS LES " " !! ?> <a href="nompage.php3?pseudo=<?php echo $pseudo; ?>&pass=<?php echo $pass; ?>">Vers la page nompage.php3</a>
Cordialement, France-Webmaster
www.france-webmaster.fr
[email protected]
--------------------------------------
Magnifique invention qu'est la base de donnée !!

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

16 déc. 2006, 17:48

Rien d'illégal, nous sommes d'accord.
Concernant ton problème : pourquoi accueil.php a une action aussi limitée ?
As-tu le bouquin PHP5 avancé ? Parce que dedans, il y a exactement ce que tu souhaites faire d'expliqué.

Et tu dois mettre des variables en session, c'est le seul moyen simple et efficace de transporter des variables durant toute la visite d'un utilisateur.
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

ViPHP
ViPHP | 1961 Messages

16 déc. 2006, 17:50

Re,
De plus.
après 90 messages dans ce topic
plus 18 dans celui-ci
Sans compter celui en cours.

Deux avertissements Modération (sans compter le tien mere-teresa) lui avoir indiqué plusieurs tutos et sites.

Le tout parlant de $_SESSION[], on demande de rappeller "à quoi ça sert cette fonction". Je me pose des questions sur le bien fondé de ses démarches.

Je ne tiens pas compte de la remarque que tu fais (je ne savais pas ça au moment de mon post), ce qui me conforte dans mon précédent jugement.
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein

Eléphant du PHP | 112 Messages

16 déc. 2006, 18:19

Bon je ne savais pas comment faire et quand on ne trouve pas des informayions du style :

1) clique ici
2) clique là
3) tape ça : ...

Je vais humainement sur un forum pour avoir des conversation et posent toute les quetions qui me vienne à l'esprit, on me dit va chercher des informations sur le web mais c'est ce que j'ai fait, j'ai parcourru tout les site fesan parti des 10 premier dans la liste de google, dsl je n'est pas encore la mentalité d'un adulte, cela dit j'ai réussi à faire une adresse : http://francewebmaster.free.fr/HTML/tab ... 001bccdb98 c'est pas très grave même si le pass est afficher dans le forum, bon je l'est crypté de puis la requête sql qui alimante la table user dans une autre partie du site... mais cette url est accessible de partout, comment faire pour quelle ne soit accessible que si on passe par session.php et donc par verifLogin.php ?

cliquez dessus y a :
pseudo=admin
pass=032e52001bccdb98
Erreur SQL !
SELECT pseudo,pass". "FROM user ". "WHERE pseudo="admin"
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '". "WHERE pseudo="admin"' at line 1
at line 1 y a juste <?php... je doit mettre <? ???

testez-là vous même :
http://francewebmaster.free.fr/HTML/tab ... ession.php
avec :
pseudo admin
pass 032e52001bccdb98
Cordialement, France-Webmaster
www.france-webmaster.fr
[email protected]
--------------------------------------
Magnifique invention qu'est la base de donnée !!

Eléphant du PHP | 112 Messages

16 déc. 2006, 20:52

svp...
Cordialement, France-Webmaster
www.france-webmaster.fr
[email protected]
--------------------------------------
Magnifique invention qu'est la base de donnée !!

Mammouth du PHP | 19672 Messages

16 déc. 2006, 22:52

Si tu recopiais en faisant attention, tu aurais moins de surprises :
Tu as fait ceci:
// on crée la requête SQL
$sql = 'SELECT pseudo,pass". "FROM user ". "WHERE pseudo="'.$pseudo.'"'; 
Ta chaine (la requête SQL) est entre apostrophes. mais tu as mis des "." dans la chaine : les guillemets seront donc envoyés tels quels et n'ont rien à faire dans la requête.
Corrigé :
// on crée la requête SQL
$sql = "SELECT pseudo, pass ".
       "FROM user ".
       "WHERE pseudo='". $pseudo ."'"; 
Observe la différence au niveau de la coloration syntaxique, c'est un bon point de repère pour voir rapidement des erreurs.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

17 déc. 2006, 01:05

quand on ne trouve pas des informayions du style :

1) clique ici
2) clique là
3) tape ça : ...
En fait, on tente que tu fasses des choses en les comprenant, sans juste te donner le code en copier/coller.
Sinon, pour ce que tu as fait, c'est un bon début (pour attraper ta variable pseudo, si tu tentais $_GET['pseudo'] (si le nom du champ du formulaire HTML est pseudo).
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

Eléphant du PHP | 112 Messages

17 déc. 2006, 14:04

merci, j'ai corriger, mais comment crypter l'url :

http://francewebmaster.free.fr/HTML/tab ... 001bccdb98

Pour que l'on ne puisse voir le mot de passe...
et que le pseudo reste visible ?

Et $_GET['pseudo'] je met ça dans verifLogin.php ?
Cordialement, France-Webmaster
www.france-webmaster.fr
[email protected]
--------------------------------------
Magnifique invention qu'est la base de donnée !!

Eléphant du PHP | 112 Messages

18 déc. 2006, 16:59

svp...
Cordialement, France-Webmaster
www.france-webmaster.fr
[email protected]
--------------------------------------
Magnifique invention qu'est la base de donnée !!