Initiale affichée à la place du mot
CuivreS
Messages postés
11
Date d'inscription
Statut
Membre
Dernière intervention
-
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
sur la conception de mon site, je créé un tableau qui se complète avec les données des utilisateurs.
Ca fonctionne. Le problème est que aléatoirement, sans que je change le code source, les identifiants sont abrégés. Ici, j'ai "moi" et "oim" comme id et mot de passe, et mon tableau affiche "m" et "o".
Il y a sûrement un moyen pour éviter ce genre d'incident...Comme une formule à ajouter.
Merci pour le coup de plus.
EDIT : correction des balises de code.
Explication ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
sur la conception de mon site, je créé un tableau qui se complète avec les données des utilisateurs.
Ca fonctionne. Le problème est que aléatoirement, sans que je change le code source, les identifiants sont abrégés. Ici, j'ai "moi" et "oim" comme id et mot de passe, et mon tableau affiche "m" et "o".
Il y a sûrement un moyen pour éviter ce genre d'incident...Comme une formule à ajouter.
Merci pour le coup de plus.
<?php $logNom = array ("Boutelier", "Rousse"); $logPrenom = array ("Laurie", "Thierry"); $logVille = array ('Toulouse', 'Mont'); $logMail = array ('laubou@icloud.com', 'thierousse@hotmail.com'); $logTel = array ("0254456336", "0236698774"); $log = array ("oim", "trousse"); $logmdp = array ("moi", "thr"); for($i = 0; $i<2; $i++){ $_SESSION['nom'][$i] = $logNom[$i]; $_SESSION['prenom'][$i] = $logPrenom[$i]; $_SESSION['ville'][$i] = $logVille[$i]; $_SESSION['email'][$i] = $logMail[$i]; $_SESSION['tel'][$i] = $logTel[$i]; $_SESSION['log'][$i] = $log[$i]; $_SESSION['mdp'][$i] = $logmdp[$i]; } echo 'Nombre d\'inscrits: ' . count($_SESSION['nom']); echo '<br><br><br><br>'; echo 'Affichage des inscrits: '; echo '<br><br>'; ?> </div> <div id = "tableau"> <table> <caption>Liste</caption> <tr> <th>Nom</th> <th>Prenom</th> <th>Ville</th> <th>Mail</th> <th>Télephone</th> <th>Identifiant</th> <th>Mot de passe</th> </tr> <?php for($i = 0; $i < count($_SESSION['nom']); $i++){ echo '<tr>'; echo '<td>' . $_SESSION['nom'][$i] . '</td>'; echo '<td>' . $_SESSION['prenom'][$i]. '</td>'; echo '<td>' . $_SESSION['ville'][$i]. '</td>'; echo '<td>' . $_SESSION['email'][$i]. '</td>'; echo '<td>' . $_SESSION['tel'][$i]. '</td>'; echo '<td>' . $_SESSION['log'][$i]. '</td>'; echo '<td>' . $_SESSION['mdp'][$i]. '</td>'; echo '</tr>'; } ?> </table>
EDIT : correction des balises de code.
Explication ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
A voir également:
- Initiale affichée à la place du mot
- Trousseau mot de passe iphone - Guide
- Mot de passe - Guide
- Dans le texte à télécharger, quel est le mot placé juste après le mot semperium ? - Forum Bureautique
- Mot de passe administrateur freebox ✓ - Forum Freebox
- Mot de passe administrateur - Guide
3 réponses
Bonjour,
Je pense que ton code écrit de la sorte te posera moins de soucis
Au passage, je t'invite à lire (et à appliquer) ce qui est indiqué ici :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Et pour finir, lorsque tu postes ton code sur le forum, merci d'utiliser les balises de code
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Je pense que ton code écrit de la sorte te posera moins de soucis
<?php //demarrage des sessions session_start(); //affichage des erreurs PHP error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); //création des users $users=array(); $users[] = array("nom"=>"Boutelier" , "prenom"=>"Laurie", "ville"=>"Toulouse", "mail"=>"laubou@icloud.com","tel"=>"0254456336","log"=>"oim","mdp"=>"moi"); $users[] = array("nom"=>"Rousse" , "prenom"=>"Thierry", "ville"=>"Mont", "mail"=>"thierousse@hotmail.com","tel"=>"0236698774","log"=>"trousse","mdp"=>"thr"); //on stocke les users en session $_SESSION['users'] = $users; //récupération propre des variables AVANT de les utiliser $utilisateurs = !empty($_SESSION['users']) ? $_SESSION['users'] : NULL; echo 'Nombre d\'inscrits: ' . count($utilisateurs); echo '<br><br><br><br>'; echo 'Affichage des inscrits: '; echo '<br><br>'; ?> </div> <div id = "tableau"> <table> <caption>Liste</caption> <thead> <tr> <th>Nom</th> <th>Prenom</th> <th>Ville</th> <th>Mail</th> <th>Télephone</th> <th>Identifiant</th> <th>Mot de passe</th> </tr> </thead> <tbody> <?php if(!empty($utilisateurs)){ foreach($utilisateurs as $U){ echo '<tr>'; echo '<td>' . $U['nom'] . '</td>'; echo '<td>' . $U['prenom']. '</td>'; echo '<td>' . $U['ville']. '</td>'; echo '<td>' . $U['email']. '</td>'; echo '<td>' . $U['tel']. '</td>'; echo '<td>' . $U['log']. '</td>'; echo '<td>' . $U['mdp']. '</td>'; echo '</tr>'; } } ?> <tbody> </table>
Au passage, je t'invite à lire (et à appliquer) ce qui est indiqué ici :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Et pour finir, lorsque tu postes ton code sur le forum, merci d'utiliser les balises de code
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Le code passe très bien, ça signifierait que les tableaux associatifs sont plus fiables que les tableaux classiques.
Merci encore
Merci encore
ça t'évite surtout de faire des erreurs...
je pense que lorsque tu as rencontré tes soucis... tu n'avais pas d'array au niveau de ton user
En gros tu devais avoir
de ce fait.. ta boucle
retournait lettre par lettre .. donc m puis o
le code que je t'ai donné est plus propre et limite le nombre de boucles.
je pense que lorsque tu as rencontré tes soucis... tu n'avais pas d'array au niveau de ton user
En gros tu devais avoir
$logmdp = "moi";
de ce fait.. ta boucle
for($i = 0; $i<2; $i++){ //... $_SESSION['log'][$i] = $log[$i];
retournait lettre par lettre .. donc m puis o
le code que je t'ai donné est plus propre et limite le nombre de boucles.
Je reviens à mon code, parce que celui que tu as proposé n'est pas adapté pour les autres fichiers,
il remet les initiales des identifiants et mots de passe. Pourtant j'ai bien un array pour log et logmdp.
Je met mon tableau:
il remet les initiales des identifiants et mots de passe. Pourtant j'ai bien un array pour log et logmdp.
Je met mon tableau:
$logNom = array ("Boutelier", "Rousse"); $logPrenom = array ("Laurie", "Thierry"); $logVille = array ('Toulouse', 'Mont'); $logMail = array ('laubou@icloud.com', 'thierousse@hotmail.com'); $logTel = array ("0254456336", "0236698774"); $log = array ("oim", "trousse"); $logmdp = array ("moi", "thr");
n'est pas adapté pour les autres fichiers,
Quels autres fichiers ?
Pourquoi revenir à ton code ... alors qu'il est préférable d'utiliser celui que je t'ai proposé ?
Le mieux est d"adapter tes autres fichiers justement......
Après, si tu tiens absolument à garder ce code comme ça... et bien.. pour comprendre d'où vient le souci.. il faut commencer par afficher le contenu des variables via des print_r ( comme indiqué dans le lien que je t'ai donné pour débuguer ton code ).
Donc.. vu que ton souci se situe au niveau de l'affichage.. cela semble indiquer que le problème proviendrait de ta variable de session.
Fais un print de ta variable de session au début de ton code
echo "<pre>"; print_r($_SESSION); echo "</pre>";
et affiche nous sur le forum ce que ça te donne.
Génère? c'est-à-dire comment les variables sont créées? J'ai un autre fichier ou une personne créé son identifiant avec ses données personnelles. Après tous les renseignements arrivent dans ce tableau.
Le but est que la personne une fois inscrite puisse se reconnecter avec ses identifiants.
Il y a le formulaire puis le code de recherche que je te met
Le but est que la personne une fois inscrite puisse se reconnecter avec ses identifiants.
Il y a le formulaire puis le code de recherche que je te met
<?php if(!empty($_GET['id'])){ if($_GET['mdp'] != $_GET['MDP']){ ?> <script language = "javascript"> erreur(); </script> <?php }else if(!empty($_GET['nom']) AND !empty($_GET['prenom']) AND !empty($_GET['ville']) AND !empty($_GET['email']) AND !empty($_GET['tel']) AND $_GET['mdp'] == $_GET['MDP']) { ?> <script language = 'javascript'> cacher(event); </script> <?php $indic = count($_SESSION['nom']); $_SESSION['nom'][$indic] = $_GET["nom"]; $_SESSION['prenom'][$indic] = $_GET['prenom']; $_SESSION['ville'][$indic] = $_GET['ville']; $_SESSION['email'][$indic] = $_GET['email']; $_SESSION['tel'][$indic] = $_GET['tel']; $_SESSION['description'][$indic] = $_GET['description']; $_SESSION['log'][$indic] = $_GET['id']; $_SESSION['mdp'][$indic] = $_GET['mdp']; } } ?>
L'affichage des erreurs que tu me proposes ne me sert pas, puisque php ne signale aucune erreur lorsque les mots sont tronqués, ils s'affichent quand même.
Je vais regarder pour la suite du code.