Forum de discussion et d'aide au php
Vous n'êtes pas identifié.
|
Regles d'utilisation des forums : pensez à toujours les respecter si vous désirez obtenir des réponses rapides. FAQ : pensez à toujours chercher dedans si la réponse à votre question est dedans. Proposez vos news : si vous avez un evenement à annoncer le chat : venez discuter de php. |
||
Voila, j'ai un probléme apparamment PHP ne reconnait pas le champ name du formulaire de la page d'avant. Comme c'est un tableau à deux dimensions contenant uniquement des cases à cocher, je dois tester un à un les champs pour savoir si j'enregistre dans la base ou non.
Il apparait que PHP ne reconnait pas le nom du champ alors qu'ils sont bien identiques.
Le Tableau Modifiable
$nom = 0;
$i = 0;
while ($i < 15)
{
$DateTIME = DateNumero($numero);
$explode = explode(' ', $DateTIME);
$DateRU = $explode[0];
$explode = explode('-', $DateRU);
$y = $explode[2];
$m = $explode[1];
$d = $explode[0];
$array = array($y, $m, $d);
$DateFR = implode("-", $array);
echo "<TR>";
echo "<TH> $DateFR </TH>";
$j = 0;
while ($j < 12)
{
$livraison = CocheLivraison($j+1,$DateTIME);
If ($livraison <> "")
{
echo "<TD align=center>";
echo '<INPUT type="checkbox" value="1" checked name='.$DateTIME.'/'.$j.'>';
echo "</TD>";
}
Else
{
echo "<TD align=center>";
echo '<INPUT type="checkbox" value="1" name='.$DateTIME.'/'.$j.'>';
echo "</TD>";
};
$j = $j + 1;
};
echo "</TR>";
$i= $i + 1;
$numero = $numero + 1;
};La page Enregistrant les résultats
$date = $_POST['DateSaisie']; //ce POST marche bien
$explode = explode('/', $date);
$y = $explode[2];
$m = $explode[1];
$d = $explode[0];
$array = array($y, $m, $d);
$DateRU = implode("/", $array);
$array = array($DateRU,'00:00:00');
$DateTIME = implode(" ", $array);
$num = DatePlanning($DateTIME);
$numero = $num[0];
$i = 0;
while ($i < 15)
{
$DateTIME = DateNumero($numero);
$j = 0;
while ($j < 12)
{
$valeur = $_POST["$DateTIME/$j"]; //c'est celui la qui pose problème
If ($valeur = 1)
{
InsertLivraison($j+1,$DateTIME);
};
$j = $j + 1;
};
$i= $i + 1;
$numero = $numero + 1;
};Hors ligne
verifie avec un echo ton $DateTIME pour voir ce qui transite, met une condition de type empty pour verifier que ta variable est bien attribué a une valeur, dit moi ce qu'il en est ensuite.
Hors ligne
Notice: Undefined index: 2008-01-01 00:00:00/0
DateTIME = 2008-01-01 00:00:00
j = 0
(c'est bien à l'identique du tableau HTML) car le code source donne
<INPUT type="checkbox" value="1" checked name=2008-01-01 00:00:00/0>
Hors ligne
essaye j='0';
mais ce qui me turlupine c'est:
["$DateTIME/$j"]
car la apparament ca essaye de diviser avec 0 hors la division par zero est normalement impossible
Dernière modification par Asherah (05-04-2008 08:21:55)
Hors ligne
normalement il ne divise pas car c'est entre "", j'avais eu le message d'erreur quand j'avais mis entre quotes.
j='0' n'a rien changé.
j'ai enlevé les / et remplacé juste par un espace, toujours le meme probléme !
Dernière modification par DarkKnife (05-04-2008 08:26:22)
Hors ligne
bah je l'ai supprimé le / , cété just pr separé les deux variables, maintenant j'ai juste un espace entre les deux variables. mais ca n'a rien changé au probléme. il ne reconnait pas le nom du champ HTML.
Hors ligne
remplace:
<INPUT type="checkbox" value="1" checked name='.$DateTIME.'/'.$j.'>';
par
<INPUT type="checkbox" value="1" checked name='.$DateTIME.$j.'>';
et ensuite
ca:
$valeur = $_POST["$DateTIME/$j"];
par
$valeur = $_POST[$DateTIME.$j];
et ca devrait aller mieu ![]()
Hors ligne
après les modifications apportés, le probléme reste toujours inlassablement..
je ne sais vraiment pas ce qui cloche
Hors ligne
es tu sur que les deux variables '.$DateTIME.$j.' sont identique sur le formulaire et sur le traitement?
car si ce n'est pas le cas ca ne marcheras pas. fait un echo sur les deux pages pour verifier.
Hors ligne
oui c'est bien pareil
Hors ligne