par
subversive_element » 14 août 2008, 08:44
Que veux tu dire par "reconnait" ? PHP peut faire des opérations dessus c'et ça ?
Tu as essayé avec count() à la place de sizeof() ?
Hello-
Merci pour ta réponse.
Exemple concret, je sais qu'il y a deux éléments dans mon tableau, donc $x retourne 1.
la boucle while ($y <= $x){ ... considère que $x est égal à zéro, ou qu'il n'est pas spécifié.
J'ai essayé avec count() et c'est la même chose.
Le problème doit venir de mon tableau qui est créé ainsi, pour rappel :
foreach ($_POST as $var => $value) {
$vals[] = $value;
}
Si par contre je crée ce tableau manuellement (il s'agit dID's de commande), ça marche:
$vals = array(6900, 6899); ou
$vals = array('6900', '6899');
Ma méthode de population de $vals semble être la source du problème. Pourtant, quand je sors les valeurs de $vals (echo $vals[0] et [1]), il me sort 6900 et 6899...
EDIT: tests avec gettype(), il me renvoie "string". Mais si je change foreach ainsi:
foreach ($_POST as $var => $value) {
$vals[] = intval($value);
}
Il me renvoie "integer", mais ma boucle ne fonctionne toujours pas.... $x est lui aussi considéré comme integer....c'est à n'y rien comprendre

[quote="_activmik"]Que veux tu dire par "reconnait" ? PHP peut faire des opérations dessus c'et ça ?
Tu as essayé avec count() à la place de sizeof() ?[/quote]
Hello-
Merci pour ta réponse.
Exemple concret, je sais qu'il y a deux éléments dans mon tableau, donc $x retourne 1.
la boucle while ($y <= $x){ ... considère que $x est égal à zéro, ou qu'il n'est pas spécifié.
J'ai essayé avec count() et c'est la même chose.
Le problème doit venir de mon tableau qui est créé ainsi, pour rappel :
[php]
foreach ($_POST as $var => $value) {
$vals[] = $value;
} [/php]
Si par contre je crée ce tableau manuellement (il s'agit dID's de commande), ça marche:
[php]$vals = array(6900, 6899); ou
$vals = array('6900', '6899');
[/php]
Ma méthode de population de $vals semble être la source du problème. Pourtant, quand je sors les valeurs de $vals (echo $vals[0] et [1]), il me sort 6900 et 6899...
EDIT: tests avec gettype(), il me renvoie "string". Mais si je change foreach ainsi:
[php]
foreach ($_POST as $var => $value) {
$vals[] = intval($value);
} [/php]
Il me renvoie "integer", mais ma boucle ne fonctionne toujours pas.... $x est lui aussi considéré comme integer....c'est à n'y rien comprendre :roll: