Variables globales

blugeen
Invité n'ayant pas de compte PHPfrance

05 juil. 2006, 18:52

Bonjour,

J'ai créé un formulaire, dont je recupere les données, une fois avoir réussi a faire fonctionner ceci, j'ai voulu améliorer la vérifications des information, en commencant par vérifier si les champs étaient vides ou non. J'ai réussi également a faire ceci, mais le problème c'est que je voulai que le message indiquant que des champs était vides, s'affiche dnas la même page que le formulaire (car la vérification se fait dans un autre fichier php effectué apres le clique sur le bouton OK du formulaire). J'ai donc ajouté un morceau de php dans la page du formulaire quir essemble a ceci :
<?php
	if($vide=='1')
		{
			echo "Champs vides.";
		}
?>
et $vide étant une variable situé dans le code executé apres un clique sur OK, et se mettant a '1' si un champs en detecté comme vide. Le problème, c'est que ce code me fait une erreur, car lors de l'arrivé sur la page inscription $vide n'a pas encore été déclaré, j'ai donc essayé avec isset, mais aucun effet, apres j'ai essayé d'utiliser les variables globales, car le pense également que mon code ne peut pas marcher car mes variables ne sont pas globales. Bref, je suis perdu :(

si vous pouviez m'aider, merci

ViPHP
ViPHP | 3607 Messages

05 juil. 2006, 19:10

essaye donc de regarder les sessions, ce sont des variables superglobales, où tu pourrais stocker la valeur 1 ou 0 pour tes champs remplis ou non :wink:

Mammouth du PHP | 19672 Messages

05 juil. 2006, 19:10

fais donc un tour dans la FAQ, il y a un sujet sur la validation de formulaires exprès pour ça.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

blugeen
Invité n'ayant pas de compte PHPfrance

06 juil. 2006, 09:57

merci j'ai réussi :D

Maintenant j'ai un autre probleme, ceci n'a pas l'air de fonctionner :
<?php
<form id="form1" name="form1" method="post" action='addinsc.php?base='.$_GET['base']> //erreur ici
?>
le but étant que l'action du formulaire vari en fonction d'une variable passé en URL. (j'obtiens une parse error).

j'ai également un probleme ici (autre fichier) :
if(empty($nom) OR empty($prenom) OR empty($age) OR empty($adresse) OR empty($codepostal) OR empty($ville) OR empty($telephone) OR empty($email) OR empty($pseudo) OR empty($mdp))
    {
	echo header('Location: inscription.php?base='.$_GET['base'].'&prob=vide'); //erreur ici
    }
ici le but étant de garder la premiere variable passé en URL et d'en rajouter une (tout ceci sur une autre page), ici il me dit qu'une variable est attendu.

merci

blugeen
Invité n'ayant pas de compte PHPfrance

06 juil. 2006, 10:53

j'ai réglé le deuxieme probleme mais un nouveau est apparu :
$sqle = 'SELECT id FROM '.$_GET['base'].'_id WHERE email='.$email;
ca me fait cette erreur : Erreur SQL !SELECT id FROM users_id WHERE email=[email protected]
Erreur de syntaxe près de '@hotmail.com' à la ligne 1

alors que la meme ligne pour le pseudo fonctionne parfaitement

Invité
Invité n'ayant pas de compte PHPfrance

06 juil. 2006, 10:58

ah en faite ca marche seulement avec des nombres le pseudo

ViPHP
ViPHP | 3607 Messages

06 juil. 2006, 11:30

essaye avec

Code : Tout sélectionner

'SELECT id FROM '.$_GET['base'].'_id WHERE email LIKE '.$email;
tu peut rajouter un convert() pour l'email

Eléphant du PHP | 197 Messages

06 juil. 2006, 13:07

Attention pour les requetes sql il faut bien encadrer la valeur recherchée.

Exemple : select * from table where id ='truc'

en php ça fera
$val="truc";
$sql="from table where id ='".$val."'";

Invité
Invité n'ayant pas de compte PHPfrance

06 juil. 2006, 16:53

oui merci là était mon erreur.