Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1780 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  vérification formulaire

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

vérification formulaire

n°1142704
twisted
Ahhhhhhhh !
Posté le 06-07-2005 à 22:12:46  profilanswer
 

Salut à tous,
 
alors je voudrais faire une verification dans un formulaire mais je ne vois vraiment pas comment faire.
j'espère que vous pourrez m'aider
 
Je voudrais faire une vérification avant validation sur le fait que si un champs renseigné par l'utilisateur existe déjà dans la bdd, cela affiche un message d'erreur.
c'est pour éviter le fait que certaines personnes s'enregistrent plusieurs fois avec les mêmes données.
 
ce que je pense faire :
 
- une requête sql sur les champs concernés
 

Code :
  1. $mysql_link = mysql_connect($host,$login,$pass);
  2. mysql_select_db($base, $mysql_link);
  3. $query1 = "SELECT champs1,champs2 FROM matable";
  4. $mysql_result = mysql_query($query1, $mysql_link);
  5. while($row = mysql_fetch_row($mysql_result)) {
  6.         $variable1 = $row[1];
  7.         $variable2 = $row[2];
  8. }


 
- et ensuite
 

Code :
  1. if(isset($variable1))
  2. {
  3. print("cet enregistrement existe déjà" );
  4. }
  5. if(isset($variable2))
  6. {
  7. print("cet enregistrement existe déjà" );
  8. }
  9. else
  10. {
  11. print("enregistrement effectué" )
  12. }


 
 
mais bon cela ne focntionne pas avez-vous une idée ?
 
merci d'avance


Message édité par twisted le 06-07-2005 à 22:14:36
mood
Publicité
Posté le 06-07-2005 à 22:12:46  profilanswer
 

n°1142781
Profil sup​primé
Posté le 07-07-2005 à 00:50:05  answer
 

Code :
  1. //connexion MySQL
  2. $pseudo=$_POST['ChampPseudo'];
  3. $r=mysql_fetch_array(mysql_query("select * from table where champPseudo='$pseudo'" ));
  4. if(mysql_affected_rows()>=1)) echo "Ce pseudo est déjà utilisé";

n°1142835
sielfried
Posté le 07-07-2005 à 07:44:44  profilanswer
 

Avec mysql_num_rows, c'est mieux.
 
Et avec un mysql_real_escape_string, aussi.


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1143210
Profil sup​primé
Posté le 07-07-2005 à 13:50:09  answer
 

Pourquoi "c'est mieux" ? Si tu contredis quelqu'un, fais-lui au moins l'honneur d'argumenter.

n°1143324
sielfried
Posté le 07-07-2005 à 15:19:42  profilanswer
 

Ben pour mysql_affected_rows, suffit d'aller voir la doc... Je pensais que t'avais fait une erreur d'étourderie donc j'ai pas trouvé ça nécessaire de préciser pourquoi. Un select n' "affecte" aucun tuple.
 
Le mysql_real_escape_string, suffit aussi d'aller voir la doc, ça protège d'une injection SQL, ce qui est particulièrement indispensable pour ce genre de requêtes...


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1143518
Profil sup​primé
Posté le 07-07-2005 à 18:03:27  answer
 

Tu es sur mysql_real_escape_string est encore indispensable ? Avec magic_quotes on dans php.ini plus besoin d'échapper les quotes. (il me semble)

n°1143530
sielfried
Posté le 07-07-2005 à 18:11:56  profilanswer
 


 
Ben il échappe pas que les quotes.


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1143546
twisted
Ahhhhhhhh !
Posté le 07-07-2005 à 18:21:37  profilanswer
 

Merci bcp Akn c'est exactement ce que je voulais.
mais tu as mis en parenthèse de trop sur la 4ème ligne :
 
if(mysql_affected_rows()>=1))  
==>
if(mysql_affected_rows()>=1)
 
voilà, je corrige pour ceux qi liront ce topic plus tard.
merci à tous pour vos réponse :-)

n°1143550
sielfried
Posté le 07-07-2005 à 18:23:24  profilanswer
 

twisted a écrit :

Merci bcp Akn c'est exactement ce que je voulais.
mais tu as mis en parenthèse de trop sur la 4ème ligne :
 
if(mysql_affected_rows()>=1))  
==>
if(mysql_affected_rows()>=1)
 
voilà, je corrige pour ceux qi liront ce topic plus tard.
merci à tous pour vos réponse :-)


 
Essaie de les lire toutes alors. [:spamafote]  
 
mysql_affected_rows ne marche pas ici. Il faut mysql_num_rows à la place.


Message édité par sielfried le 07-07-2005 à 18:23:35

---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1143742
Profil sup​primé
Posté le 07-07-2005 à 22:51:20  answer
 

lol s'il dit que ça marche :-/


Message édité par Profil supprimé le 07-07-2005 à 22:52:28
mood
Publicité
Posté le 07-07-2005 à 22:51:20  profilanswer
 

n°1143743
sielfried
Posté le 07-07-2005 à 22:53:57  profilanswer
 

Bah il se trompe.
 
edit: après vérification, ça marche effectivement, sûrement que la fonction agit comme mysql_num_rows pour du SELECT. M'étonne pas de PHP, tiens. ;)
Pas sûr que ça marche sur toutes les versions de PHP, c'est pas dans la doc de php.net en tout cas.
 
Reste que mysql_num_rows serait plus logique, lisible et propre.


Message édité par sielfried le 07-07-2005 à 22:58:25

---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  vérification formulaire

 

Sujets relatifs
verification formulaire en Javascriptprobleme de verification de formulaire
Vérification d'un formulaireVérification de la source des données formulaire
verification des champs d'un formulaire pour l'envoie d'un email[JS]verification de formulaire petit pb
JS : Vérification d'email dans un formulaireverification formulaire javascript
javascrip - formulaire et verification de saisie des données ! un pe[ Javascript ] Vérification de formulaire
Plus de sujets relatifs à : vérification formulaire


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR