8791 sujets

Développement web côté serveur, CMS

Bonjour,

J'ai développé un site sans prétention de gestion des congés http://www.gestion-personnel.org/ pour une petite structure de 3 personnes. Dans ma conception du web, j'ai souhaité que tout le monde en profite. Malheureusement, il y a une étape que je ne réussis pas à traiter correctement : l'initialisation.

En effet, la première étape est de définir la personne et la société via un formulaire. Je traite ensuite ce formulaire en insérant dans les tables différentes valeurs transmis par le formulaire. et je remarque que toutes les tables ne sont pas correctement renseignés.

Mon analyse est que l'utilisateur qui s'inscrit effectue une seconde requête http avant que la requête d'insertion des champs du formulaire soit terminée.

La logique suivante est elle bonne ?
formulaire (post/get)
=> validation des champs du formulaire
=> insertion des champs en base
=> affichage nouvelle page

Par exemple, j'ai remarqué que Paypal dans son traitement génère une seconde requête (post/get). A priori, c'est le traitement de cette requête qui entraine le paiement.

Merci pour vos reponses
Bonjour,

Pour avoir accès à ce formulaire, il faut d'abord s'inscrire?

Concernant la logique, elle est correcte. Enfin, tout dépend de ce qu'on veut faire.
Que sous-entends tu par
a écrit :
les tables ne sont pas correctement renseignés
? Aucune donnée n'est insérée? Des données sont insérées mais le texte inséré ne correspond pas au texte entré dans le formulaire?

Ma première piste serait un problème de caractères (des quillemets ou un truc dans le genre) qui provoquerait une erreur lors de l'insertion des données dans les tables.

Il faudrait le code qui permet de faire l'insertion pour t'aider efficacement.
Modifié par titchagcreation (23 Dec 2011 - 22:52)
Bonjour,
J'aimes bien quand un visiteur vient poser un question et ne lit pas / ou ne réponds pas aux réponses Smiley decu
Joyeux réveillon tout de même
Christele
Bonjour,

Désolé si je n'ai pas répondu avec la célérité nécessaire, j'ai pris quelques minutes avant de partir en congé pour effectuer ma requête en espérant avoir une réponse à mon retour.

Dès que j'aurai accès à mon poste de travail, je fournirai les éléments demandés

Joyeuses fetes
Renard
Meilleurs vœux à tous et désolé pour le temps de réponse.

Voici le principe d'insertion

1) vérification de la syntaxe

foreach($_POST as $clé => $valeur) {
   if ($clé == "login") {
      if (!ereg("^[A-Za-z' éèêëàâîïôûùü-]{1,50}$", $valeur)) {
         unset($_GET['do']);
         $message_new = htmlentities ("orthographe invalide.");
         exit();
     }
   }
}


2) vérification de l'unicité si il y a unicité j'insère.

//  Le login doit être unique
   $requete=requete('SELECT nomLogin from '._MEMBRES_.' 
							WHERE nomLogin = "'.$_POST[login].'"');
   $num = mysql_numrows($requete);

   if ($num > 0) {
      // Le login existe déjà
   }
   else {
      // Le login est unique
      $requete=requete('INSERT INTO '._MEMBRES_.' (nomLogin) 
                                            VALUES ("'.$_POST[login].'")');

      $_SESSION['login'] = $_POST[login];


Malgré cela, j'ai inséré un champs vide...

Je ne comprend pas vraiment pourquoi je réussis à insérer ce champs vide Smiley confused

Remarque : il me semble que c'est la première fois que le login est initialisé à vide. En principe, je vais un peu plus loin dans le renseignement des tables.

Cela semble t'il correcte ?

Merci pour vos avis
Renard