Aide en php
RésoluJ aimerai savoir si vous ne connaisser pas un script qui demande le mon prenon, date de naissance et adresse mail et qui es stocker dans une base de donnée
je ne mis connait pas en php
merci de votra aide
Configuration: Windows Vista Internet Explorer 7.0
29 réponses
Un script PHP permettant de collecter nom, prénom, date de naissance et adresse mail via un formulaire et de stocker ces informations dans une base de données est discuté. Des réponses insistent sur l’importance de récupérer correctement les variables POST comme nom et mot de passe, d’éviter les erreurs classiques et de sécuriser la connexion et les requêtes SQL. D’autres conseils proposés incluent la vérification de l’identification utilisateur, la comparaison des mots de passe avec des requêtes SQL sécurisées, et l’éducation sur les fondamentaux du formulaire et du traitement côté serveur. En cas de besoin, des ressources pratiques évoquent des exemples étape par étape et des conseils sur la création de tables et de colonnes pour structurer l’enregistrement des données.
-
j ai reussi a créer un espace membre il fonctionne correctement
je te remercie pour toutes les infos que tu m a fourni c es gentil
Merci beaucoup -
bonjour,
le code suivant fonctionne sur un de mes sites
$log = $_POST['login'];
$psw = $_POST['pswd'];
include_once ('connect.php');
// verif utilisateur
$query = " select * from utilisateurs where login = '$log' and pswd = '$psw'";
$result = mysql_query($query);
// Vérification du résultat
// Ceci montre la requête envoyée à MySQL ainsi que l'erreur. Utile pour déboguer.
if (!$result) {
$message = 'Requête invalide : ' . mysql_error() . "\n";
$message .= 'Requête complète : ' . $query;
die($message);
}
-
bonjour,
audi68 voir message perso. -
Bonjour
Ca va mieu en forme de nouveau?
j ai essaié ce matin mais ca ne vas pas
j ai mis ca
$queryt = "select * from $table_user where nom=$email and pass=$passuser";
il me dit mot de passe incorect
la table s apelle table_user
la colonne nom est ou sont enregistrer les mail et passe le mot de passe
voila mes souci lol-
Bonsoir,
ja'i un gros problème car quand vous dites ça ne marche pas, on ne sait pas ce qui ne va pas.
si je résume, le formulaire est Ok
les variables sont bien transmises
la table est correcte alors où est le probléme.
vous dites j'ai mis ça, il faudrait tenir compte des messages précédents.
$queryt = "select * from $table_user where nom=$email and pass=$passuser";
mettez ceci
$queryt = "select * from $table_user where nom='".$email."' and pass='".$passuser.'";
-
-
ben j ai essaier avec et sans mais ca ne marche pas
non le mot de passe de la base est correct
non mais je me suis mal expliqué en haut
j ai 3 colonne dans ma table
id
nom avec l adresse mail
pass avec le mot de passe -
Bonjour
Ca va mieu en forme de nouveau?
j ai essaié ce matin mais ca ne vas pas
j ai mis ca
$queryt = "select * from $table_user where nom=$email and pass=$passuser";
il me dit mot de passe incorect
la table s apelle table_user
la colonne nom est ou sont enregistrer les mail et passe le mot de passe
voila mes souci lol -
oui le formulaire est fait ca c es juste
la 2eme etape aussi
je sais recuperer les donnée
mais c es apres ou ca coince avec la connection et la verification des champs
<?php
include("setup/settings2.php");
include("setup/lang.php");
$email = $_POST['email'];
$passuser = $_POST['passuser'];
$queryt = "select * from table $table_user nom=$email and pass=$passuser";
@mysql_connect($DBHost, $DBUser, $DBPass);
$resultt = @mysql_db_query($DBName, $queryt);
if ($resultt){$flag=0;
while ($r = mysql_fetch_array($resultt))
{
$pass2=$r["pass"];
echo "votre mail est $email ";
$ip = $_SERVER['REMOTE_ADDR']; echo "votre adresse IP est $ip ";
include("test2.php");
}}
if ($pass2!="$passuser"){echo"<span class=\"grostitre\">$c57<br><a href=\"indext.html\"> $c10</a></span>";}
if ($passuser==""){echo"<span class=\"grostitre\">$c58<a href=\"indext.html\"> $c10</a></span>";}
?>
le debut est juste non? -
et si on reprenait au départ en allant à l'eseentiel ?
première étape : on crée le formulaire.
c'est là on l'utilisateur saisit son nom (ou login ou admail et mot de passe).
il clique alors sur submit.
cette action envoit les données vers le second programme;
deuxième étape et deuxième programme :
on récupère les infos de l'étape
soit login admial et mot de passe avec comme nom ce qui est noté dan le paramètre name des input
exemple :
si name =nom
alors on a :
$nom = $_POST['nom'];
soit :
premier exercice : afficher les valeurs envoyées par le formulaire.
-
j ai essaier mais ca ne vas pas non plus
Peut etre que je ne connais pas le code pour verifier le mot de passe et l adresse des 2 champ
car moi je peut mettre n importe quel adresse il suffit que le mot de passe soit juste et il ouvre la page
donc mon code est faux-
la réponse a déjà été donnée. le mot de passe doit correspondre à un identifiant de connexion.
exemple : synthétique (ne pas recopier tel quel)
select * from table where nom=login and motedepasse= mot de passe
alors on a un retour positif et l'utilisateur est enregistré sinono l'utilistaeur n'est pas inscrit
--
-
-
Bonsoir
Je viens de bidouiller mais je n arrive pas a trouver
j ai essaier avec ca mais ca ne va pas non plu
$queryt = "SELECT passs FROM $table_user where nom='$passuser'"; -
Bonsoir,
il va falloir faire quelque chose car ce que je teste fonctionne.
exception fite des particularités : css et sgbd
premier fichier
<html>
<form action="testphp.php" method='post'>
<p class="grostitre" align="center">Bienvenue sur votre espace d'administration</p>
<table align="center" border="0" width="267">
<tr>
<td class="titre" width="97" nowrap>Adresse Mail </td>
<td width="160">
<input type="text" name="passuser" maxlength="50">
</td>
</tr>
<tr>
<td class="titre" width="97" nowrap>Mot de passe</td>
<td width="160">
<input type="password" name="motpasse" maxlength="20">
</td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" value="valider">
</td>
</tr>
</table>
</form>
</html>
second fichier
<?
//include("setup/settings2.php");
//include("setup/lang.php");
$passuser = $_POST['passuser'];
echo $passuser;
/*
$queryt = "SELECT * FROM $table_user where nom='$passuser'";
$queryt = "SELECT * FROM $table_user where pass='$motpasse'";
@mysql_connect($DBHost, $DBUser, $DBPass);
$resultt = @mysql_db_query($DBName, $queryt);
*/
if ($resultt){$flag=0;
while ($r = mysql_fetch_array($resultt))
{
$pass2=$r["pass"];
echo "votre mail est $passuser ";
$ip = $_SERVER['REMOTE_ADDR']; echo "votre adresse IP est $ip ";
include("test2.php");
}}
if ($pass2!="$passuser"){echo"<span class=\"grostitre\">$c57<br><a href=\"indext.html\"> $c10</a></span>";}
if ($passuser==""){echo"<span class=\"grostitre\">$c58<a href=\"indext.html\"> $c10</a></span>";}
?>
à demain
JL -
ok j ai regarder et rajouter la par celle qui manqauit
mais ca ne marche tjrs pas
pas de probleme bon appetit
merci de ton aide -
ca ne marche pas il me met erreur : Parse error: syntax error, unexpected $end in /mnt/164/sda/2/0/picobello/login/testphp.php on line 142
j ai peut etre oublier de fermer une parenthese?
<?
include("setup/settings2.php");
include("setup/lang.php");
echo "passuser =".$passuser;
$queryt = "SELECT * FROM $table_user where nom='$passuser'";
$queryt1 = "SELECT * FROM $table_user where pass='$motpasse'";
@mysql_connect($DBHost, $DBUser, $DBPass);
$resultt = @mysql_db_query($DBName, $queryt);
if ($resultt){$flag=0;
while ($r = mysql_fetch_array($resultt))
{
$pass2=$r["pass"];
$resultt1 = @mysql_db_query($DBName, $queryt1);
if ($resultt){$flag=0;
while ($r = mysql_fetch_array($resultt1))
{
$pass2=$r["pass"];
echo "votre mail est $passuser ";
$ip = $_SERVER['REMOTE_ADDR']; echo "votre adresse IP est $ip ";
include("test2.php");
}}
if ($pass2!="$passuser"){echo"<span class=\"grostitre\">$c57<br><a href=\"indext.html\"> $c10</a></span>";}
if ($passuser==""){echo"<span class=\"grostitre\">$c58<a href=\"indext.html\"> $c10</a></span>";}
?> -
j ai essaier mais il me met erreur Parse error: syntax error, unexpected ....
je le met ou excactement? -
quoi ici il n y a rien?tu parle de ces fichiers include("setup/settings2.php");
include("setup/lang.php"); ?
si dans settings2 il y a mes mot de passe et dans le 2eme
<?
$c1="Ajouter un utilisateur";
$c2="Mot de passe";
$c3="Commentaires";
$c4="Liste des utilisateurs";
$c5="Nom d'utilisateur";...........
mais bon ca ne sert pas a grand chose c es si tu veut le mettre en plusieurs langue
car mon site sera en 2 langue francais et italien
oui tu as raison je vient de tester
il suffit que je tape un bonmot de passe et je peut me connecter il ne verifie pas les 2 champs adresse mail et mot de passe
je peut tous recommencer je crois
merci giheller -
ici il n'y a rien
et ici testphp.php
<?
include("setup/settings2.php");
include("setup/lang.php");
$queryt = "SELECT * FROM $table_user where nom='$passuser'";
de plus si je traduis cette ligne :
selectionner tous les enegistrements del table user où le nom correspond au mot de passe !
étrange.
-
Merci de votre reponse giheller
Si je demande une adresse mail et un mot de passe
j ai du mal copier desolé
ci joint le fichier index
<form action="testphp.php" method='post'>
<p class="grostitre" align="center">Bienvenue sur votre espace d'administration</p>
<table align="center" border="0" width="267">
<tr>
<td class="titre" width="97" nowrap>Adresse Mail </td>
<td width="160">
<input type="text"name="passuser" maxlength="50">
</td>
</tr>
<tr>
<td class="titre" width="97" nowrap>Mot de passe</td>
<td width="160">
<input type="password"name="motpasse" maxlength="20">
</td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" value="valider">
</td>
</tr>
</table>
</form>
et ici testphp.php
<?
include("setup/settings2.php");
include("setup/lang.php");
$queryt = "SELECT * FROM $table_user where nom='$passuser'";
$queryt = "SELECT * FROM $table_user where pass='$motpasse'";
@mysql_connect($DBHost, $DBUser, $DBPass);
$resultt = @mysql_db_query($DBName, $queryt);
if ($resultt){$flag=0;
while ($r = mysql_fetch_array($resultt))
{
$pass2=$r["pass"];
echo "votre mail est $passuser ";
$ip = $_SERVER['REMOTE_ADDR']; echo "votre adresse IP est $ip ";
include("test2.php");
}}
if ($pass2!="$passuser"){echo"<span class=\"grostitre\">$c57<br><a href=\"indext.html\"> $c10</a></span>";}
if ($passuser==""){echo"<span class=\"grostitre\">$c58<a href=\"indext.html\"> $c10</a></span>";}
?>
Comment ca je n es rien dans la variable $passuser
merci de votre aide -
bonsoir,
Non, il y a des soucis.
1 il est étrange de demander un mot de passe et pas de login ou d'identification.
en général on demande les deux et on vérifie que le mot de passe donné correspond à celui qui est dans la table en fonction de l'identifiant.
2 dans testphp.php, vous n'avez rien dans la variable $passuser car elle n'est pas initialisée.
il faut la récupérer avec :
$passuser = $_POST['passuser'];
-
Bonjour
Apres un bon momment de lecture
j ai pu bidouiller un truc il fonctionne bien
mais j aimerais avoir votre avis si celui ci est bon?
je vous met les fichiers
fichier 1 nommé indext:
<form action="testphp.php" method='post'>
<p class="grostitre" align="center">Bienvenue sur votre espace d'administration</p>
<table align="center" border="0" width="267">
<tr>
<td class="titre" width="97" nowrap>Mot de passe</td>
<td width="160">
<input type="password"name="passuser" maxlength="20">
</td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" value="valider">
</td>
</tr>
</table>
</form>
fichier2 nommée testphp.php
<?
include("setup/settings2.php");
include("setup/lang.php");
$queryt = "SELECT * FROM $table_user where pass='$passuser'";
@mysql_connect($DBHost, $DBUser, $DBPass);
$resultt = @mysql_db_query($DBName, $queryt);
if ($resultt){$flag=0;
while ($r = mysql_fetch_array($resultt))
{
$pass2=$r["pass"];
echo "votre mail est $passuser";
$ip = $_SERVER['REMOTE_ADDR']; echo "votre adresse IP est $ip ";
include("test2.php");
}}
if ($pass2!="$passuser"){echo"<span class=\"grostitre\">$c57<br><a href=\"indext.html\"> $c10</a></span>";}
if ($passuser==""){echo"<span class=\"grostitre\">$c58<a href=\"indext.html\"> $c10</a></span>";}
?>
Vous en pensez quoi?
Merci de vos renseignement -
bonjour,
essaie ceci
$requete = "INSERT INTO valeurs (nom,prenom) VALUES ('".$nom."','".$prenom."')";
et comme dit arthezius se faire aider n'est pas faire faire son travail, mais comprendre ce que l'on fait.
le copier coller c'est bien mais ....................
- 1
- 2