fonction controle formulaire et include fichier reponse

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : fonction controle formulaire et include fichier reponse

Re: fonction controle formulaire et include fichier reponse

par Invité » 21 avr. 2010, 14:55

En résumé le souci,

j'utilise des includes pour mes différentes pages.

je vérifie les includes via un tableau dans index.php

J'appelle mon formulaire calculette

Lorsque je le valide, je recharge le formulaire calculette avec champs résultats si pas d'erreur de saisie ou avec indication de l'erreur.

Or après la vérification des données saisie cela me renvoi le formulaire dans ma page index mais tout en incluant la page accueil

De plus le formulaire se met après la balise </html>

Je pense que la vérification de la pages a inclure est du type :

index.php=?page=nom

Je ne sais pas comment renvoyer les valeurs de la fonction dans la page en utilisant cette syntaxe

Re: fonction controle formulaire et include fichier reponse

par andarius40 » 21 avr. 2010, 09:34

La question est comment sur la fonction de contrôle de saisie des données en fonction des erreurs et saisie je peux appeler la page :
'calculconversion'

afin de recharger la page avec le menu et le css via le tableau de verification des pages a inclure sur index.

voir :

http://www.astuces-informatique.info

Re: fonction controle formulaire et include fichier reponse

par Aureusms » 21 avr. 2010, 09:05

Quelle est la question ?

fonction controle formulaire et include fichier reponse

par andarius40 » 21 avr. 2010, 09:02

Bonjour,

Je fonctionne avec PHP Version 5.2.13

j'utilise un fichier index :

Code : Tout sélectionner

<html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <link rel="stylesheet" href="./styles/index.css" type="text/css" /> <link rel="stylesheet" href="./styles/menu.css" type="text/css" /> <link rel="stylesheet" href="./styles/style.css" type="text/css" /> <script type="text/javascript" src="./scripts/menu.js"></script> <script type="text/javascript" src="./scripts/pages.js"></script> </head> <body> <div id="menu"> <?php include('menu.inc.php'); ?> </div> <div id="pages"> <?php // On définit le tableau contenant les pages autorisées // ---------------------------------------------------- $pageOK = array('accueil' => 'accueil.inc.php', 'mathematiques' => 'theorie_mathematiques.inc.php', 'calculettephp' => 'theorie_initialize_calculette_conversion.inc.php', 'calculconversion' => 'theorie_calcul_conversion.inc.php', 'theorie_calculette_conversion.inc.php' => 'theorie_calculette_conversion.inc.php', 'calculettejava' => 'theorie_mathematiques.inc.php', 'reseaux' => 'theorie_reseaux.inc.php', 'theoriereseau' => 'theorie_introduction_reseau.inc.php', 'theorieethernet' => 'theorie_ethernet.inc.php', 'theorietcpip' => 'theorie_tcpip.inc.php', 'theorieipv4' => 'theorie_ipv4.inc.php', 'theorieipv6' => 'theorie_ipv6.inc.php', ); // On teste que le paramètre d'url existe et qu'il est bien autorisé // ----------------------------------------------------------------- if ((isset($_GET['calculconversion']))&& (isset($pageOK[$_GET['calculconversion']]))){ include('theorie_calcul_conversion.inc.php'); } else { if ( (isset($_GET['page'])) && (isset($pageOK[$_GET['page']])) ) { //AND file_exists($_GET['page'].'.php') include($pageOK[$_GET['page']]); // Nous appelons le contenu central de la page } else { include('accueil.inc.php'); // page par defaut } ?> </div> </body> </html>
Le menu me permet de naviguer entre mes pages avec comme type de lien :

Code : Tout sélectionner

<li><a href="index.php?page=mathematiques" title="Mathematiques">Mathématique</a></li>
Je vais sur la page calculette php avec le lien vers :
'calculettephp' => 'theorie_initialize_calculette_conversion.inc.php',

qui me permet d'initialiser la fonction conversion.
puis j'arrive sur ce code :

Code : Tout sélectionner

<?php function conversion ($nombre, $resultat_binaire, $resultat_decimale, $resultat_hexadecimale, $message, $type, $type_resultat, $type_bouton) { global $nombre; global $resultat_binaire; global $resultat_decimale; global $resultat_hexadecimale; global $message; ?> <h1>Calculette PHP</h1> <?php include('theorie_math_menu.inc.php'); ?> <form method="POST" action="theorie_calcul_conversion.inc.php"> <p class="centrer"> <input type="<?=$type?>" name="message" size="36" value="<?=$message?>"></input> <br /> <br /> <b>Nombre</b> <input type="text" name="Nombre" size="30" value="<?=$nombre?>"></input> <br /> <br /> Type du nombre : <br /> <select name="choix"> <option value="1" >Binaire</option> <option value="2" >decimale</option> <option value="3" >Hexadecimale</option> </select> <br /> <br /> <input type="reset" name="reinitialise" onclick="theorie_initialize_calculette_conversion.inc.php"></input> <input type="<?=$type_bouton?>" name="conversion" value="Conversion"></input><br><br> <br /> <br /> <input type="<?=$type_resultat?>" name="message" size="36" value="<?=$resultat_binaire?>"> <br /> <input type="<?=$type_resultat?>" name="message" size="36" value="<?=$resultat_decimale?>"> <br /> <input type="<?=$type_resultat?>" name="message" size="36" value="<?=$resultat_hexadecimale?>"> <br /> <br /> </form> </p> <?php } ?>
Lorsque je valide la page j'arrive sur la page de vérification :

Code : Tout sélectionner

<?php require_once ('theorie_calculette_conversion.inc.php'); $nombre=$_POST['Nombre']; $choix=$_POST['choix']; $nombre = strtoupper ($nombre); function verifier_base ($nombre, $base) { global $rep1; switch($base) { case "2": $taille = strlen($nombre); $chiffre = "23456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"; $var = (strcspn ($nombre, $chiffre)); if ($var != $taille) { $rep1="1"; } else { $rep1="0"; } break; case "10": $taille = strlen($nombre); $chiffre = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; $var = (strcspn ($nombre, $chiffre)); if ($var != $taille) { $rep1="1"; } else { $rep1="0"; } break; case "16": $taille = strlen($nombre); $chiffre = "GHIJKLMNOPQRSTUVWXYZ"; $var = (strcspn ($nombre, $chiffre)); if ($var != $taille) { $rep1="1"; } else { $rep1="0"; } break; } } if (($choix)=="1") { verifier_base($nombre, 2); $resultat_binaire = $nombre; $resultat_decimale = number_format(base_convert($nombre,2,10),'',',',' '); $resultat_hexadecimale = base_convert($nombre,2,16); } if (($choix)=="2") { verifier_base($nombre, 10); $resultat_binaire = base_convert($nombre,10,2); /*$taille = strlen($resultat_binaire_0); $i = "0"; for ($i="0"; $i = $taille; $i=$i+4) { $resultat_binaire[i]=$resultat_binaire[i]+" "; } */ $resultat_decimale = number_format($nombre, '', ',', ' '); $resultat_hexadecimale =base_convert($nombre,10,16); } if (($choix)=="3") { verifier_base($nombre, 16); $resultat_binaire = base_convert($nombre,16,2); $resultat_decimale = base_convert($nombre,16,10); $resultat_hexadecimale = $nombre; } if ($rep1=="1") { $type="text"; $message="non binaire"; $type_resultat="hidden"; $type_bouton="submit"; conversion ($nombre, $resultat_binaire, $resultat_decimale, $resultat_hexadecimale, $message, $type, $type_resultat, $type_bouton); } if ($rep1=="2") { $type="text"; $message="non decimale"; $type_resultat="hidden"; $type_bouton="submit"; conversion ($nombre, $resultat_binaire, $resultat_decimale, $resultat_hexadecimale, $message, $type, $type_resultat, $type_bouton); } if ($rep1=="3") { $type="text"; $message="non hexadecimale"; $type_resultat="hidden"; $type_bouton="submit"; conversion ($nombre, $resultat_binaire, $resultat_decimale, $resultat_hexadecimale, $message, $type, $type_resultat, $type_bouton); } if (($rep1)=="0") $type = "hidden"; $type_resultat = "text"; $type_bouton = "hidden"; conversion ($nombre, $resultat_binaire, $resultat_decimale, $resultat_hexadecimale, $message, $type, $type_resultat, $type_bouton); ?>
Mon problème, je n'arrive pas a interroger mon fichier index pour charger la page avec le css.
Je pense qu'il faut que j'envoie une interrogation a index :
index.php?page='theorie_calculette_conversion.inc.php' => 'theorie_calculette_conversion.inc.php',

qui correspond à :
'theorie_calculette_conversion.inc.php'
dans le tableau $pageOK du fichier index

Merci de votre aide.