Google Plus

PHP: Altersabfrage

von vor 255 Tagen Autor

Da ich nach einem Skript der folgenden Art gefragt wurde, gibt's hier einen PHP-Schnipsel, um das eines Nutzers abzufragen und entsprechend Text anzuzeigen:

  1. <?php
  2. $min_alter = '18'; // Wie alt muss ein Nutzer mindestens sein?
  3.  
  4. // Falls das Formular abgeschickt wurde
  5. if (isset($_POST['submit'])) {
  6. 	// Eingegebene Daten auf Logik prüfen
  7. 	$timestamp = strtotime($_POST['YYYY']."-".$_POST['mm']."-".$_POST['dd']);
  8. 	if ($timestamp !== false AND $timestamp != 0) { // Falls die Daten ein logisches Datum bilden
  9.  
  10. 		// Alter berechnen
  11. 		$alter = date("Y", time()) - $_POST['YYYY'] - 1;
  12. 		if (date("m", time()) > $_POST['mm']) {
  13. 			$alter++;
  14. 		}
  15. 		if (date("m", time()) == $_POST['mm']) {
  16. 			if (date("d", time()) >= $_POST['dd']) {
  17. 				$alter++;
  18. 			}
  19. 		}
  20.  
  21. 		// Falls alt genug
  22. 		if ($alter >= $min_alter) {
  23. 			echo 'Du bist '.$min_alter.' oder &auml;ter!';
  24. 		} else { // Falls nicht
  25. 			echo 'Du solltest eigentlich mindestens '.$min_alter.' Jahr';
  26. 			if ($min_alter != 1) { echo 'e'; }
  27. 			echo ' alt sein.';
  28. 		}
  29. 	}
  30. } else { // Falls noch kein Geburtstag angegeben
  31. 	?>
  32. <form action="" method="post">
  33. 		An welchem Tag wurdest du geboren? 
  34. <select name="dd" size="1">
  35. 			<?php
  36. 			for ($i=1;$i<=31;$i++) {
  37. 				if (strlen($i) == 1) {
  38. 				$i = '0'.$i;
  39. 				}
  40. 				echo '
  41. <option value="'.$i.'"';
  42. 				if (date("d", time()) == $i) {
  43. 				echo ' selected="selected"';
  44. 				}
  45. 				echo '>'.$i.'</option>
  46.  
  47. ';
  48. 			}
  49. 			?>
  50. 		</select>
  51. <select name="mm" size="1">
  52. 			<?php
  53. 			for ($i=1;$i<=12;$i++) {
  54. 				if (strlen($i) == 1) {
  55. 				$i = '0'.$i;
  56. 				}
  57. 				echo '
  58. <option value="'.$i.'"';
  59. 				if (date("m", time()) == $i) {
  60. 				echo ' selected="selected"';
  61. 				}
  62. 				echo '>'.$i.'</option>
  63.  
  64. ';
  65. 			}
  66. 			?>
  67. 		</select>
  68. <select name="YYYY" size="1">
  69. 			<?php
  70. 			for ($i=1900;$i<=date("Y", time());$i++) {
  71. 				echo '
  72. <option value="'.$i.'"';
  73. 				if (date("Y", time()) == $i) {
  74. 				echo ' selected="selected"';
  75. 				}
  76. 				echo '>'.$i.'</option>
  77.  
  78. ';
  79. 			}
  80. 			?>
  81. 		</select>
  82. <input type="submit" name="submit" value="Abschicken" />
  83. 	</form>
  84.  
  85. 	<?php
  86. }
  87. ?>
Wie fandest du diesen Artikel?
Interessant (0) Witzig (0) Langweilig (0)

Das könnte dich auch interessieren ...

Ein Kommentar zu “PHP: Altersabfrage” RSS Feeds zu diesem Beitrag

Ein Beispiel mit der Integration eines Datepickers mit jQuery oder ähnlichem würde sich ganz gut machen.

Jetzt bist du dran: Was denkst du?

Tipps:

  • Du kannst die Standard-HTML-Tags verwenden.
  • Wandle Sonderzeichen wie <, > und & bitte in HTML-Entities (&lt;, &gt; und &amp;) um, um z.B. Codes anzuzeigen.

    Danke ;)