Tom's Guide > Forum > Programmation > Script de connexion et d'inscription

Script de connexion et d'inscription

Forum Programmation : Script de connexion et d'inscription

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

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

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

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)

------------------------------ Rémunère ton site
Hosting Favicon
Clic pas ici
Répondre à Allstar27

c'est fait ensuite je fais quoi?

Répondre à jass922

Ensuite crée le fichier "config.php" pour ne pas à rechercher chaque fois les identifiants...

Code :
  1. <?php
  2. $host = "localhost";
  3. $bdd_user = "bdd_user";
  4. $pass = "bdd_pass";
  5. $bdd = "bdd";



Tu modifie biensure en mettant tes identifiants...

------------------------------ Rémunère ton site
Hosting Favicon
Clic pas ici
Répondre à Allstar27

Ensuite tu crée le formulaire d'inscription, dans la page de ton choix:

Code :
  1. <form method="post" action="register.php">
  2. Pseudo <input type="text" name="pseudo" /><br />
  3. Mot de passe <input type="password" name="pass" /><br />
  4. <input type="submit" value="Valider" />
  5. </form>

------------------------------ Rémunère ton site
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...

Répondre à jass922

Bon oki, fais ta page "register.php"

Code :
  1. if (empty($_POST['pseudo'])) {
  2. echo "Pas de pseudo";
  3. } else {
  4. if (empty($_POST['pass'])) {
  5. echo "Pas de passe";
  6. } else {
  7. require ('config.php');
  8. mysql_connect ("$host", "$bdd_user",  "$pass" );
  9. mysql_select_db ("$bdd" );
  10. $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
  11. $pass = md5(mysql_real_escape_string(htmlspecialchars($_POST['pass'])));
  12. $req = mysql_query ("INSERT into user VALUE ('', '".$pseudo."', '".$pass."')" );
  13. echo "Inscription ok";
  14. mysql_close();
  15. }
  16. }
  17. ?>


------------------------------ Rémunère ton site
Hosting Favicon
Clic pas ici
Répondre à Allstar27

je remplace quelque chose?
et ensuite je fais quoi?

Répondre à jass922

Non rien à remplacer...
Si ce n'est les echo "Pas de pseudo" que tu peux remplacer part:

Code :
  1. header ("Location: pagederreur.php" );



Après tu test, pour voir si tout s'inscris dans la table SQL...

------------------------------ Rémunère ton site
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

Répondre à jass922

Code :
  1. $req = mysql_query ("INSERT into user VALUE ('', '".$pseudo."', '".$pass."')" );



modifie VALUE par VALUES :)

Puis dis moi quel est le message d'erreur?

------------------------------ Rémunère ton site
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

Répondre à jass922

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

Répondre à jass922

Tu as copier/coller exactement se que j'ai écris?

------------------------------ Rémunère ton site
Hosting Favicon
Clic pas ici
Répondre à Allstar27

oui excatement...
peut etre que je m'y prends mal...

Répondre à jass922

Apparement pour le formulaire, tu n'as pas entrer la bonne url du fichier "register.php"

Code :
  1. <form method="post" action="register.php">



Et vérifie bien que ta page d'inscription s'appelle bien register.php

------------------------------ Rémunère ton site
Hosting Favicon
Clic pas ici
Répondre à Allstar27

Oui oui elle s'appelle bien comme ca...
tu vois pas ou est l'erreur?

Répondre à jass922

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...

------------------------------ Rémunère ton site
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();
}
}
?>

Répondre à jass922

Code :
  1. <?php
  2. $host = "localhost";
  3. $bdd_user = "bdd_user";
  4. $pass = "bdd_pass";
  5. $bdd = "bdd";
  6. ?>



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 :
  1. if (empty($_POST['pseudo'])) {
  2. header ("Location: pagederreur.php" );
  3. } else {
  4. if (empty($_POST['pass'])) {
  5. echo "Pas de passe";
  6. } else {



modifie également echo "pas de passe"; par header ("Location: pagederreur.php" ); ca sera plus logique...

Et réessaye!

------------------------------ Rémunère ton site
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

Répondre à jass922

au fait ca veut dire quoi location....?

Répondre à jass922

Bizzare,

Pour config.php essaye un peu ça...

Code :
  1. <?php
  2. $host = 'localhost';
  3. $bdd_user = 'bdd_user';
  4. $pass = 'bdd_pass';
  5. $bdd = 'bdd';



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
------------------------------ Rémunère ton site
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

Répondre à jass922

quand ca marche on est censé trouver quoi?

Répondre à jass922

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 = "";

------------------------------ Rémunère ton site
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?

Répondre à jass922

il y a une requete qui apparait

SELECT *
FROM `user`
LIMIT 0 , 30

et apres jvois que ca

Répondre à jass922

Euh non c'est pas ça...
clic sur la table user, puis sur l'onglet "Afficher"

------------------------------ Rémunère ton site
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?

Répondre à jass922

Ca servira a rien de me l'envoyé... mais pourquoi tu travail en local?

------------------------------ Rémunère ton site
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?

Répondre à jass922

je sais pas je comprend pas pourquoi le script fonctionne pas... alors qu'il fonctionne sur plusieur site que j'ai déjà fais...

------------------------------ Rémunère ton site
Hosting Favicon
Clic pas ici
Répondre à Allstar27
Tom's Guide > Forum > Programmation > Script de connexion et d'inscription
Aller à :

Il y a 1448 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens