[RESOLU] Boucle dans includes ?

dooki
Invité n'ayant pas de compte PHPfrance

06 janv. 2020, 15:42

Bonjour,
Aprés avoir fait une requète qui marche en allant chercher dans la bdd pour avoir accés aux informations d'un user,
j'ai utilisé la boucle foreach ce qui me permettait d'avoir accés aux infos

Code : Tout sélectionner

if(isset($_GET['id']) AND $_GET['id'] > 0 ) { $getid= intval($_GET['id']); $requser = $bdd->prepare('SELECT * from users WHERE id = ?'); $requser->execute(array($getid)); $userinfo = $requser->fetch();
pour ensuite un peu plus loin faire :

Code : Tout sélectionner

Profil de <?php echo $userinfo['pseudo']; ?> ... <?php } ?>

(fermeture de la boucle a la fin)

J'essaye maintenant de séparer la première partie de la deuxième en includant la partie code/requètes php dans la partie vue du profil. Malheuresement PHP ne comprends pas malgré l'include que l'accolade { se finit dans le deuxieme fichier .. Si vous avez des conseils ?

dooki
Invité n'ayant pas de compte PHPfrance

06 janv. 2020, 15:45

Petite erreur de ma part, je n'utilise pas du tout un foreach ^^ un fetch

Mammouth du PHP | 1967 Messages

06 janv. 2020, 15:49

Une accolade ne peut pas se terminer dans un autre fichier.

mais tu peux chercher à comprendre ce que contiendra $userinfo si ta condition n'est pas remplie et faire une condition approprié dans le fichier principal.
Spols
pour les fan de rubik's cube ou pour les curieux ==> le portail francophone du rubik's cube

dooki
Invité n'ayant pas de compte PHPfrance

06 janv. 2020, 16:00

Si la condition n'est pas remplie $userinfo ne serait pas créer, elle ne contiendrait rien ducoup,
mais tu parlais peut être du else.
Si je fais une autre condition dans le fichier principal, je n'aurais pas accés à la variable $userinfo car elle se trouve dans l'autre fichier, faudrait-il que je mette $userinfo en variable globale??

dooki
Invité n'ayant pas de compte PHPfrance

06 janv. 2020, 16:07

Bon bah j'ai fermé la condition dans le fichier php et j'ai refais une condition dans le fichier vue et apparement il a reconnu la variable $userinfo qui se trouvait dans l'autre fichier ...
Et il n'y a plus d'erreurs.
Merci pour tes conseils !!

Mais ducoup l'include a permis d'inclure la variable dans le fichier vue si je me trompe pas ?

Mammouth du PHP | 1967 Messages

06 janv. 2020, 17:39

Pas toute à fait mais presque.

Un include inclus du code php si ce code php défini une variable celle ci est à portée dans le reste du code. c'est une question de portée de variable
Mais un code à inclure doit être valide en lui même c'est pourquoi tu dois fermer toutes tes accolades dans chaque fichier.

Concernat Else, c'est une possibilité.
l'autre étant de définir ta variable avant la condition elle sera écrasé si la condition est remplie et restera intacte dans le cas contraire.
une autrre possibilité est de gardé le fait que la variable n'éxiste pas et tester la condition avec isset()
Spols
pour les fan de rubik's cube ou pour les curieux ==> le portail francophone du rubik's cube