Besoin d'aide pour script php
Fermé
paulo93700
Messages postés
35
Date d'inscription
jeudi 21 février 2008
Statut
Membre
Dernière intervention
21 décembre 2008
-
21 févr. 2008 à 01:37
paulo93700 Messages postés 35 Date d'inscription jeudi 21 février 2008 Statut Membre Dernière intervention 21 décembre 2008 - 23 févr. 2008 à 03:49
paulo93700 Messages postés 35 Date d'inscription jeudi 21 février 2008 Statut Membre Dernière intervention 21 décembre 2008 - 23 févr. 2008 à 03:49
A voir également:
- Besoin d'aide pour script php
- Script vidéo youtube - Guide
- Easy php - Télécharger - Divers Web & Internet
- Ghost script - Télécharger - Polices de caractères
- Script bat - Guide
- Microsoft activation script - Accueil - Windows
5 réponses
a mon avis tu devrait modifié ton deuxième script, avec ça ça devrait mieux marché.
<?php // si e-mail existe déjà
mysql_connect("localhost", "root", "");
mysql_select_db("clic-un-club");
$reponse = mysql_query("SELECT * FROM prospect where e-mail='".$email."'");
if (mysql_num_rows($reponse)) //si il existe une email identique sur la BDD
{
echo "email déjà utiliser";
}
else // sinon
{
echo "suite de l'inscription";
}
// Déconnexion de MySQL
mysql_close();
?>
Au lieux de vérifié si il existe un email pareille dans la bdd tu regarde combien il en existe de pareille, et si il n'y en a au moins un tu dit que l'email est déjà utilisé.
<?php // si e-mail existe déjà
mysql_connect("localhost", "root", "");
mysql_select_db("clic-un-club");
$reponse = mysql_query("SELECT * FROM prospect where e-mail='".$email."'");
if (mysql_num_rows($reponse)) //si il existe une email identique sur la BDD
{
echo "email déjà utiliser";
}
else // sinon
{
echo "suite de l'inscription";
}
// Déconnexion de MySQL
mysql_close();
?>
Au lieux de vérifié si il existe un email pareille dans la bdd tu regarde combien il en existe de pareille, et si il n'y en a au moins un tu dit que l'email est déjà utilisé.
paulo93700
Messages postés
35
Date d'inscription
jeudi 21 février 2008
Statut
Membre
Dernière intervention
21 décembre 2008
1
21 févr. 2008 à 17:20
21 févr. 2008 à 17:20
Je te remercie Galoo ;
Mais il y a un souci apparemment :
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\wamp\www\Clic-un-club.com\envoi.php on line 43
suite de l'inscription
Sur la ligne:
if (mysql_num_rows($reponse))
Je ne voie pas vraiment le problème
(en même temps je suis qu’un débutant)
script:
<?php // si e-mail existe déjà
mysql_connect("localhost", "root", "");
mysql_select_db("clic-un-club");
$reponse = mysql_query("SELECT * FROM prospect where e-mail='".$email."'");
if (mysql_num_rows($reponse)) //si il existe une email identique sur la BDD
{
echo "email déjà utiliser";
}
else // sinon
{
echo "suite de l'inscription";
}
// Déconnexion de MySQL
mysql_close();
?>
Merci d'avance pour vos réponse
Mais il y a un souci apparemment :
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\wamp\www\Clic-un-club.com\envoi.php on line 43
suite de l'inscription
Sur la ligne:
if (mysql_num_rows($reponse))
Je ne voie pas vraiment le problème
(en même temps je suis qu’un débutant)
script:
<?php // si e-mail existe déjà
mysql_connect("localhost", "root", "");
mysql_select_db("clic-un-club");
$reponse = mysql_query("SELECT * FROM prospect where e-mail='".$email."'");
if (mysql_num_rows($reponse)) //si il existe une email identique sur la BDD
{
echo "email déjà utiliser";
}
else // sinon
{
echo "suite de l'inscription";
}
// Déconnexion de MySQL
mysql_close();
?>
Merci d'avance pour vos réponse
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
21 févr. 2008 à 18:41
21 févr. 2008 à 18:41
Bonsoir,
Il y a des grosses erreurs dans cette partie:
if (mysql_num_rows($reponse)) //si il existe une email identique sur la BDD
{
echo "email déjà utiliser";
}
else // sinon
{
echo "suite de l'inscription";
}
On ne met pas les commentaires entre la fonction et { !!!!
Ensuite qu'il y ait des résultats correpondants au mail ou pas mysql_num_rows sera toujours true (même égal à 0)
Alors essayes:
Il y a des grosses erreurs dans cette partie:
if (mysql_num_rows($reponse)) //si il existe une email identique sur la BDD
{
echo "email déjà utiliser";
}
else // sinon
{
echo "suite de l'inscription";
}
On ne met pas les commentaires entre la fonction et { !!!!
Ensuite qu'il y ait des résultats correpondants au mail ou pas mysql_num_rows sera toujours true (même égal à 0)
Alors essayes:
if (mysql_num_rows($reponse)>0){ //si il existe une email identique sur la BDD echo "email déjà utilisé"; } else{ // sinon (même remarque) echo "suite de l'inscription"; }
cwadmin
Messages postés
9
Date d'inscription
jeudi 20 décembre 2007
Statut
Membre
Dernière intervention
22 février 2008
>
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
21 févr. 2008 à 18:58
21 févr. 2008 à 18:58
personnellement alain , le script que j'ai fournit en bas de page est en parfait état de fonctionnement, même tester ... j'avé un peu de temps devant moi ^^
Alors pour les commentaires entre les fonctions oui c'est pas propre mais sa marche, sa n'a rien à voir.
L'histoire du mysqlnumrow qui est toujours true c'est totallement faux ... si tu cale un mysqlfetchassoc entre deux.
voilà ... bref ... et pour une tel réponse t'aurai pu répondre à la suite du topic comme moi je l'ai fais ^^ au lieu de casser l'ordre des réponses :P
Alors pour les commentaires entre les fonctions oui c'est pas propre mais sa marche, sa n'a rien à voir.
L'histoire du mysqlnumrow qui est toujours true c'est totallement faux ... si tu cale un mysqlfetchassoc entre deux.
voilà ... bref ... et pour une tel réponse t'aurai pu répondre à la suite du topic comme moi je l'ai fais ^^ au lieu de casser l'ordre des réponses :P
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
>
cwadmin
Messages postés
9
Date d'inscription
jeudi 20 décembre 2007
Statut
Membre
Dernière intervention
22 février 2008
21 févr. 2008 à 20:51
21 févr. 2008 à 20:51
He bien y a du boulot !
cwadmin
Messages postés
9
Date d'inscription
jeudi 20 décembre 2007
Statut
Membre
Dernière intervention
22 février 2008
21 févr. 2008 à 18:05
21 févr. 2008 à 18:05
ton problème est simple paulo, tu ne peux pas mettre directement mysqlnumrow sur une variable utilisant mysqlquery ... par exemple tu fais passer ta variable $reponse dans un mysql_fetch_assoc puis tu le stocke dans une autre variable.
Tien voilà à quoi devrai ressembler ton script ...
<?php // si e-mail existe déjà
//ID SQL//
mysql_connect("localhost", "root", "");
mysql_select_db("clic-un-club");
//Fin//
//Requete//
$reponse = mysql_query("SELECT * FROM prospect where e-mail='".$email."'");
$reponse_assoc = mysql_fetch_assoc($reponse);
//Fin//
if ($reponse_assoc) //si il existe une email identique sur la BDD
{
echo "email déjà utiliser";
}
else // sinon
{
echo "suite de l'inscription";
}
// Déconnexion de MySQL
mysql_close();
?>
voilà je pense que sa devrait marcher ;)
Tien voilà à quoi devrai ressembler ton script ...
<?php // si e-mail existe déjà
//ID SQL//
mysql_connect("localhost", "root", "");
mysql_select_db("clic-un-club");
//Fin//
//Requete//
$reponse = mysql_query("SELECT * FROM prospect where e-mail='".$email."'");
$reponse_assoc = mysql_fetch_assoc($reponse);
//Fin//
if ($reponse_assoc) //si il existe une email identique sur la BDD
{
echo "email déjà utiliser";
}
else // sinon
{
echo "suite de l'inscription";
}
// Déconnexion de MySQL
mysql_close();
?>
voilà je pense que sa devrait marcher ;)
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
21 févr. 2008 à 21:55
21 févr. 2008 à 21:55
ton problème est simple paulo, tu ne peux pas mettre directement mysqlnumrow sur une variable utilisant mysqlquery
En es tu certain ??
En es tu certain ??
Extrait du site www.php.net Example#1 Exemple avec mysql_num_rows() <?php $link = mysql_connect("localhost", "mysql_user", "mysql_password"); mysql_select_db("database", $link); $result = mysql_query("SELECT * FROM table1", $link); $num_rows = mysql_num_rows($result); echo "$num_rows Rows\n"; ?>
cwadmin
Messages postés
9
Date d'inscription
jeudi 20 décembre 2007
Statut
Membre
Dernière intervention
22 février 2008
>
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
22 févr. 2008 à 11:06
22 févr. 2008 à 11:06
Ben quoi tu crée une variable $num_rows qui utilise mysqlnumrows sur une variable ($result) utilisant utilisant mysqlquery, cette exemple c'est exactement ce que j'ai dit ...
paulo93700
Messages postés
35
Date d'inscription
jeudi 21 février 2008
Statut
Membre
Dernière intervention
21 décembre 2008
1
22 févr. 2008 à 00:13
22 févr. 2008 à 00:13
Ree ;
J’ai testé toute les solutions que vous m’avait données et encor merci pour vos réponses
La solution du commentaire numéro 3 : par cwadmin,
Elle a un problème au niveau de la ligne :
<?php // si e-mail existe déjà
//ID SQL//
mysql_connect("localhost", "root", "");
mysql_select_db("clic-un-club");
//Fin//
//Requete//
$reponse = mysql_query("SELECT * FROM prospect where e-mail='".$email."'");
$reponse1 = mysql_fetch_assoc($reponse);
//Fin//
if ($reponse1) //si il existe une email identique sur la BDD
{
echo "email déjà utiliser";
}
else // sinon
{
echo "suite de l'inscription";
}
// Déconnexion de MySQL
mysql_close();
?>
SA me die:
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\wamp\www\Clic-un-club.com\envoi.php on line 47
suite de l'inscription
Pouvez vous m’éclairé SVP?
Merci beaucoup .
J’ai testé toute les solutions que vous m’avait données et encor merci pour vos réponses
La solution du commentaire numéro 3 : par cwadmin,
Elle a un problème au niveau de la ligne :
<?php // si e-mail existe déjà
//ID SQL//
mysql_connect("localhost", "root", "");
mysql_select_db("clic-un-club");
//Fin//
//Requete//
$reponse = mysql_query("SELECT * FROM prospect where e-mail='".$email."'");
$reponse1 = mysql_fetch_assoc($reponse);
//Fin//
if ($reponse1) //si il existe une email identique sur la BDD
{
echo "email déjà utiliser";
}
else // sinon
{
echo "suite de l'inscription";
}
// Déconnexion de MySQL
mysql_close();
?>
SA me die:
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\wamp\www\Clic-un-club.com\envoi.php on line 47
suite de l'inscription
Pouvez vous m’éclairé SVP?
Merci beaucoup .
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
22 févr. 2008 à 10:00
22 févr. 2008 à 10:00
Bonjour,
Dans ton premier post tu mets:
Une page d’inscription (email nom mot de passe…)
Sur ma base de donné, email est désigné comme clé primaire
Donc j'en déduit que le nom de ton champ email dans ta table est email, et dans ta requette tu mets e-mail=
ça ne peut pas fonctionner et comme tu n'as pas mis de trace d'erreur tu ne t'en rend compte que pour la commande suivante.
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource Veut dire que la resource $reponse n'est pas valide a cause du pb ci dessus.
S'il te plait essayes au moins cette solution:
Dans ton premier post tu mets:
Une page d’inscription (email nom mot de passe…)
Sur ma base de donné, email est désigné comme clé primaire
Donc j'en déduit que le nom de ton champ email dans ta table est email, et dans ta requette tu mets e-mail=
ça ne peut pas fonctionner et comme tu n'as pas mis de trace d'erreur tu ne t'en rend compte que pour la commande suivante.
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource Veut dire que la resource $reponse n'est pas valide a cause du pb ci dessus.
S'il te plait essayes au moins cette solution:
<?php //recupération de la valeur postée $email=$_POST['email']; // si le champ correspondant de ton formulaire est bien email sinon modifies // connexion à la base mysql_connect("localhost", "root", "") or die ("Pb connexion au serveur Mysql ".mysql_error()); mysql_select_db("clic-un-club") or die ("Pb selection base Mysql ".mysql_error()); //Requete $req="SELECT * FROM prospect WHERE email='".$email."'"; $reponse = mysql_query($req) or die ("Pb de requette ".mysql_error()); // Déconnexion de MySQL // oui on peut déja se deconnecter de mysql mysql_close(); //les résultats de la requette sont stockés en mémoire dans une zone spécifique, on y accéde pour des commdes mysql_...., c'est un peu comme un array // comme mysql_num_rows() =nbr de resultats mysql_field_name ()=noms des champs mysql_fetch_array() = sort chaque ligne sous forme d'un array et déplace le pointeur sur la ligne suivante //pour t'en conforter vas voir le site: https://www.php.net/manual/fr/ref.mysql.php // test si e-mail existe déjà //ce qui nous interresse c'est de savoir si on a en a trouvé un //et je persiste et signe on peut tout a fait faire mysql_num_rows () juste après mysql_query() if(mysql_num_rows($reponse)>0){ //si il existe une email identique sur la BDD echo "email déjà utilisé"; }else{ // sinon echo "suite de l'inscription"; } ?>
cwadmin
Messages postés
9
Date d'inscription
jeudi 20 décembre 2007
Statut
Membre
Dernière intervention
22 février 2008
22 févr. 2008 à 11:23
22 févr. 2008 à 11:23
oui le problème si situe au niveau de la variable $email (c'est pas mon script) ... ce qui crée une erreur dans ta requête ... donc pour résumer ...
-vérifie si ta requête sql est correcte (bonne table, bon sa sa doit être bon ; les champs de ta table par exemple ici : e-mail)
-vérifie si tu n'a pas oublié de mettre la variable $email avant le script ... même affiche le (echo) pour être sur qu'il récupère correctement les data via le post.
Au pire si sa marche pas avec mon bout de script ce que je doute, essaye celui d'alain ... il à l'air d'avoir pris le temps de te pondre un script complet avec les débuggeur sql en die.
-vérifie si ta requête sql est correcte (bonne table, bon sa sa doit être bon ; les champs de ta table par exemple ici : e-mail)
-vérifie si tu n'a pas oublié de mettre la variable $email avant le script ... même affiche le (echo) pour être sur qu'il récupère correctement les data via le post.
Au pire si sa marche pas avec mon bout de script ce que je doute, essaye celui d'alain ... il à l'air d'avoir pris le temps de te pondre un script complet avec les débuggeur sql en die.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
paulo93700
Messages postés
35
Date d'inscription
jeudi 21 février 2008
Statut
Membre
Dernière intervention
21 décembre 2008
1
23 févr. 2008 à 03:49
23 févr. 2008 à 03:49
J'ai réussi !!! MERCI A VOUS !!!
<?php
//recupération de la valeur postée
$email =($_POST['email']);
$mdp =($_POST['mdp']);
$nom =($_POST['nom']);
$type =($_POST['type']);
// connexion à la base
mysql_connect("localhost", "root", "") or die ("Pb connexion au serveur Mysql ".mysql_error());
mysql_select_db("clic-un-club") or die ("Pb selection base Mysql ".mysql_error());
//Requete
$req="SELECT * FROM prospect WHERE email='".$email."'";
$reponse = mysql_query($req) or die ("Pb de requette ".mysql_error());
// Déconnexion de MySQL // oui on peut déja se deconnecter de mysql
mysql_close();
if(mysql_num_rows($reponse)>0){ //si il existe une email identique sur la BDD
echo "email déjà utilisé";
}
else{ // sinon
echo
"Validation de votre inscription </p>
Email:$email
</p>
Mot de Passe:$mdp
</p>
Nom du contact:$nom
</p>
Type de structure:$type"
;
}
?>
J'ai réussi !!! MERCI A VOUS !!!
<?php
//recupération de la valeur postée
$email =($_POST['email']);
$mdp =($_POST['mdp']);
$nom =($_POST['nom']);
$type =($_POST['type']);
// connexion à la base
mysql_connect("localhost", "root", "") or die ("Pb connexion au serveur Mysql ".mysql_error());
mysql_select_db("clic-un-club") or die ("Pb selection base Mysql ".mysql_error());
//Requete
$req="SELECT * FROM prospect WHERE email='".$email."'";
$reponse = mysql_query($req) or die ("Pb de requette ".mysql_error());
// Déconnexion de MySQL // oui on peut déja se deconnecter de mysql
mysql_close();
if(mysql_num_rows($reponse)>0){ //si il existe une email identique sur la BDD
echo "email déjà utilisé";
}
else{ // sinon
echo
"Validation de votre inscription </p>
Email:$email
</p>
Mot de Passe:$mdp
</p>
Nom du contact:$nom
</p>
Type de structure:$type"
;
}
?>
J'ai réussi !!! MERCI A VOUS !!!