Mélanger du php dans du html
Résolu/Fermé
A voir également:
- Mélanger du php dans du html
- Editeur html - Télécharger - HTML
- Easy php - Télécharger - Divers Web & Internet
- Br html - Forum HTML
- Espace en html - Astuces et Solutions
- Retour a la ligne php ✓ - Forum PHP
8 réponses
Jisig
Messages postés
83
Date d'inscription
mercredi 30 avril 2014
Statut
Membre
Dernière intervention
2 juin 2014
8
13 mai 2014 à 12:14
13 mai 2014 à 12:14
NON malheureux ! je t'arrête avant de lire le tout ! jamais un session_start(); avant un affichage quelconque !
Peut-être de là que vient le problème ?
Peut-être de là que vient le problème ?
Nhay
Messages postés
838
Date d'inscription
vendredi 2 novembre 2012
Statut
Membre
Dernière intervention
17 décembre 2015
126
13 mai 2014 à 12:45
13 mai 2014 à 12:45
Je pense que c'est surtout l'absence d'accolade avant son else qui pose problème.
Tu l'ouvre au précédent if sans jamais la refermer.
essaye donc de remplacer
par un truc du genre :
Tu l'ouvre au précédent if sans jamais la refermer.
essaye donc de remplacer
else if ($user_infos['Statut'] == "Membre") }
par un truc du genre :
} else if ($user_infos['Statut'] == "Membre"){
Jisig
Messages postés
83
Date d'inscription
mercredi 30 avril 2014
Statut
Membre
Dernière intervention
2 juin 2014
8
13 mai 2014 à 12:47
13 mai 2014 à 12:47
Est-ce que ton serveur affiche les erreurs au moins ? o:
Merci à tous pour vos réponse !!
L'erreur affichée est la suivante : Parse error: syntax error, unexpected T_ELSE in C:\wamp\www\Formulaire\menu.php on line 47
D'avance merci
L'erreur affichée est la suivante : Parse error: syntax error, unexpected T_ELSE in C:\wamp\www\Formulaire\menu.php on line 47
D'avance merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Jisig
Messages postés
83
Date d'inscription
mercredi 30 avril 2014
Statut
Membre
Dernière intervention
2 juin 2014
8
Modifié par Jisig le 13/05/2014 à 14:06
Modifié par Jisig le 13/05/2014 à 14:06
et bien oui tu mets
c'est plutôt clair p: c'est syntaxiquement incorrect :p
https://www.php.net/manual/fr/control-structures.elseif.php
Même une feuille de papier est plus légère si on la porte à deux.
<?php else if ($user_infos['Statut'] == "Membre") } ?>
c'est plutôt clair p: c'est syntaxiquement incorrect :p
https://www.php.net/manual/fr/control-structures.elseif.php
Même une feuille de papier est plus légère si on la porte à deux.
Jisig
Messages postés
83
Date d'inscription
mercredi 30 avril 2014
Statut
Membre
Dernière intervention
2 juin 2014
8
13 mai 2014 à 14:23
13 mai 2014 à 14:23
N'oublie pas le résolu p:
Jisig
Messages postés
83
Date d'inscription
mercredi 30 avril 2014
Statut
Membre
Dernière intervention
2 juin 2014
8
13 mai 2014 à 14:42
13 mai 2014 à 14:42
si tu pouvais renvoyer ton code modifier afin d'y voir plus clair :p
Voici :
Le problème est que je ne récupère pas correctement le pseudo de la page de connexion, du coup il affiche toujours le menu complet
<a href="index.php">Déconnection</a><br><br> <?php session_start(); ?> <?php //affichage des données: echo( " Vous etes connecte en tant que : {$_SESSION['Pseudo']} " ); ?> <?php // Connexion au serveur $hostname= "localhost"; $database = "azerty"; $username= "root"; $password= "azerty"; $db = mysql_pconnect($hostname, $username, $password) or trigger_error(mysql_error(),E_USER_ERROR); // Récupération des données depuis la base de données mysql_select_db($database, $db); $verif_query = sprintf("SELECT * FROM inscription "); $verif = mysql_query($verif_query, $db) or die(mysql_error()); $user_infos = mysql_fetch_assoc($verif); $results = mysql_num_rows($verif); if ($results) { $_SESSION['Pseudo'] = $user_infos['Pseudo']; if ($user_infos['Statut'] == "Administrateur") { ?> <br></br> <center> <fieldset><legend><b><FONT size="4pt">Veuillez choisir une option :</FONT></b></legend> <br></br> <TABLE BORDER="2" cellpadding="12" cellspacing="10"> <TR> <TH> <form method="post" action="inserer.php"> <input type="submit" value="Inserer donnees"> </form> </TH> </TR> <TR> <TH> <form method="post" action="affichage.php"> <input type="submit" value="Afficher donnees"> </form> </TH> </TR> <TR> <TH> <form method="post" action="suppression.php"> <input type="submit" value="Supprimer donnees"> </form> </TH> </TR> </TABLE></fieldset> </center> <?php if ($results) { $_SESSION['Pseudo'] = $user_infos['Pseudo']; if ($user_infos['Statut'] == "Membre") { ?> <br></br> <center> <fieldset><legend><b><FONT size="4pt">Veuillez choisir une option :</FONT></b></legend> <br></br> <TABLE BORDER="2" cellpadding="12" cellspacing="10"> <TR> <TH> <form method="post" action="inserer.php"> <input type="submit" value="Inserer donnees"> </form> </TH> </TR> <TR> <TH> <form method="post" action="affichage.php"> <input type="submit" value="Afficher donnees"> </form> </TH> </TR> </TABLE></fieldset> </center> <?php }}}} ?>
Le problème est que je ne récupère pas correctement le pseudo de la page de connexion, du coup il affiche toujours le menu complet
Jisig
Messages postés
83
Date d'inscription
mercredi 30 avril 2014
Statut
Membre
Dernière intervention
2 juin 2014
8
Modifié par Jisig le 13/05/2014 à 14:56
Modifié par Jisig le 13/05/2014 à 14:56
Je me suis permis de corrigé un peu ton code afin que tu y voies plus clair déjà
(session_start(); doit être avant tout affichage !! c'est impératif !
EDIT : J'ai encore corrigé une ligne
Même une feuille de papier est plus légère si on la porte à deux.
(session_start(); doit être avant tout affichage !! c'est impératif !
<?php session_start(); //affichage des données: echo "<a href="index.php">Déconnection</a><br><br>"; echo "Vous etes connecte en tant que : {$_SESSION['Pseudo']}"; // Connexion au serveur $hostname= "localhost"; $database = "azerty"; $username= "root"; $password= "azerty"; $db = mysql_pconnect($hostname, $username, $password) or trigger_error(mysql_error(),E_USER_ERROR); // Récupération des données depuis la base de données mysql_select_db($database, $db); $verif_query = sprintf("SELECT * FROM inscription "); $verif = mysql_query($verif_query, $db) or die(mysql_error()); $user_infos = mysql_fetch_assoc($verif); $results = mysql_num_rows($verif); if ($results) { $_SESSION['Pseudo'] = $user_infos['Pseudo']; if ($user_infos['Statut'] == "Administrateur") { ?> <br/> <center> <fieldset><legend><b><FONT size="4pt">Veuillez choisir une option :</FONT></b></legend> <br></br> <TABLE BORDER="2" cellpadding="12" cellspacing="10"> <TR> <TH> <form method="post" action="inserer.php"> <input type="submit" value="Inserer donnees"> </form> </TH> </TR> <TR> <TH> <form method="post" action="affichage.php"> <input type="submit" value="Afficher donnees"> </form> </TH> </TR> <TR> <TH> <form method="post" action="suppression.php"> <input type="submit" value="Supprimer donnees"> </form> </TH> </TR> </TABLE></fieldset> </center> <?php elseif ($user_infos['Statut'] == "Membre") { ?> <br></br> <center> <fieldset><legend><b><FONT size="4pt">Veuillez choisir une option :</FONT></b></legend> <br></br> <TABLE BORDER="2" cellpadding="12" cellspacing="10"> <TR> <TH> <form method="post" action="inserer.php"> <input type="submit" value="Inserer donnees"> </form> </TH> </TR> <TR> <TH> <form method="post" action="affichage.php"> <input type="submit" value="Afficher donnees"> </form> </TH> </TR> </TABLE></fieldset> </center> <?php }}} ?>
EDIT : J'ai encore corrigé une ligne
Même une feuille de papier est plus légère si on la porte à deux.
Jisig
Messages postés
83
Date d'inscription
mercredi 30 avril 2014
Statut
Membre
Dernière intervention
2 juin 2014
8
Modifié par Jisig le 13/05/2014 à 15:01
Modifié par Jisig le 13/05/2014 à 15:01
Ha oui mais c'est logique ! ^-^
Si tu n'as pas de WHERE dans ta requête tu risques à coup sûr de toujours prendre la première ligne de ta table !!
Jisig
Même une feuille de papier est plus légère si on la porte à deux.
$verif_query = sprintf("SELECT * FROM inscription ");
Si tu n'as pas de WHERE dans ta requête tu risques à coup sûr de toujours prendre la première ligne de ta table !!
Jisig
Même une feuille de papier est plus légère si on la porte à deux.
Jisig
Messages postés
83
Date d'inscription
mercredi 30 avril 2014
Statut
Membre
Dernière intervention
2 juin 2014
8
13 mai 2014 à 15:08
13 mai 2014 à 15:08
Heuu ton $_SESSION['Pseudo'] est défini après ta requête ^^' tu devrais avoir un $_POST ou GET venant d'un formulaire d'une autre page ou quelque chose de similaire.
Jisig
Messages postés
83
Date d'inscription
mercredi 30 avril 2014
Statut
Membre
Dernière intervention
2 juin 2014
8
Modifié par Jisig le 13/05/2014 à 15:42
Modifié par Jisig le 13/05/2014 à 15:42
mmh bon je vais te faire un petit formulaire :
ensuite dans ta page
Tu peux déjà tester ça !
<form action='nom_de_la_page_ou_tu_l_envoies.php' method='post'> <input type='text' name='pseudo'/> <input type='submit' value='envoyer'/> </form>
ensuite dans ta page
$verif_query = sprintf("SELECT * FROM inscription WHERE Pseudo = " . $_POST['Pseudo']);
Tu peux déjà tester ça !
Jisig
Messages postés
83
Date d'inscription
mercredi 30 avril 2014
Statut
Membre
Dernière intervention
2 juin 2014
8
Modifié par Jisig le 13/05/2014 à 15:53
Modifié par Jisig le 13/05/2014 à 15:53
Donc si j'ai bien compris tu dois juste changer ta requête comme cela
Même une feuille de papier est plus légère si on la porte à deux.
$verif_query = sprintf("SELECT * FROM inscription WHERE Pseudo = " . $_SESSION['Pseudo']);
Même une feuille de papier est plus légère si on la porte à deux.
J'ai fais ça :
session_start(); //affichage des données: echo "Vous etes connecte en tant que : {$_SESSION['Pseudo']}"; // Connexion au serveur $hostname= "localhost"; $database = "azerty"; $username= "root"; $password= "azerty"; $db = mysql_pconnect($hostname, $username, $password) or trigger_error(mysql_error(),E_USER_ERROR); $pseudo = $_SESSION['Pseudo']; // Récupération des données depuis la base de données mysql_select_db($database, $db); $verif_query = sprintf("SELECT * FROM inscription where Pseudo = '$pseudo'"); $verif = mysql_query($verif_query, $db) or die(mysql_error()); $user_infos = mysql_fetch_assoc($verif); $results = mysql_num_rows($verif); if ($results) { $_SESSION['Pseudo'] = $user_infos['Pseudo']; if ($user_infos['Statut'] == "Administrateur") {
Jisig
Messages postés
83
Date d'inscription
mercredi 30 avril 2014
Statut
Membre
Dernière intervention
2 juin 2014
8
13 mai 2014 à 16:01
13 mai 2014 à 16:01
Pourquoi $pseudo dans des ' ' ?
Jisig
Messages postés
83
Date d'inscription
mercredi 30 avril 2014
Statut
Membre
Dernière intervention
2 juin 2014
8
13 mai 2014 à 16:07
13 mai 2014 à 16:07
Il t'affiche une erreur quelque part ou .. ?