Accueil
Forums
Turoriaux
Inscription
Connexion
Fil RSS
Bienvenue invité !
Samedi 22 Novembre 2008
Vous êtes ici: Crea-paradise.com > Forums > Entraide > PHP > Une variable dans une variable > Lecture du sujet

Une variable dans une variable

petit problème de code


1
Auteur Message
> Posté le : 08/06/2008 21h29
Avatar de Drahl


Groupe : Membres
Messages : 134

Voila j'aimerais mettre un tableau dans un tableau, voila en image :
Code PHP:
$_COOKIE['' . $donnees['ID'] . '']

mais ce bout de code ne marche pas, commen je doit l'écrire ?

Si vous pouviez m'aider, ça parai peu être idiot mais je sais absolument pas faire...
> Posté le : 08/06/2008 22h58
Aucun avatar


Groupe : Membres
Messages : 55

Désolé mais je peut pas te renvoyer l'appareil 

Un jour, Chuck Norris a voulu enseigner le Jeet Kun Do à de jeunes handicapés mentaux. C'est ainsi qu'est née la Tecktonic.


> Posté le : 09/06/2008 10h03
Avatar de lbeetls01


Groupe : Admins
Messages : 2070

Salut,
Et comme ça :
Code PHP:
$_COOKIE[$donnees['ID']]


As tu essayé de faire un echo de ta variable $donnees['ID'] pour voir si elle n'était pas vide ?
Quel est le problème exactement ?

Essaie de faire ça et donne nous le résultat :
Code PHP:
<?php
    echo 'COOKIE : '.$_COOKIE[$donnees['ID']].'<br />';
    echo 'donnees[ID] : '.$donnees['ID'].'<br />';
    echo 'donnees : '.$donnees;
?>


> Posté le : 09/06/2008 18h35
Avatar de Drahl


Groupe : Membres
Messages : 134

oui la variable $donnees existe puisque c'est ce que je récupère du mysql_query ('SELECT...
donc $donnees['ID'] existe aussi forcément puisque je m'en sert juste aprés.

Et pour le bout de code que tu m'as donné :
Code PHP:
$_COOKIE[$donnees['ID']]

ça ne marche pas!!
> Posté le : 09/06/2008 19h09
Avatar de lbeetls01


Groupe : Admins
Messages : 2070

Ok,
Peut tu nous donner le résultat de ce code ?
Code PHP:
<?php
    echo 'COOKIE : '.$_COOKIE[$donnees['ID']].'<br />';
    echo 'donnees[ID] : '.$donnees['ID'].'<br />';
    echo 'donnees : '.$donnees;
?>


Sinon essaie peut être comme ça :
Code PHP:
$donneesID = $donnees['ID'];
echo $_COOKIE[$donneesID];


> Posté le : 09/06/2008 19h20
Avatar de Drahl


Groupe : Membres
Messages : 134

oui comme ça ça marche :
Code PHP:
$donneesID = $donnees['ID'];
echo $_COOKIE[$donneesID];
puisque c'est ce que j'utilise en ce moment pour palier a mon probleme, mais je ne veux pas rajouté une ligne de code en plus qui pourrais m'induire en erreur, je veux directement utilisé ce que me renvois ma BDD.

Résultat du code :
Code PHP:
<?php
    echo 'COOKIE : '.$_COOKIE[$donnees['ID']].'<br />';
    echo 'donnees[ID] : '.$donnees['ID'].'<br />';
    echo 'donnees : '.$donnees;
?>

Code :
COOKIE : NULL (il n'y a rien qui s'affiche)
    donnees[ID] : 1 (ca ma clef de BDD)
    donnees : Array (normal puisque c'est ma réponse à mysql_query)
?>
> Posté le : 09/06/2008 20h12
Aucun avatar


Groupe : Membres
Messages : 57

Il me semble que c'est possible avec la fonction eval mais je suis pas sur, j'ai pas eu trop le temps de regarder.

bye

Tout le monde savait que c'était impossible à faire, jusqu'à ce que quelqu'un arrive, qui ne le sache pas, et qui le fasse
> Posté le : 09/06/2008 20h26
Avatar de lbeetls01


Groupe : Admins
Messages : 2070

Et comme ça :
Code PHP:
$_COOKIE[($donnees['ID'])]


> Posté le : 09/06/2008 20h33
Avatar de Drahl


Groupe : Membres
Messages : 134

Ça ne marche pas non plus. il ne récupère pas la valeur de l'ID.

Je crois que ce que je demande est pas possible, je vais rester sur ce que je fait déjà :
Code PHP:
$id = $donnees['ID'];
$_COOKIE['$id']


Si vous trouvez tant mieux, sinon merci de votre aide...
> Posté le : 14/06/2008 16h45
Avatar de Drahl


Groupe : Membres
Messages : 134

en fait c'était faux le code que j'ai donné juste au dessus, il faut que j'utilise :
Code PHP:
$id = $donnees['ID'];
$_COOKIE[$id];

sans les cote ' ' pour le $id.

Sinon comment on fait pour modifier un cookie à l'interieure d'un script ?
Est-ce que ça c'est juste :
Code PHP:
$_COOKIE[$id] = 1;
> Posté le : 15/06/2008 18h43
Avatar de lbeetls01


Groupe : Admins
Messages : 2070

Il me semble que oui. Sa fait un moment que j'ai plus retouché aux cookies, mais sa me semble juste =), à tester.


> Posté le : 07/09/2008 14h24
Avatar de lbeetls01


Groupe : Admins
Messages : 2070

J'ai trouvé une solution qui fonctionne chez moi =).
Vu que tu dois transmettre un ID, ce sera un nombre entier ?
Dans ce cas tu peu faire :
Code PHP:
$_COOKIE[intval($donnees['ID'])];


> Posté le : 07/09/2008 21h26
Avatar de Cheaterman


Groupe : Membres
Messages : 270

Citation: Drahl
puisque c'est ce que j'utilise en ce moment pour palier a mon probleme

C'est pas pour faire mon chieur (même si c'est encore trop souvent que je viens pour poster ce genre de choses) mais il me semble d'une importance capitale de souligner cette faute majeure que l'on voit trop souvent dans les CV/Lettres de motivation et que l'on entend trop souvent à l'oral.
En effet,
Citation: Wikipedia
Le verbe pallier est transitif direct : il admet donc un COD, sans préposition. On écrit « pallier une difficulté, un problème » et non « pallier à une difficulté, à un problème. »

L'expression « pallier à » renvoie en fait à « remédier à ».


Voili voilou pour le point de grammaire du jour.

Ensuite Drahl concernant ton problème, je ne pense pas que créer un nouvelle variable nuise à la lisibilité du code et, même si ce n'est guère optimisé, il est parfois nécessaire en PHP de faire des concessions du genre.
1