Variable Tableau qui ne passe pas en condition ( ! ) - PHP - Programmation
Marsh Posté le 23-07-2012 à 10:28:29
SVP je vais devenir chauve à force de me tirer les cheveux,
je précise que dans ma page de contrôle je récupère bien les valeurs, le count fonctionne bien, il m'affiche combien de cellules sont entrées.... mais j'ai enlevé tout le superflu a savoir les $query.$i, le or die, remplacé le for par for ($i=0 ; $i < $compteur ; $i++ )
le compteur est juste $compteur = count($valid_manager);
et non ça ne marche toujours pas... HELP
Marsh Posté le 23-07-2012 à 11:16:55
ça vas probablement pas résoudre ton problème. Mais dans ce cas un foreach est plus indiqué :
Code :
|
PS : En fait si ça peut t'aider car je suis pas sur que ce type de concaténation soit copain avec les tableau. Il me semble bien que les tableaux à index ne peuvent être concaténé qu'avec l'opérateur ".". ($var = "Une chaîne".$table[index]."Une autre chaîne" )
Edit : Pourquoi ne pas produire un tableau de requête plutôt qu'un objet tout sale. (souligné dans le code) C'est plus facile pour naviguer ensuite dedans. Bien que je ne comprenne pas très bien l’intérêt de stocker les requêtes vue qu'elles sont exécutés immédiatement.
Edit2 : Rein à voir avec ton problème mais quel est l’intérêt d'ouvrir la base à chaque itération de la boucle. L’ouvrir une fois au début n'est-il pas suffisant?. Sachant de plus qu'il faudrait la refermer à chaque fois (ou à la fin si tu ne l'ouvre qu'une fois)
Marsh Posté le 23-07-2012 à 14:15:47
Sortir $db = new CLconnexion(); de la boucle. Ouvre/fermer la BD à chaque tour de boucle est une grosse perte de temps (perfs).
Par ailleurs, ne pas mettre le count() dans le for, il est réévalué à chaque tour de boucle
$date_etap_valid sort d'où si c'est une date au format yyy-mm-dd, alors il faut mettre al valeur entre quotes dans la requête sql pour l'affectation!
Code :
|
Marsh Posté le 23-07-2012 à 14:24:13
Merci de ces réponses complètes, enfaite apres moultes tentatives et recherce sur internet, mon code à fonctionner, et je l'ai rectifié graçe à vous merci ! Voila le code :
Code :
|
Marsh Posté le 23-07-2012 à 09:10:38
Bonjour à tous, j'au un petit problème fâcheux avec une variable qui vient d'un formulaire,
( la ligne du formulaire ->
echo'<td align="center"> <input type="checkbox" name="validation_id_pole[]" value="'.$result->out_pole_emploi_id.'" /> </td>'
Voila, jusque la tout va bien, ensuite je transmet les infos au php,et dans le php je fais :
$valid_manager = $_POST['validation_id_pole'];
echo"$valid_manager[0]";
Pour voir si mon tableau est récupéré dans mon PHP, et bien oui les cases sont pleines, la super content , ça marche, mais problème, quand je mets cette pu***** de variable en condition, cela plante, avec évidement une magnifique page blanche ....
la finalité est d'inserrer les données dans la base par le biais de cette variable "tableau" par une boucle for, comme ceci ( mais même si dans un IF ça plante ??? ) :
for ($i=0 ; $i < count($valid_manager) ; $i++ ) {
$db = new CLconnexion();
$query.$i = " UPDATE OUT_BLA_BLA SET
BLA_BLA_manager='1',
BLA_BLA_DTC_manager=$date_etap_valid
WHERE
BLA_BLA_emploi_id = $valid_manager[$i]
";
$db->Open('magrossebase.net');
mysql_query($query.$i) or die(echo"mysql_error() </br> Erreur : Contactez le service informatique";
$db->Close();
}
PS : Merci ce votre aide
Message édité par Profil supprimé le 23-07-2012 à 10:01:59