Script de connexion et d'inscription
Forum Programmation : Script de connexion et d'inscription
Bonjour,
je n'avais pas était tres explicite dans ma demande la dernière fois.
En fait j'ai un projet a rendre pour la fin de l'année ( je suis en terminale stg option gsi)
en gros c'est une entreprise de pret a porter; FRINGUES2 qui veut que ses clients puissent s'authentifier ( login+ mot de passe) ou s'ils ne sont pas inscrit qu'ils puissent s'inscrire.On a une base de données qui s'appelle FRINGUES2 avec des clients et on a utilisé un client type "clifringues"
Donc j'ai essayé de faire des formulaires en php mais en testant hier j'ai vu que ca n'avait pas marché des la connexion . Aujourd'hui j'ai donc essayé d'en faire d'autres, et j'aimerai qu'on me corrige:
le formulaire de connexion:
<?php
// Paramètres de connexion à la base de données
$BD_serveur = "localhost";
$BD_utilisateur = "clifringues";
$BD_motDePasse = "toto";
$BD_base = "FRINGUES2_BDD";
$id = $_POST["id"];
$motDePasse = $_POST["motdepasse"];
@mysql_pconnect($BD_serveur, $BD_utilisateur, $BD_motDePasse)
or die("Impossible de se connecter au serveur de bases de données." );
@mysql_select_db($BD_base)
or die("Impossible de se connecter à la base de données." );
$requete = "SELECT * FROM CLIENT ";
$result = mysql_query($requete);
if ($enreg = mysql_fetch_array($result)) {
// Si une ligne a été trouvée c'est que le couple
// (identifant, mot de passe) est valide
echo "NOM : " . $enreg["nom"] . "<br/>";
echo "PRENOM : " . $enreg["prenom"] . "<br/>";
echo "ADRESSE : " . $enreg["adresse"] . "<br/>";
} else {
echo "Paramètres de connexion invalides<br/>";
}
?>
le formulaire d'inscription:
<?php
// Parametres de connexion à la base de données
$BD_serveur = "localhost";
$BD_utilisateur = "clifringues";
$BD_motDePasse = "toto";
$BD_base = "FRINGUES2_BDD";
// Récupération des paramètres POST
$id = $_POST["idcl"];
$prenom = $_POST["promcl"];
$nom = $_POST["nomcl"];
$adresse = $_POST["adrscl"];
$cp = $_POST["cpcl"];
$ville = $_POST["villecl"];
$telephone = $_POST["telcl"];
$email = $_POST["mailcl"];
echo "Bonjour ".stripSlashes($prenom)." ".stripSlashes($nom).",<br/>";
@mysql_pconnect($BD_serveur, $BD_utilisateur, $BD_motDePasse)
or die("Impossible de se connecter au serveur de bases de données." );
@mysql_select_db($BD_base)
or die("Impossible de se connecter à la base de données." );
$requete = "INSERT INTO CLIENT (idcl, nom, prenom, adresse, cp, ville, telephone, email,)
VALUES ('$id', '$nom','$prenom','$adresse', '$cp', '$telephone' '$email')";
$result = @mysql_query($requete);
if (!$result) {
echo "L'enregistrement de vos données a échoué. Essayez plus tard.".
"Et demandez à l'administrateur de vérifier l'existence de la ".
"table CLIENT ;-)<br />";
} else {
echo "Félicitations. Vous êtes desormais un nouveau client!".
"<br />";
}
?>
merci d'avance
Bonjour,
Déjà petit conseil, dépèche toi d'éditer ton message, et enlevé tes identifiants de connexion SQL...
Bon si tu veux on va faire ça en plusieurs étape...
Commence pas créer une table que tu nomme "user" avec 3 champs:
id(int) auto_increment et clé primaire
pseudo varchar(255)
pass varchar (32)
Hosting Favicon
Clic pas ici
Répondre à Allstar27
c'est fait ensuite je fais quoi?
Ensuite crée le fichier "config.php" pour ne pas à rechercher chaque fois les identifiants...
Code :
|
Tu modifie biensure en mettant tes identifiants...
Hosting Favicon
Clic pas ici
Répondre à Allstar27
c'est bon...ensuite?
Ensuite tu crée le formulaire d'inscription, dans la page de ton choix:
Code :
|
Hosting Favicon
Clic pas ici
Répondre à Allstar27
ca je l'ai deja fais...ms moi c'est mes codes qui marchent pas...ceux pr la connexion et ceux pr l'inscription...jai tout donné dans mon premier message...
Bon oki, fais ta page "register.php"
Code :
|
Hosting Favicon
Clic pas ici
Répondre à Allstar27
je remplace quelque chose?
et ensuite je fais quoi?
Non rien à remplacer...
Si ce n'est les echo "Pas de pseudo" que tu peux remplacer part:
Code :
|
Après tu test, pour voir si tout s'inscris dans la table SQL...
Hosting Favicon
Clic pas ici
Répondre à Allstar27
peut etre que je m'y prends mal ms ca ne marche pas ca me fait des erreurs
jai mis importer ds ma base de donnée jai mis le script de connexion ca me donne une case identifiant et mot de passe mais qd je rentre quelque chose ca me fait un msg d'erreur et pour le register.php on me dit qu'il y a des erreurs
je comprends plus rien
Code :
|
modifie VALUE par VALUES
Puis dis moi quel est le message d'erreur?
Hosting Favicon
Clic pas ici
Répondre à Allstar27
j'ai remplacé mais ca m'a donné ca comme msg d'erreur:
Erreur
Il semble qu'il y ait une erreur dans votre requête SQL. Le message ci-bas peut vous aider à en trouver la cause.
ERROR: Ponctuation invalide @ 1
STR: <?
SQL: <?php
if (empty($_POST['pseudo'])) {
echo "Pas de pseudo"
} else {
if (empty($_POST['pass'])) {
echo "Pas de passe";<?php
if (empty($_POST['pseudo'])) {
echo "Pas de pseudo"
} else {
if (empty($_POST['pass'])) {
echo "Pas de passe";<?php
if (empty($_POST['pseudo'])) {
echo "Pas de pseudo"
} else {
if (empty($_POST['pass'])) {
echo "Pas de passe";<?php
if (empty($_POST['pseudo'])) {
echo "Pas de pseudo"
} else {
if (empty($_POST['pass'])) {
echo "Pas de passe";<?php
if (empty($_POST['pseudo'])) {
echo "Pas de pseudo"
} else {
if (empty($_POST['pass'])) {
echo "Pas de passe";<?php
if (empty($_POST['pseudo'])) {
echo "Pas de pseudo"
} else {
if (empty($_POST['pass'])) {
echo "Pas de passe";<?php
if (empty($_POST['pseudo'])) {
echo "Pas de pseudo"
} else {
if (empty($_POST['pass'])) {
echo "Pas de passe";<?php
if (empty($_POST['pseudo'])) {
echo "Pas de pseudo"
} else {
if (empty($_POST['pass'])) {
echo "Pas de passe";<?php
if (empty($_POST['pseudo'])) {
echo "Pas de pseudo"
} else {
if (empty($_POST['pass'])) {
echo "Pas de passe";<?php
if (empty($_POST['pseudo'])) {
echo "Pas de pseudo"
} else {
if (empty($_POST['pass'])) {
echo "Pas de passe";<?php
if (empty($_POST['pseudo'])) {
echo "Pas de pseudo"
} else {
if (empty($_POST['pass'])) {
echo "Pas de passe";
requête SQL:
<?php if (empty($_POST['pseudo'])) { echo "Pas de pseudo" } else { if (empty($_POST['pass'])) { echo "Pas de passe";
MySQL a répondu:
#1064 - Erreur de syntaxe près de '<?php
if (empty($_POST['pseudo'])) {
echo "Pas de pseudo"
} else {
if (empt' à la ligne 1
et pour la connexion qd je rentre un pseudo + mdp ca me donne ca :
Object not found!
The requested URL was not found on this server. The link on the referring page seems to be wrong or outdated. Please inform the author of that page about the error.
If you think this is a server error, please contact the webmaster.
Error 404
127.0.0.1
05/08/09 20:05:57
Apache/2.2.11 (Win32) PHP/5.2.8
Tu as copier/coller exactement se que j'ai écris?
Hosting Favicon
Clic pas ici
Répondre à Allstar27
oui excatement...
peut etre que je m'y prends mal...
Apparement pour le formulaire, tu n'as pas entrer la bonne url du fichier "register.php"
Code :
|
Et vérifie bien que ta page d'inscription s'appelle bien register.php
Hosting Favicon
Clic pas ici
Répondre à Allstar27
Oui oui elle s'appelle bien comme ca...
tu vois pas ou est l'erreur?
Erreur 404 c'est qu'il n'a pas trouvé la page que tu appelles...
Fais voir ce que tu as fais pour l'instant...
Hosting Favicon
Clic pas ici
Répondre à Allstar27
D'accord alors:
- config.php
<?php
$host = "localhost";
$bdd_user = "bdd_user";
$pass = "bdd_pass";
$bdd = "bdd";
?>
- connexion.php
<html>
<body>
<form method="post" action="register.php">
Pseudo <input type="text" name="pseudo" /><br />
Mot de passe <input type="text" name="pass" /><br />
<input type="submit" value="Valider" />
</form>
</body>
</html>
-register.php
<?php
if (empty($_POST['pseudo'])) {
header ("Location: pagederreur.php" );
} else {
if (empty($_POST['pass'])) {
echo "Pas de passe";
} else {
require ('config.php');
mysql_connect ("$host", "$bdd_user", "$pass" );
mysql_select_db ("$bdd" );
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
$pass = md5(mysql_real_escape_string(htmlspecialchars($_POST['pass'])));
$req = mysql_query ("INSERT into user VALUES ('', '".$pseudo."', '".$pass."')" );
echo "Inscription ok";
mysql_close();
}
}
?>
Code :
|
Faut pas refermer la ?> puisque le code à une suite... et n'oublie pas de mettre tes identifiant à la place...
connexion.php , tu n'est pas obligé de l'appeller xxx.php puisqu'elle ne possède pas de php...
Code :
|
modifie également echo "pas de passe"; par header ("Location: pagederreur.php" ); ca sera plus logique...
Et réessaye!
Hosting Favicon
Clic pas ici
Répondre à Allstar27
Ca m'a encore mis des erreus alors pour register.php ca ma mis ca:
Erreur
Il semble qu'il y ait une erreur dans votre requête SQL. Le message ci-bas peut vous aider à en trouver la cause.
ERROR: Ponctuation invalide @ 1
STR: <?
SQL: <?php
if (empty($_POST['pseudo'])) {
header ("Location: pagederreur.php" ) ;<?php
if (empty($_POST['pseudo'])) {
header ("Location: pagederreur.php" ) ;<?php
if (empty($_POST['pseudo'])) {
header ("Location: pagederreur.php" ) ;<?php
if (empty($_POST['pseudo'])) {
header ("Location: pagederreur.php" ) ;<?php
if (empty($_POST['pseudo'])) {
header ("Location: pagederreur.php" ) ;<?php
if (empty($_POST['pseudo'])) {
header ("Location: pagederreur.php" ) ;<?php
if (empty($_POST['pseudo'])) {
header ("Location: pagederreur.php" ) ;<?php
if (empty($_POST['pseudo'])) {
header ("Location: pagederreur.php" ) ;<?php
if (empty($_POST['pseudo'])) {
header ("Location: pagederreur.php" ) ;<?php
if (empty($_POST['pseudo'])) {
header ("Location: pagederreur.php" ) ;<?php
if (empty($_POST['pseudo'])) {
header ("Location: pagederreur.php" ) ;<?php
if (empty($_POST['pseudo'])) {
header ("Location: pagederreur.php" ) ;
requête SQL:
<?php if (empty($_POST['pseudo'])) { header ("Location: pagederreur.php" ) ;
MySQL a répondu:
#1064 - Erreur de syntaxe près de '<?php
if (empty($_POST['pseudo'])) {
header ("Location: pagederreur.php" )' à la ligne 1
[ Retour ]
et pour config.php
Erreur
Il semble qu'il y ait une erreur dans votre requête SQL. Le message ci-bas peut vous aider à en trouver la cause.
ERROR: Ponctuation invalide @ 1
STR: <?
SQL: <?php
$host = "localhost";<?php
$host = "localhost";<?php
$host = "localhost";<?php
$host = "localhost";<?php
$host = "localhost";<?php
$host = "localhost";
requête SQL:
<?php $host = "localhost";
MySQL a répondu:
#1064 - Erreur de syntaxe près de '<?php
$host = "localhost"' à la ligne 1
apparemment c'est des erreurs de syntaxe
si je comprends bien les messages mais je ne vois pas ou...:s
au fait ca veut dire quoi location....?
Bizzare,
Pour config.php essaye un peu ça...
Code :
|
Ton hébergeur utilise quelle version de PHP?
Edit: header() permet de spécifier l'en-tête HTTP
Message édité par Allstar27 le 08-05-2009 à 20:52:32
Hosting Favicon
Clic pas ici
Répondre à Allstar27
Encore une fois ca me met une erreur de syntaxe au niveau de $host
c'est easy php 3.0
quand ca marche on est censé trouver quoi?
Tu utilise easy php... tu n'as pas d'hébergeur alors...
Normal que la connexion fonctionne pas, vu qu'est c'est du local!
$bdd_user = "root";
$pass = "";
Hosting Favicon
Clic pas ici
Répondre à Allstar27
j'ai essayé un truc ac root comme vous m'avez dit et lors de l'importation ils demandent ils demandent le format du fichier importés et j'avais pas fais attention que depuis tout a l'heure c'était cocher sur sql alors j'ai essayé en format CSV via LOAD DATA et ca ma mis :
L'importation s'est terminée avec succès, 1 requêtes exécutées.
c'est bon?
si c'est le cas je dois faire koi apres?
Ca s'inscrit dans la BDD?
Hosting Favicon
Clic pas ici
Répondre à Allstar27
il y a une requete qui apparait
SELECT *
FROM `user`
LIMIT 0 , 30
et apres jvois que ca
Euh non c'est pas ça...
clic sur la table user, puis sur l'onglet "Afficher"
Hosting Favicon
Clic pas ici
Répondre à Allstar27
je peux tenvoyer ma base de donnée pr que tu voies ce qui va ou pas?
Ca servira a rien de me l'envoyé... mais pourquoi tu travail en local?
Hosting Favicon
Clic pas ici
Répondre à Allstar27
parce que c'est comme ca qu'on nous a appris...
il y a pas de solution alors a mon probleme?
je sais pas je comprend pas pourquoi le script fonctionne pas... alors qu'il fonctionne sur plusieur site que j'ai déjà fais...
Hosting Favicon
Clic pas ici
Répondre à Allstar27
Il y a 1448 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Allstar27