thekid23
Messages postés77Date d'inscriptionvendredi 24 novembre 2000StatutMembreDernière intervention28 novembre 2007
-
23 avril 2007 à 03:54
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 2012
-
23 avril 2007 à 12:38
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 23 avril 2007 à 12:38
ta variable $enteris n'est pas forcement definie quand tu arrives dans ton if...
$enteris = 'ok'; // tu devrais te renseigner sur les booleans
sinon, un tableau associatif serait un meilleur choix voir un strpos et un substringcount, mais pas explode qui se trouverait etre plus lent au delas de quelques enregistrements
kankrelune
Messages postés1293Date d'inscriptionmardi 9 novembre 2004StatutMembreDernière intervention21 mai 2015 23 avril 2007 à 12:20
pareil que les commentaires précédents... je rajouterais que si ton serveur à register_globals d'activé tu as une belle faille de sécurité... mais pour corriger le code présent... .. .
if($auth === true)
// l'internaute est identifié
else
// l'internaute n'est pas identifié
Un autre problème se pose avec ton code... il n'y a aucune persistance des informations... tu est donc obligé de t'identifier à chaque changement de page... fais une recherche sur les sessions ça te sera utile... .. .
@ tchaOo°
psykocrash
Messages postés240Date d'inscriptionvendredi 14 juin 2002StatutMembreDernière intervention17 mars 2009 23 avril 2007 à 11:03
Quand je débutais en programmation, je suis allé sur irc et j'ai demandé à d'autres programmeurs comment faire quelque chose. Un gars m'a répondu un truc que je n'oublierai jamais : C'est de la programmation sale, et je ne t'aiderai pas.
Ce que nous tu fais là, c'est de la programmation sale aussi. Tu veux faire un système de gestion de comptes utilisateurs ? Utilises MySQL. Tu n'en veux pas ? Utilise au moins l'XML. Ca non plus ? Construit toi un petit système à la linux (/etc/passwd), mais ne perds pas ton temps dans ce que tu fais actuellement.
Cordialement,
Psykocrash.
cs_garfield90
Messages postés388Date d'inscriptionlundi 7 juillet 2003StatutWebmasterDernière intervention10 février 2009 23 avril 2007 à 10:01
y a des fonctions tres utiles en PHP array_key_exists entre autre ;)
regardes toutes les array_* du manuel et tu accelereras ton script (sinon pas tres pratiques a maintenir)
Teclis01
Messages postés1423Date d'inscriptionmardi 14 décembre 2004StatutMembreDernière intervention29 décembre 20124 23 avril 2007 à 10:00
Je vois pas trop l'interet de mot de passe en dur...
Pour ce qui est de la séparations des logins ou mot de passe par une virgule c'est pareil...
Enfin, ça s'ecrit ainsi:
Laissez vos commentaires
cs_putch
Messages postés624Date d'inscriptionmardi 6 mai 2003StatutMembreDernière intervention14 décembre 20091 23 avril 2007 à 09:21
salut
dejà des couples identifiants/mot de passe directement en "dur" dans le code source , ...
ca pose (entre-autres) des sourcis de maintenance (ajout/modification/suppression) et puis avec 10 000 inscrits ...
ensuite sur tes variables POST, aucune protection (meme pas un addslashes() ...)
enfin for($i='0'; $i<$nbpseudo; $i++)
ca recoupe le premier point, tu parours tous tes inscrits meme si tu as trouvé le bon couple id/mdp
++
thekid23
Messages postés77Date d'inscriptionvendredi 24 novembre 2000StatutMembreDernière intervention28 novembre 2007 23 avril 2007 à 03:54
23 avril 2007 à 12:38
$enteris = 'ok'; // tu devrais te renseigner sur les booleans
sinon, un tableau associatif serait un meilleur choix voir un strpos et un substringcount, mais pas explode qui se trouverait etre plus lent au delas de quelques enregistrements
23 avril 2007 à 12:20
$users = array();
$users['pseudo'] = 'motdepass';
$auth = false;
if(isset($_POST['login']) && !empty($_POST['login']) && isset($_POST['pass']) && !empty($_POST['pass']))
{
if(isset($users[$_POST['login']]) && $users[$_POST['login']] === $_POST['pass'])
$auth = true;
}
if($auth === true)
// l'internaute est identifié
else
// l'internaute n'est pas identifié
Un autre problème se pose avec ton code... il n'y a aucune persistance des informations... tu est donc obligé de t'identifier à chaque changement de page... fais une recherche sur les sessions ça te sera utile... .. .
@ tchaOo°
23 avril 2007 à 11:03
Ce que nous tu fais là, c'est de la programmation sale aussi. Tu veux faire un système de gestion de comptes utilisateurs ? Utilises MySQL. Tu n'en veux pas ? Utilise au moins l'XML. Ca non plus ? Construit toi un petit système à la linux (/etc/passwd), mais ne perds pas ton temps dans ce que tu fais actuellement.
Cordialement,
Psykocrash.
23 avril 2007 à 10:01
regardes toutes les array_* du manuel et tu accelereras ton script (sinon pas tres pratiques a maintenir)
23 avril 2007 à 10:00
Pour ce qui est de la séparations des logins ou mot de passe par une virgule c'est pareil...
Enfin, ça s'ecrit ainsi:
Laissez vos commentaires
23 avril 2007 à 09:21
dejà des couples identifiants/mot de passe directement en "dur" dans le code source , ...
ca pose (entre-autres) des sourcis de maintenance (ajout/modification/suppression) et puis avec 10 000 inscrits ...
ensuite sur tes variables POST, aucune protection (meme pas un addslashes() ...)
enfin for($i='0'; $i<$nbpseudo; $i++)
ca recoupe le premier point, tu parours tous tes inscrits meme si tu as trouvé le bon couple id/mdp
++
23 avril 2007 à 03:54