Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- $erreur=0;
- function allIn(array $t1, array $t2) {
- //cette fonction vérifie (et retourne 1) si toutes les valeurs du tableau $t1 appartiennent = $t2. 0 sinon
- foreach($t1 as $value)
- if(!in_array($value, $t2))
- return 0;
- return 1;
- }
- function de(){
- return isset($_POST['envoyer']);
- }
- function createText($label, $name, $msgErreur, $regex)
- {
- $erreur=0;
- echo "<br/>$label: <input type=\"text\" value=\"";
- if(isset($_POST[$name]))
- echo $_POST[$name]. "\" name=\"$name\"/>";
- else
- echo "\" name=\"$name\"/>";
- if(isset($_POST[$name]) && !preg_match("/$regex/", $_POST[$name]))
- {
- $erreur=1;
- echo $msgErreur;
- }
- echo"<br/>";
- return $erreur;
- }
- ob_start();
- // form
- ?>
- <form action="" method="post">
- nom:<input type="text" value="<?php echo $_POST['nom']??"";?>" name="nom"/>
- <?php
- if(isset($_POST['nom']) && !preg_match("/^[A-Z][a-z]+$/", $_POST['nom']))
- {
- $erreur=true;
- echo "doit commencer par une majuscule suivit d'une minuscule";
- }
- $erreur+=createText("entez votre prenom","prenom","*MAJ puis min","^[A-Z][a-z]+$");
- $erreur+=createText("entrez votre portable","portable","* 06 ou 7 suivit de 8 chiffres","^0[67][0-9]{8}+$");
- ?>
- age:<select name="age">
- <option value="@@@@@">--séléctionner dans la liste--</option>
- <?php
- for ($i=0; $i <100 ; $i++) {
- $age[$i]=$i;
- echo "<option value=\"$i\"";
- if(de()&& $_POST['age']==$i)
- echo"selected=\"selected\" ";
- echo ">$i</option>";
- }
- ?>
- </select>
- <?php
- if (de()&&($_POST['age']=='@@@@@'|| !in_array($_POST['age'],$age ))){
- $erreur=1;
- echo "séléctionner un age dans la liste";
- }
- ?>
- <br/>
- Sexe :
- </br>
- <?php
- $sexe=["Masculin"=>1, "Féminin"=>2, "Autre"=>3];
- foreach ($sexe as $k => $v) {
- echo "<input type=\"radio\" name=\"sexe\" value=\"$v\"";
- if(isset($_POST['sexe'])&&$_POST['sexe']==$v)
- echo "checked=\"checked\"";
- echo "/> : $k<br/>";
- }
- if (
- de()&&!isset($_POST['sexe'])||
- isset($_POST['sexe'])&& !in_array($_POST['sexe'],$sexe)
- )
- {
- $erreur=1;
- echo "selectionnez votre sexe<br/>";
- }
- ?>
- <br/>
- Langue parlées :
- <?php
- $langues = ["Français" => "Fr", "Anglais" => "An", "Espagnol" => "Es"];
- foreach($langues as $k => $v) {
- echo "<input type=\"checkbox\" name=\"langues[]\" value=\"$v\" ";
- if(isset($_POST['langues']) && in_array($v, $_POST['langues']))
- echo "checked=\"checked\" ";
- echo "/> : $k</br>";
- }
- ?>
- <?php
- $min = 1;
- $max = 2;
- if (de() && !isset($_POST['langues']) && $min > 0 ||
- de() && isset($_POST['langues']) && (count($_POST['langues']) > $max) ||
- count($_POST['langues'] < $min) ||
- isset($_POST['langues']) && !allIn($_POST['langues']. $langues))
- {
- $erreur = 1;
- echo "sélectionnez entre $min et $max langues </br>";
- }
- ?>
- <input type="submit" name="envoyer"/>
- </form>
- <?php
- $f=ob_get_clean();
- if(isset($_POST['envoyer']) && !$erreur)
- {
- //ajout
- echo "ajout en BD";
- echo $_POST['nom'];
- }
- else
- echo $f;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement