Bonjour.

Dans mon formulaire je demande la saisie d'une date que je controle.
Je vérifie la longueur de la chaîne, les jours, etc.
le séparateur est un "/".
Quand je fais explode("/", ma_date) j'ai un message d'erreur si le séparateur n'est pas "/".
Comment je peux éviter ce problème?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
if (isset($_POST['sortie1']))	$sortie1 = $_POST['sortie1'];
else $sortie1 ="";
$jour = "";
$mois= "";
$annnee = "";
$tableau = "0000-00-00";
if ((strlen($sortie1) != 10) && strlen($sortie1) > 0){
	$message= "$sortie1 n'est pas une date valide";
}
else if (strlen($sortie1) == 10){
	$tableau = explode("/",$sortie1);
	$jour = $tableau[0];
	$mois = $tableau[1];
	$annee = $tableau[2];
	if ((($mois == 4) || ($mois == 6) || ($mois == 9) || ($mois == 11)) && $jour == 31){
		$message = "$jour/$mois/$annee est une date non valide";
		$tableau = "0000-00-00";
	}
	else if ($mois == 2){
		if( (is_int($annee/4) && !is_int($annee/100)) || is_int($annee/400)) {
			// Année bissextile
			if ($jour > 29) {
				$message = "$jour/$mois/$annee est une date non valide";
				$tableau = "0000-00-00";
		}
		} else {
			// Année NON bissextile
			if ($jour > 28) {
				$message = "$jour/$mois/$annee est une date non valide";
				$tableau = "0000-00-00";
			}
		}
	}
	else if ($jour > 31){
		$message = "$jour/$mois/$annee est une date non valide";
		$tableau = "0000-00-00";
	}
	else {
	$tableau = "$annee-$mois-$jour";
	$tableaufr = "$jour/$mois/$annee";
	}
}
Merci d'avance