Lors de l'éxécution de ma page PHP, j'obtient cette erreur (en 30 Fois, car il y a 30 Jours en Novembre
Warning: in_array() [function.inarray]: Wrong datatype for second argument in /mnt/122/free.fr/d/5/revan38/calend/admin/calendrier.inc.php on line 95
Ah ! J'avais pas fait gaffe à ça.
C'est à cause de la portée des variables... La variable tableau qui contient les données récupérées par ta requête n'existe pas dans ta fonction, à moins d'utiliser global :
Juste pour savoir... Pourquoi tu concatènes $mktime avec deux chines vides ?
Bon... Dans ton tableau, tu as des entiers. Toi, puisque tu concatènes $mktime avec deux chaines vides et que tu passes TRUE en troisième argument, tu cherches des chaines.
http://fr3.php.net/manual/fr/function.in-array.php :
"Le troisième paramètre strict est optionnel. S'il vaut TRUE alors in_array() vérifiera aussi que le type du paramètre needle correspond au type de la valeur trouvée dans haystack."
Ben écoute je viens de tester chez moi, et ça marche...
J'ai pris tes fonctions geSecond, getMinute, etc
Ensuite, j'ai mis ça :
// Simulation du passage de l'argument de la fonction showCalendar
$periode = time();
// Simulation du compteur
$pas = 1;
// Code normal
$mktime = mktime(0, 0, 0, getMonth($periode), 1 + $pas, getYear($periode));
// Simulation du résultat de la bdd
$timedb = array(1179612000, 1180044000, 1180735200, 1181512800, 1181944800, 1183845600, 1188856800, 1190152800);
Ben... Tu utiliserais pas un système de cache par exemple ? Zend Optimizer, APC, ou autre ?
Est-ce que si tu rajoutes une ligne vide avant la ligne où il y a l'erreur, le message d'erreur change ou bien estè-ce qu'il indique toujours le même numéro de ligne ?
Ben moi j'ai pas d'erreur, puisque le script s'exécute normalement. Il m'affiche "non" parce que c'est la bonne réponse, pas parce que le script ne marche pas...