A voir également:
- Affichage de code php dans des zones de texte
- Code ascii de a - Guide
- Code de déverrouillage oublié - Guide
- Zone de telechargement - Accueil - Outils
- Code puk bloqué - Guide
- Excel cellule couleur si condition texte - Guide
14 réponses
T-SonS
Messages postés
233
Date d'inscription
dimanche 6 décembre 2009
Statut
Membre
Dernière intervention
24 mars 2016
49
28 mai 2012 à 12:19
28 mai 2012 à 12:19
Hello,
ton php n'est pas refermé?
ton php n'est pas refermé?
Si. En fait, j'ai oublié de préciser que je l'ai mis dans un <input value="">.
Merci
Merci
Utilisateur anonyme
29 mai 2012 à 10:04
29 mai 2012 à 10:04
Bonjour
Peux-tu nous montrer le code complet de la page (s'il n'est pas trop long, et en cachant tes mots de passe s'il y a lieu) ? Ou au moins les quelques lignes avant la partie qui s'affiche ?
Ton fichier a-t-il bien une extension en .php ?
Travailles-tu en local ou en ligne ? Et si c'est en local, appelles-tu bien ta page avec une arl du type http://localhost/qqchose ou http://127.0.0.1/qqchose, ou te contentes-tu de double-cliquer sur le nom du fichier ?
Peux-tu nous montrer le code complet de la page (s'il n'est pas trop long, et en cachant tes mots de passe s'il y a lieu) ? Ou au moins les quelques lignes avant la partie qui s'affiche ?
Ton fichier a-t-il bien une extension en .php ?
Travailles-tu en local ou en ligne ? Et si c'est en local, appelles-tu bien ta page avec une arl du type http://localhost/qqchose ou http://127.0.0.1/qqchose, ou te contentes-tu de double-cliquer sur le nom du fichier ?
Bonjour,
la page a l'extension .php et voici le code complet :
<?php
// je vérifie que le visiteur a rempli le formulaire de connexion de la page inscription.html
if (isset($_POST['valider'])&& $_POST['valider'] == 'OK'){
//si pseudo et passwd existent et les variables qui les désignent ne sont pas vides
if ((isset($_POST['pseudo']) && !empty($_POST['pseudo'])) && (isset($_POST['passwd']) && !empty($_POST['passwd']))) {
//j'inclus les fonctions que j'ai déjà écrites
include('fonctions.php');
//je me connecte à ma base
connectMaBase();
// je teste si la table client_cli de la base contient le pseudo et le mot de passe entrés
//La fonction mysql_escape_string va protéger tous les caractères de la chaîne $_POST['pseudo'] et va retourner la valeur protégée
// afin de pouvoir l'utiliser directement dans une requête mysql_query().
//je dénombre les clients ayant le pseudo et le mot de passe saisis par le visiteur
$sql = 'SELECT count(*) FROM client_cli WHERE cli_pseudo="'.mysql_escape_string($_POST['pseudo'])./*là je crypte le mot de passe et il faut en générer un nouveau en cas de perte que je renverrai par email au détenteur du compte.*/'" AND cli_passwd="'.md5(mysql_escape_string($_POST['passwd'])).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);
//je libère la variable contenant la requête sql
mysql_free_result($req);
//je me déconnecte de la base
mysql_close();
// si on obtient une réponse, alors l'utilisateur est un membre
//on peut donc lui ouvrir une session, si les données qu'il a fournies sont conformes à celles se trouvant dans la table
if ($data[0] == 1) {
session_start();
//Toutes les variables que j'avais utilisées avant, transmettent leur valeur aux variables de session.
$_SESSION['pseudo'] = $_POST['pseudo'];
header('Location: page_client.php');
exit();
}
// si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son pseudo, soit dans son mot de passe.
elseif ($data[0] == 0) {
$erreur = ' (Identifiant) Login ou mot de passe erroné! !<br /> Veuilez re-saisir votre pseudo et votre mot de passe s\'il vous plaît.';
}
// sinon, il y a un gros problème
else {
$erreur = 'Problème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}
}
else {
$erreur = 'Au moins un des champs (identifiant ou mot de passe) est vide.';
}
}
?>
<html>
<head>
<title>Connexion à l'espace membre</title>
<link rel="stylesheet" type="text/css" href="client.css" />
</head>
<body>
<div id="head" >
<form action="page_connexion.php" method="post">
<span class="identifiant" align="right">
Identifiant :
<br/>
<input type="text" name="pseudo" value="<?php if (isset($_POST['pseudo'])) print htmlentities(trim($_POST['pseudo'])); ?>" ><br />
<p><p/>
Mot de passe :
<br/>
<input type="password" name="passwd" value="<?php if (isset($_POST['passwd'])) echo htmlentities(trim($_POST['passwd'])); ?>" /><br />
<p><p/>
<input type="submit" name="valider" value="OK"/>
<p>
</p>
</span>
</form>
</div>
<div id="corps_principal">
<!-- Panneau de gauche-->
<div id="left_panel">
<p>
<ul>
<li><a href="index.html" title="www.rouenspectacle.franceserv.com">Accueil</a></li>
<br/>
<li><a href="categorisation_spectacles.html" title="Tous les spectacles">Catégorisation des spectacles</a></li>
<br/>
<li><a href="description_spectacles.html" title="A propos des spectacles">Description des spectacles</li>
<br/>
<li><a href="inscription_client.html" title="Créez votre compte">Inscription </a></li>
<br/>
<li><a href="contact.html" title="Contactez-nous">Contactez-nous</a></li>
<br/>
</ul>
</p>
<p><img src="demaison.jpg" alt="Demaison" height="100%" width="100%" /></p>
</div>
<!-- Onglets-->
<div id="menu_categorisation">
<ul id="onglets">
<li><a href=danse.html> Danse</a> </li>
<li><a href=musique.html> Musique</a> </li>
<li><a href=theatre.html> Théâtre</a> </li>
</ul>
</div>
<!-- Texte central-->
<div id="corps">
<?php
if (isset($erreur)) echo '<br /><br /><span class="erreur">'.$erreur.'<span>';
?>
</div>
</div>
<p>
</p>
<!-- Bloc du bas-->
<div id="bas"> bottom
</div>
</body>
</html>
//fin du code
commentaires:
Je travaille en local et j'utilise le logiciel easyphp.
la page a l'extension .php et voici le code complet :
<?php
// je vérifie que le visiteur a rempli le formulaire de connexion de la page inscription.html
if (isset($_POST['valider'])&& $_POST['valider'] == 'OK'){
//si pseudo et passwd existent et les variables qui les désignent ne sont pas vides
if ((isset($_POST['pseudo']) && !empty($_POST['pseudo'])) && (isset($_POST['passwd']) && !empty($_POST['passwd']))) {
//j'inclus les fonctions que j'ai déjà écrites
include('fonctions.php');
//je me connecte à ma base
connectMaBase();
// je teste si la table client_cli de la base contient le pseudo et le mot de passe entrés
//La fonction mysql_escape_string va protéger tous les caractères de la chaîne $_POST['pseudo'] et va retourner la valeur protégée
// afin de pouvoir l'utiliser directement dans une requête mysql_query().
//je dénombre les clients ayant le pseudo et le mot de passe saisis par le visiteur
$sql = 'SELECT count(*) FROM client_cli WHERE cli_pseudo="'.mysql_escape_string($_POST['pseudo'])./*là je crypte le mot de passe et il faut en générer un nouveau en cas de perte que je renverrai par email au détenteur du compte.*/'" AND cli_passwd="'.md5(mysql_escape_string($_POST['passwd'])).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);
//je libère la variable contenant la requête sql
mysql_free_result($req);
//je me déconnecte de la base
mysql_close();
// si on obtient une réponse, alors l'utilisateur est un membre
//on peut donc lui ouvrir une session, si les données qu'il a fournies sont conformes à celles se trouvant dans la table
if ($data[0] == 1) {
session_start();
//Toutes les variables que j'avais utilisées avant, transmettent leur valeur aux variables de session.
$_SESSION['pseudo'] = $_POST['pseudo'];
header('Location: page_client.php');
exit();
}
// si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son pseudo, soit dans son mot de passe.
elseif ($data[0] == 0) {
$erreur = ' (Identifiant) Login ou mot de passe erroné! !<br /> Veuilez re-saisir votre pseudo et votre mot de passe s\'il vous plaît.';
}
// sinon, il y a un gros problème
else {
$erreur = 'Problème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}
}
else {
$erreur = 'Au moins un des champs (identifiant ou mot de passe) est vide.';
}
}
?>
<html>
<head>
<title>Connexion à l'espace membre</title>
<link rel="stylesheet" type="text/css" href="client.css" />
</head>
<body>
<div id="head" >
<form action="page_connexion.php" method="post">
<span class="identifiant" align="right">
Identifiant :
<br/>
<input type="text" name="pseudo" value="<?php if (isset($_POST['pseudo'])) print htmlentities(trim($_POST['pseudo'])); ?>" ><br />
<p><p/>
Mot de passe :
<br/>
<input type="password" name="passwd" value="<?php if (isset($_POST['passwd'])) echo htmlentities(trim($_POST['passwd'])); ?>" /><br />
<p><p/>
<input type="submit" name="valider" value="OK"/>
<p>
</p>
</span>
</form>
</div>
<div id="corps_principal">
<!-- Panneau de gauche-->
<div id="left_panel">
<p>
<ul>
<li><a href="index.html" title="www.rouenspectacle.franceserv.com">Accueil</a></li>
<br/>
<li><a href="categorisation_spectacles.html" title="Tous les spectacles">Catégorisation des spectacles</a></li>
<br/>
<li><a href="description_spectacles.html" title="A propos des spectacles">Description des spectacles</li>
<br/>
<li><a href="inscription_client.html" title="Créez votre compte">Inscription </a></li>
<br/>
<li><a href="contact.html" title="Contactez-nous">Contactez-nous</a></li>
<br/>
</ul>
</p>
<p><img src="demaison.jpg" alt="Demaison" height="100%" width="100%" /></p>
</div>
<!-- Onglets-->
<div id="menu_categorisation">
<ul id="onglets">
<li><a href=danse.html> Danse</a> </li>
<li><a href=musique.html> Musique</a> </li>
<li><a href=theatre.html> Théâtre</a> </li>
</ul>
</div>
<!-- Texte central-->
<div id="corps">
<?php
if (isset($erreur)) echo '<br /><br /><span class="erreur">'.$erreur.'<span>';
?>
</div>
</div>
<p>
</p>
<!-- Bloc du bas-->
<div id="bas"> bottom
</div>
</body>
</html>
//fin du code
commentaires:
Je travaille en local et j'utilise le logiciel easyphp.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Utilisateur anonyme
29 mai 2012 à 13:33
29 mai 2012 à 13:33
Ça a l'air normal...
peux-tu mettre au début du script echo "coucou"; à la ligne juste après <?php, pour s'assurer que le php est bien interprété ?
peux-tu mettre au début du script echo "coucou"; à la ligne juste après <?php, pour s'assurer que le php est bien interprété ?
Je pense pas que le php est bien interprété parce que j'obtiens ça en retour:
<?php echo 'coucou'; if (isset($_POST['pseudo'])) echo htmlentities(trim($_POST['pseudo'])); ?>
<?php echo 'coucou'; if (isset($_POST['pseudo'])) echo htmlentities(trim($_POST['pseudo'])); ?>
Utilisateur anonyme
29 mai 2012 à 14:12
29 mai 2012 à 14:12
J'avais dit AU DEBUT du script, pas dans ton input.
Remets-le bien au début (ligne 2 du script, juste après <?php
Il n'y a rien d'autre d'anormal dans l'affichage ? Si le php n'est pas interpreté, tu devrais avoir aussi un tas de truc bizarres avant ton formulaire.
Tu utilises easyphp, mais as-tu l'habitude ? easyphp est-il bien lancé et, surtout, appelles-tu bien ta page avec une url en localhost ou en 127.0.0.1, ou bien en double-cliquant sur le nom du fichier ?
Merci de répondre à TOUTES les questions.
Remets-le bien au début (ligne 2 du script, juste après <?php
Il n'y a rien d'autre d'anormal dans l'affichage ? Si le php n'est pas interpreté, tu devrais avoir aussi un tas de truc bizarres avant ton formulaire.
Tu utilises easyphp, mais as-tu l'habitude ? easyphp est-il bien lancé et, surtout, appelles-tu bien ta page avec une url en localhost ou en 127.0.0.1, ou bien en double-cliquant sur le nom du fichier ?
Merci de répondre à TOUTES les questions.
J'ai mis la commande echo au tout début du script mais le php n'est pas interprêté parce que je n'ai rien en retour. Il n'y a rien d'affiché quand je donne cette instruction.
J'ai la dernière version de easyphp.
J'appelle toutes mes pages avec l'url : http://127.0.0.1/rouenspectacle/
Merci pour tes réponses
J'ai la dernière version de easyphp.
J'appelle toutes mes pages avec l'url : http://127.0.0.1/rouenspectacle/
Merci pour tes réponses
Utilisateur anonyme
29 mai 2012 à 15:29
29 mai 2012 à 15:29
Vu l'url, le code que tu nous montres est bien celui de la page index.php ?
Effectivement.
Mais j'ai vérifié l'existence d'un compte et d'un mot de passe dans une autre page php(page_connexion.php). J'ai affiché le code de cette page lors de ma réponse à "le père".
Mais j'ai vérifié l'existence d'un compte et d'un mot de passe dans une autre page php(page_connexion.php). J'ai affiché le code de cette page lors de ma réponse à "le père".
Utilisateur anonyme
29 mai 2012 à 15:51
29 mai 2012 à 15:51
Ne mélangeons pas tout
Ne parlons que d'une seule page à la fois, car quand tu dis des choses comme "le code de cette page", je ne sais absolument pas si tu parles de connexion.php ou d'index.php. ET je ne veux surtout pas le savoir pour l'instant.
1 - Quand tu tapes l'url http://127.0.0.1/rouenspectacle/, c'est bien la page index.php qui s'ouvre ?
2 - C'est bien dans cette page index.php que tu as mis, ligne 2 après <?php, un echo 'coucou'; qui ne produit pas d'affichage ?
Ne parlons que d'une seule page à la fois, car quand tu dis des choses comme "le code de cette page", je ne sais absolument pas si tu parles de connexion.php ou d'index.php. ET je ne veux surtout pas le savoir pour l'instant.
1 - Quand tu tapes l'url http://127.0.0.1/rouenspectacle/, c'est bien la page index.php qui s'ouvre ?
2 - C'est bien dans cette page index.php que tu as mis, ligne 2 après <?php, un echo 'coucou'; qui ne produit pas d'affichage ?
1 - Oui c'est la page index.php qui s'ouvre.
2 - C'est bien dans la page index que j'avais mis le code php. Mais, ce pourquoi le code n'a pas produit d'affichage, est que l'extension du fichier index était .html au lieu de .php, et je suis désolé pour cette erreur bête de ma part.
J'ai donc enregistré le fichier .html, sous un format .php et j'ai déplacé le fichier .html dans un autre répertoire, tout laissant le fichier .php dans le répertoire "www".
Encore désolé!!
Merci
2 - C'est bien dans la page index que j'avais mis le code php. Mais, ce pourquoi le code n'a pas produit d'affichage, est que l'extension du fichier index était .html au lieu de .php, et je suis désolé pour cette erreur bête de ma part.
J'ai donc enregistré le fichier .html, sous un format .php et j'ai déplacé le fichier .html dans un autre répertoire, tout laissant le fichier .php dans le répertoire "www".
Encore désolé!!
Merci
Utilisateur anonyme
29 mai 2012 à 16:20
29 mai 2012 à 16:20
Est-ce que tout marche maintenant, ou vois-tu toujours du code dans un champ <input> ?