C'est pas faux.
Si tu fais ton print_r avant le array_push, qu'est que cela donne ?
Bonjour à tous et merci d'être ici,
Voila j'apprends à programmer depuis bientôt trois mois, je suis un gros débutant.
Et je rencontre un petit problème avec mon code.
Ce que je fais
J'affiche une phrase aléatoirement (qui est dans une base de donné, dans une table sentenceen(id, type, phrases)).
Et à chaque clique de l'utilisateur la phrase change et je met l'id des phrases dans une session crée avec session_start();
PAGE D'ACCUEIL
SCRIPT PHP qui change la phrase et ajoute les id dans une variable.
Ce que je veux
j'aimerais récupérer l'id des phrases affichées et à chaque clique de l'utilisateur, les stockées dans la session de l'utilisateur et crée un script afin qu'il ne puisse pas retomber sur des phrases déjà vu.
Ce que j'obtiens
Dès que je clique sur mon bouton cela ne remplis pas la variable $_SESSION avec l'ancienne affiche juste deux fois le même id.
(Exemple : Array ( [0] => 101 [1] => 101 )
Donc je n'arrive même pas à ajouter les id dans une variable... C'est très frustrant car cela fait trois jours que je travail sur ce code et je suis complètement perdu.
Si quelqu'un de gentil peut m'aider ce serait vraiment cool car je ne pense pas pouvoir y arriver sans aide.
11 réponses
Cela fait une nouvelle erreur :
Notice: Undefined variable: _SESSION in C:\UwAmp\www\DEBATONS\load-type-phrase.php on line 16
Ah oui, tu n'as pas fait de session_start(); sur cette page
Bonsoir,
Pour ton problème, a chaque fois que tu appelles ta phrase, tu vides le tableau qui stocke tes id avec cette instruction:
donc il est normale que tu n'est qu'un id à chaque fois.
Salut Carouge10 super merci du conseil je ne savais pas !
Donc j'ai bien supprimé cette partie mais j'ai une erreur...
Dis-moi ton erreur
Ok ça marche !
Donc après modification du code :
J'obtiens cette erreur :
Warning: array_push() expects parameter 1 to be array, null given in C:\UwAmp\www\DEBATONS\load-type-phrase.php on line 16
C'est ce que je pensais.
Avant de faire le "array_push", il faut vérifier que "$_SESSION['stockID']" existe et que ce soit un array
Oh je vois !
Mais ce qui est bizarre c'est que dans ma page index je l'ai déjà déclaré comme tableau...
$_SESSION['stockID'] = array();
et le session_start(); devrait le garder en mémoire nan ?
OMG BRAVO !!
Tu as réussi !!!!
Le problème venait donc de session-start();
J'ai donc mis le session_start dans mon autre page PHP et ça marche !!
J'upload la réponse ici si quelqu'un rencontre le même problème que moi
Merci à toi Carouge10 tu es un génie !!!!! 3 jours que je suis dessus et en 15 minutes c'est finis !
Super je passe donc à l'étape finale de mon projet qui est de ne plus afficher les phrases déjà affiché.
Merci Carouge10 vraiment
Je t'en prie.
Un oeil externe est souvent le bienvenu.
De plus, je t'ai montré un peu qu'il faut débugger ton code quand cela ne fonctionne pas et vérifier au fur et à mesure que tes varaibles contiennent bien ce que tu souhaites.
90% du temps, l'erreur fournit par php aide beaucoup.