Mot de passe pour page php
Résolu
florire
Messages postés
151
Date d'inscription
Statut
Membre
Dernière intervention
-
florire Messages postés 151 Date d'inscription Statut Membre Dernière intervention -
florire Messages postés 151 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'aimerais pouvoir bloqué une page de mon site par mot de passe mais pour compliqué la chose j'aimerais qu'il y ait plusieurs code valide (que je définit)
Dans ma base de donné j'ai créer une table "mot_de_passe" avec 2 colone.
1) Nom : id ; Type : int(11) ; Extra : AI
2) Nom : passe ; Type : VACHAR(10)
Version Php: 5.3
BDD : mysql
Erreur : Warning: mysql_query(): Access denied for user 'root'@'localhost' (using password: NO) in /home/u839528755/public_html/1/test1.php on line 12 Warning: mysql_query(): A link to the server could not be established in /home/u839528755/public_html/1/test1.php on line 12 Fatal error: Function name must be a string in /home/u839528755/public_html/1/test1.php on line 13
Merci d'avance pour votre aide
J'aimerais pouvoir bloqué une page de mon site par mot de passe mais pour compliqué la chose j'aimerais qu'il y ait plusieurs code valide (que je définit)
Dans ma base de donné j'ai créer une table "mot_de_passe" avec 2 colone.
1) Nom : id ; Type : int(11) ; Extra : AI
2) Nom : passe ; Type : VACHAR(10)
Version Php: 5.3
BDD : mysql
<?php
$dsn = 'mysql:host=mysql.hostinger.fr;port=3306;dbname=u839528755_jeu';
$username = 'AAAAAAAA';
$password = 'XXXXXXXX';
try {
$db = new PDO($dsn, $username, $password);
} catch(Exception $e) {
exit('Erreur : '.$e->getMessage());
}
$pass = $_POST['code'];
$pass_rechercher ="SELECT * FROM mot_de_passe where passe = '$pass'";
$requete=mysql_query ($pass_rechercher);
$nombre_pass = $mysql_num_rows($requete);
// Si le mot de passe n'a pas été envoyé ou n'est pas bon
if (!isset($_POST['code']) or $nombre_pass = 0)
// On affiche le formulaire
{
echo ' <form action="test1.php" method="post">
<p>
<input type="password" name="code" />
<input type="submit" value="Valider" />
</p>
</form>';
}
// Si le mot de passe a été envoyé et il est bon
if (isset($_POST['code']) AND $nombre_pass > 0)
{
echo'
Ici le contenue bloqué';
}
?>
Erreur : Warning: mysql_query(): Access denied for user 'root'@'localhost' (using password: NO) in /home/u839528755/public_html/1/test1.php on line 12 Warning: mysql_query(): A link to the server could not be established in /home/u839528755/public_html/1/test1.php on line 12 Fatal error: Function name must be a string in /home/u839528755/public_html/1/test1.php on line 13
Merci d'avance pour votre aide
A voir également:
- Mot de passe pour page php
- Trousseau mot de passe iphone - Guide
- Mot de passe - Guide
- Mot de passe administrateur - Guide
- Mot de passe bios perdu - Guide
- Voir mot de passe wifi android - Guide
3 réponses
Salut,
Ton erreur indique un problème de connexion à la base de données.
Vérifie que tes informations de connexions soit correctes (host mysql, numéro de port, username et password).
Bonne journée
Ton erreur indique un problème de connexion à la base de données.
Vérifie que tes informations de connexions soit correctes (host mysql, numéro de port, username et password).
Bonne journée
$username = 'AAAAAAAA';
$password = 'XXXXXXXX';
try {
$db = new PDO($dsn, $username, $password);
} catch(Exception $e) {
exit('Erreur : '.$e->getMessage());
}
Toute cette partie est remplie avec les bonne information.
D'ailleurs pour testé cette partie je les mis seule dans une page et aucun message d'erreur apparait.
j'ai plutôt du oublier quelque chose dans cette ligne mais je sais pas quoi
$requete=mysql_query ($pass_rechercher);
Tu crée ta connexion avec l'api PDO, puis tu exécute ta requête avec l'extension php mysql_, tu utilises donc 2 api différentes.
Il faut que tu utilises soit uniquement PDO, soit uniquement mysql_, mais on ne peut pas les mélanger comme ca.
Au passage l'extension mysql_ est dépréciée et vouée à disparaitre. Il est conseillé d'utiliser mysqli_ à la place pour gagner en performance.
Quel est le plus simple a codé ?
pour essayé je me suis connecté avec cette ligne:
$con = mysql_connect("mysql.hostinger.fr", "u839528755_jeu", "monmotdepasse");
et j'ai rajouté $con à la ligne :
$requete=mysql_query ($pass_rechercher,$con);
Que veux dire "Nom de la fonction doit être une chaîne" ? (ligne9)
Si j'ai bien compris tu ma dit de remplacé "mysql_query" par "mysqli_query".
J'ai fais et en plus de me dire "Nom de la fonction doit être une chaîne" (ligne9) sa me dit:"
Attention: mysqli_query () s'attend à ce que le paramètre 1 pour être mysqli, chaîne donnée.".
ligne9: $nombre_pass = $mysql_num_rows($requete);
Merci de ton aide. Je suis que débutant.
Les deux extensions fonctionnent pratiquement de la même façon et sont aussi simple l'une que l'autre.
Si tu ne sais vraiment pas laquelle choisir, je te conseil tout de même PDO pour les quelques avantages qu'elle a par rapport à mysqli (abstraction du driver sql, requêtes préparés...)
Tu trouveras facilement plein de tutoriels sur l'utilisation de PDO avec ton moteur de recherche préféré :)
Je ne comprend plus rien, en 3 jours j'ai du voir toute les erreurs qui pouvait existé ^^
Quel est encore mon erreur ?