[php] variable avec espace

Répondre
Mr.White
le 04/05/2004 à 11:46
Mr.White
Bonjours, je suis confronter à un problème d'espace dans mes variabme de session.

Ceci se passe sur les login des visiteur. Si leur login contient un espace, alors seul la première lettre du login de s'affiche lorsque je récupère la variable.

Ce que je fait:
C'est tout bête, à la connection j'enregistre son login dans une variable de session et ensuite je récuoère cette variable pour l'afficher sur les autres page affin de lui rappeler qui il est ;o)
( Et oui, je me soucis des visiteurs souffrant d'amnési ;o) )

Voici quelques bou de code :

if(!empty($_POST['login']) && !empty($_POST['pwd']) && !empty($_POST['valid_pwd']) )
{

$pwd = $_POST['pwd'];
$valid_pwd = $_POST['valid_pwd'];
$login = "".$_POST['login']."";

if($pwd == $valid_pwd )
{
$type_utilisateur = 0;
$requette = "insert into utilisateur values('".$login."','".$pwd."',".$type_utilisateur.")";
mysql_query($requette) or die('...');

// Connexion accepter
session_start();

$_SESSION['login'] = "".$login['login']."";
$_SESSION['pwd'] = $pwd;
$_SESSION['type_utilisateur'] = $type_utilisateur;

header ('location: ../../index.php');

}
}

Et voici quand je récupère la variable :


echo ("<BR>Vous êtez connecté en tant que :<br><BR><HR><BR><center><STRONG>".$_SESSION['login']."</STRONG></CENTER><br><HR><BR>");



Je me doute bien que ces morceau de code son assez galère à regarder. Je ne les ai mis que au cas où ... surtout que le problème n'est pas cibler donc je ne sais pas trop quel code vous fournire pour le moment. Mais ca vous donne une petite idée de ce que j'ai fait.

Il est toute fois possible que ce problème proviennent également de la taille de la variable puisque lorsque je met pas d'espace mais que je met environ 20 caractaire j'ai le même problème.

En réalité ce sont deux problèmes qui ont le même effet!

Merci !
Cultivons la bonne vibs !
LA GLOBULE
le 04/05/2004 à 11:49
LA GLOBULE
Ca m'a tout l'air d'etre un probleme d'html ton truc.

Tu n'as du mettre des " dans les attributs des boutons de ton forumulaire de connexion.

Genre il faut ecrire :
<input type="text" name="login" .....>
Au lieu de :
<input type=text name=login ...>
zebden
le 04/05/2004 à 13:14
zebden
deux choses :

_ quand on definit une variable par une variable , pas besoin de "". ($var = "".$truc."" => $var = $truc)
_ensuite je vois $login['login'] , euh jen'ai pas vu de tableau 'login' juste $login plus haut qui est egale a $_POST['login'].
zebdinou pour les intimes / Blog : http://www.zebden.fr
LA GLOBULE
le 04/05/2004 à 13:20
LA GLOBULE
(moi en fait, j'ai meme pas lu le code php smiley Des que j'ai lu que ca prenait que le premier mot, j'ai de suite pensé au formulaire html pas bien ecrit ^^)
Mr.White
le 04/05/2004 à 13:43
Mr.White
En faite j'ai trouver la solution tout seul comme un grand sauf que je ne sais plus précisément ce que c'était puisqu'il y a deux chose qui n'allait pas.

( Je tient à présicéqu'il ne m'afficher que la première LETTRE lorsque le mot était soit trop long soit avec espace)

1) La variable login était effectivement mal écrite il faut écrire "".$login."" Les "" me servent à ête certain que la variable sera une chaine caractère.

2) Dans mes formulaires, les champ de saisi n'était pas toujours à la bonne taille.

Je croit que l'erreur majeur était la varaibe login.


Merci de m'avoir porté tant d'attention.

(Une fois de plus c'est une erreur bête que je pouvais retrouvé moi même. Mais c'est peut-être aussi le faite de vous l'avoir expliqué qui m'a permis de la trouver. Alors merci Les FORUM.)
Cultivons la bonne vibs !
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours