djgje
Messages postés20Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention 4 mai 2010
-
24 déc. 2005 à 11:55
kankrelune
Messages postés1293Date d'inscriptionmardi 9 novembre 2004StatutMembreDernière intervention21 mai 2015
-
25 déc. 2005 à 22:16
Salut a tous!!!
Voila J'EN AI MARRE!!!!Ca fait 1 semaine que j'essaie par des tutos et tout le bordel de faire un formulaire d'inscription pour mon site mais j'arrive po !!! La page html arrive bien je rentre les données et tout puis elles passent par la page php pour arriver sur ma base de données!!! Le probleme c'est que la ligne qu'il enregistre (car il en crée une quend même --> connexion ok) est vierge!!!!Voici mes 2 codes. La table est tbl_user et les champs sont : id(auto increment), nom, prenom, pseudo, login, pwd, email, pg_perso ! Merci d'avance!!!Je n'ai jamsi fait de php ni de mysql avant ca!! ^^ Voici mes codes:
<html>
<title>
Inscription
</title>
<form method="post" action="inscription.php">
Nom :
Prénom :
Pseudo :
Login :
Mot de passe :
Email :
Page perso :
</form>
</html>
<?
//connexion à la base
$db = mysql_connect('xxxxxx','xxxxxxxx','xxxxxxxx') or die ('erreur de connexion');
//sélection de la base
mysql_select_db('xxxxxxxxx',$db);
//J'envoie la requête d'insertion des données
mysql_query("INSERT INTO tbl_user (id,nom,prenom,pseudo,login,pwd,email,pg_perso) VALUES (' ','$nom','$prenom','$pseudo','$login','$pwd','$email','$pg_perso')");
//Je récupère les données du formulaire
echo 'Bonjour $prenom , merci pour votre inscription et bienvenue sur le site de DjGje. Vous pouvez maintenant vous logger normalement!';
FhX
Messages postés2350Date d'inscriptionmercredi 13 octobre 2004StatutMembreDernière intervention18 avril 20153 24 déc. 2005 à 12:53
"en principe pas besoin des $_POST" Erreur la plus visible sur un paquet de codes... Il FAUT utiliser $_POST[], autrement c'est la voie ouvert à tout et à n'importe quoi !
tu peux faire des or die() avec mysql_query aussi !
djgje
Messages postés20Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention 4 mai 2010 24 déc. 2005 à 13:05
ben voila!!!
Tout d'abord merci a tous!!!
C'était en effet le post au lieu de POST!!!!
Je ne savais pas désolé!!!C'est en se cassant la gueule qu'on apprend à marcher non?!
Voila donc le formulaire marche, il inscrit tout dans ma base de données mais le problème c'est la page qu'il écrit après:
//Je récupère les données du formulaire
echo 'Bonjour $prenom , merci pour votre inscription et bienvenue sur le site de DjGje. Vous pouvez maintenant vous logger normalement!';
Là il ne m'écrit pas le prénom de l'inscrit comme je voudrais mais laisse $prenom .
Si quelqu'un pouvait me resoudre ce petit probleme!!!
djgje
Messages postés20Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention 4 mai 2010 24 déc. 2005 à 13:12
c bon sa marche!!!!
Je dois vraiment vous faire chier la!!
mais meme si c'est enregistré je n'arrive pas à me logger!!!!
voici mon code:
<?
$db = mysql_connect('xxxxxxx','xxxxxxx','xxxxxxx') or die ('erreur de connexion');
//sélection de la base
mysql_select_db('xxxxxxx',$db);
if(isset($_POST) && !empty($_POST['login']) && !empty($_POST['pass'])) {
extract($_POST);
// on recupère le password de la table qui correspond au login du visiteur
$sql = "select pwd from tbl_user where login='".$login."'";
$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());
$data = mysql_fetch_assoc($req);
}
if($data['pwd'] != $pass) {
echo 'Mauvais login / password ou le compte n'existe pas encore!Merci de recommencer ou de vous inscrire!
' ;
include('login.htm'); // On inclus le formulaire d'identification
exit;
}
else {
session_start();
$_SESSION['login'] = $login;
echo 'Bienvenue sur le site de DjGje!';
// ici vous pouvez afficher un lien pour renvoyer
// vers la page d'accueil de votre espace membres
}
}
else {
echo 'Vous avez oublié de remplir un champ.
';
include('login.htm'); // On inclut le formulaire d'identification
exit;
}
FhX
Messages postés2350Date d'inscriptionmercredi 13 octobre 2004StatutMembreDernière intervention18 avril 20153 24 déc. 2005 à 13:19
extract($_POST);
Rahhhh !!! Jvais m'énerver la !
SI ON DIS QU'IL FAUT GARDER LA SUPERGLOBAL $_POST[], TU CROIS QUE C'EST POUR Y FAIRE UN EXTRACT DERRIERE ???!!!!!!!!!!!!!!!!
"//Je récupère les données du formulaire
echo 'Bonjour $prenom ,
merci pour votre inscription et bienvenue sur le site de DjGje. Vous
pouvez maintenant vous logger normalement!';"
Il faut utiliser la concaténation :
echo 'Bonjour '.$prenom.', merci pour votre ....... ';
FhX
Messages postés2350Date d'inscriptionmercredi 13 octobre 2004StatutMembreDernière intervention18 avril 20153 24 déc. 2005 à 13:34
Bah tu utilises le dictionnaire intelligent google, ou alors via www.php.net :o
extract() est déconseillé car il vaut mieux utiliser $_POST[$tavariable] plutot que $tavariable DIRECTEMENT. Si on a fait ca pour PHP4, c'est pas pour rien niveau sécurité !
Concaténation : base de la programmation PHP.
$var = 'moi';
echo 'Salut $var'; // Affiche Salut $var
echo "Salut $var"; // Affiche Salut moi (déconseillé)
echo 'Salut '.$var; // Affiche Salut moi (conseillé)
echo "Salut ".$var; // Affiche Salut moi (+ ou - conseillé)
FhX
Messages postés2350Date d'inscriptionmercredi 13 octobre 2004StatutMembreDernière intervention18 avril 20153 25 déc. 2005 à 11:45
mysql_real_escape_string() échappe d'autres caractères que addslashes() ne fait pas. Et pis d'abord, si tu te fais une fonction d'échappement automatique, il ne devrait pas y avoir de problème au niveau de la longueur à taper hein :o
Regarde la petite fonction que j'ai faite vite fait, y'a pas besoin que je tape mysql_real_escape_string() à chaque fois ! :)
djgje
Messages postés20Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention 4 mai 2010 25 déc. 2005 à 13:21
Merci à tous d'avoir passé un peu de votre temps à résoudre mon problème!!!!
Vous êtes des fous de programmation vous non??!!!!!
Franchement ca fait plaisir de voir que les gens peuvent s'interresser à d'autres choses que les leurs et qu'ils peuvent encore penser aux autres!!!!
kankrelune
Messages postés1293Date d'inscriptionmardi 9 novembre 2004StatutMembreDernière intervention21 mai 2015 25 déc. 2005 à 16:40
Un block de condition n'est pas fermé ou il manque une ; après une
instruction... si tu mettais le code on pourrait peut être t'aider mais
là comme ça ce ne sont que des suppositions... .. .