Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2020
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.47 KB | None | 0 0
  1. <?php
  2. $erreur=0;
  3. function allIn(array $t1, array $t2) {
  4. //cette fonction vérifie (et retourne 1) si toutes les valeurs du tableau $t1 appartiennent = $t2. 0 sinon
  5. foreach($t1 as $value)
  6. if(!in_array($value, $t2))
  7. return 0;
  8. return 1;
  9.  
  10. }
  11. function de(){
  12. return isset($_POST['envoyer']);
  13. }
  14. function createText($label, $name, $msgErreur, $regex)
  15. {
  16. $erreur=0;
  17. echo "<br/>$label: <input type=\"text\" value=\"";
  18.  
  19. if(isset($_POST[$name]))
  20. echo $_POST[$name]. "\" name=\"$name\"/>";
  21. else
  22. echo "\" name=\"$name\"/>";
  23.  
  24. if(isset($_POST[$name]) && !preg_match("/$regex/", $_POST[$name]))
  25. {
  26. $erreur=1;
  27. echo $msgErreur;
  28. }
  29. echo"<br/>";
  30. return $erreur;
  31. }
  32.  
  33.  
  34.  
  35. ob_start();
  36. // form
  37. ?>
  38. <form action="" method="post">
  39. nom:<input type="text" value="<?php echo $_POST['nom']??"";?>" name="nom"/>
  40. <?php
  41. if(isset($_POST['nom']) && !preg_match("/^[A-Z][a-z]+$/", $_POST['nom']))
  42. {
  43. $erreur=true;
  44. echo "doit commencer par une majuscule suivit d'une minuscule";
  45. }
  46.  
  47. $erreur+=createText("entez votre prenom","prenom","*MAJ puis min","^[A-Z][a-z]+$");
  48. $erreur+=createText("entrez votre portable","portable","* 06 ou 7 suivit de 8 chiffres","^0[67][0-9]{8}+$");
  49. ?>
  50.  
  51.  
  52. age:<select name="age">
  53. <option value="@@@@@">--séléctionner dans la liste--</option>
  54. <?php
  55. for ($i=0; $i <100 ; $i++) {
  56. $age[$i]=$i;
  57. echo "<option value=\"$i\"";
  58. if(de()&& $_POST['age']==$i)
  59. echo"selected=\"selected\" ";
  60. echo ">$i</option>";
  61. }
  62. ?>
  63. </select>
  64. <?php
  65. if (de()&&($_POST['age']=='@@@@@'|| !in_array($_POST['age'],$age ))){
  66. $erreur=1;
  67. echo "séléctionner un age dans la liste";
  68. }
  69. ?>
  70. <br/>
  71. Sexe :
  72. </br>
  73. <?php
  74.  
  75. $sexe=["Masculin"=>1, "Féminin"=>2, "Autre"=>3];
  76.  
  77. foreach ($sexe as $k => $v) {
  78. echo "<input type=\"radio\" name=\"sexe\" value=\"$v\"";
  79. if(isset($_POST['sexe'])&&$_POST['sexe']==$v)
  80. echo "checked=\"checked\"";
  81. echo "/> : $k<br/>";
  82.  
  83. }
  84. if (
  85. de()&&!isset($_POST['sexe'])||
  86. isset($_POST['sexe'])&& !in_array($_POST['sexe'],$sexe)
  87. )
  88. {
  89. $erreur=1;
  90. echo "selectionnez votre sexe<br/>";
  91. }
  92. ?>
  93.  
  94. <br/>
  95. Langue parlées :
  96. <?php
  97. $langues = ["Français" => "Fr", "Anglais" => "An", "Espagnol" => "Es"];
  98. foreach($langues as $k => $v) {
  99. echo "<input type=\"checkbox\" name=\"langues[]\" value=\"$v\" ";
  100. if(isset($_POST['langues']) && in_array($v, $_POST['langues']))
  101. echo "checked=\"checked\" ";
  102. echo "/> : $k</br>";
  103.  
  104.  
  105. }
  106. ?>
  107. <?php
  108. $min = 1;
  109. $max = 2;
  110. if (de() && !isset($_POST['langues']) && $min > 0 ||
  111. de() && isset($_POST['langues']) && (count($_POST['langues']) > $max) ||
  112. count($_POST['langues'] < $min) ||
  113. isset($_POST['langues']) && !allIn($_POST['langues']. $langues))
  114. {
  115. $erreur = 1;
  116. echo "sélectionnez entre $min et $max langues </br>";
  117. }
  118. ?>
  119. <input type="submit" name="envoyer"/>
  120. </form>
  121.  
  122. <?php
  123. $f=ob_get_clean();
  124.  
  125. if(isset($_POST['envoyer']) && !$erreur)
  126. {
  127. //ajout
  128. echo "ajout en BD";
  129. echo $_POST['nom'];
  130. }
  131. else
  132. echo $f;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement