J ai du mal a retrouve mes donnees dans mon db
Résolu
Miraj-123
Messages postés
8
Date d'inscription
Statut
Membre
Dernière intervention
-
Miraj-123 Messages postés 8 Date d'inscription Statut Membre Dernière intervention -
Miraj-123 Messages postés 8 Date d'inscription Statut Membre Dernière intervention -
bonjour!
mon probleme est que j au du mal a retrouve mes donnees dans la base de donnees cree alors que j ai deja cree la table aussi et meme du cote code ou formulaire j ai deja connect sa a la base de donne mais lorsque je rempli le formulaire ou lieu qu on puis m affiche les donnees dans mon db on me renvoi sur une autre page avec mes code php qui s affiche brute
mon probleme est que j au du mal a retrouve mes donnees dans la base de donnees cree alors que j ai deja cree la table aussi et meme du cote code ou formulaire j ai deja connect sa a la base de donne mais lorsque je rempli le formulaire ou lieu qu on puis m affiche les donnees dans mon db on me renvoi sur une autre page avec mes code php qui s affiche brute
A voir également:
- J ai du mal a retrouve mes donnees dans mon db
- Fuite données maif - Guide
- Supprimer les données de navigation - Guide
- Comment ouvrir un fichier db ? ✓ - Forum Windows
- Fichier db ✓ - Forum Bases de données
- Trier des données excel - Guide
4 réponses
Bonjour,
Et quelle est l'url qui apparait dans ton navigateur ??
passes tu bien par un serveur ( ou un logiciel comme wamp/xampp/easyphp si tu es en "local" sur ton ordi ??? )
Et quelle est l'url qui apparait dans ton navigateur ??
passes tu bien par un serveur ( ou un logiciel comme wamp/xampp/easyphp si tu es en "local" sur ton ordi ??? )
Regarde bien ton url
Cela veut dire que tu ouvres ta page directement depuis l'explorateur de fichiers...et non en passant par ton MAMP
Ton URL devrait-être de la forme
file:///Applications/MAMP/htdocs/Newproject/tuto.html(ca pour ma page html
Cela veut dire que tu ouvres ta page directement depuis l'explorateur de fichiers...et non en passant par ton MAMP
Ton URL devrait-être de la forme
http://localhost:8888/Newproject/tuto.html
salut oft merci puis que maintenant je peux me connecte en passant par MAMP
mais il ya encore un petit souci puisque le donnes sont toujour pas sauvegarde dans la BDD voila un peut mes code:
la page tuto.html
mais de que je submit on m affiche une page vide avec comme url(http://localhost:8888/Newproject/process.php)
et le process.php ca comme code:
votre aide me sera tjr le bienvenu
mais il ya encore un petit souci puisque le donnes sont toujour pas sauvegarde dans la BDD voila un peut mes code:
la page tuto.html
<!DOCTYPE HTML> <html> <head> <title>savepage</title> </head> <body> <div id="frm"> <form action="process.php" method="POST"> <P> <label>pseudo:</label> <input type="text" name="pseudo"/> </P> <P> <label>password:</label> <input type="password" name="password"/> </P> <P> <input type="submit" value="envoyer"/> </P> </form> </div> </body> </html>
mais de que je submit on m affiche une page vide avec comme url(http://localhost:8888/Newproject/process.php)
et le process.php ca comme code:
<?php $pseudo= $_POST['pseudo']; $password = $_POST['password']; $pseudo = stripcslashes($pseudo); $password = stripcslashes($password); $pseudo = mysql_real_escape_string($pseudo); $password = mysql_real_escape_string($password); mysql_connect("localhost","root",""); mysql_select_db("tuto"); $result = mysql_query("select* from tuto pseudo='$pseudo' and password='$password'") or die("failed to query database" .msql_error()); $row = mysql_fetch_array($result); if($row['pseudo'] ==$pseudo) && $row['password'] == $password{ echo "login success!! welcome" .$row['pseudo']; }else{ echo "failed to login"; } ?>
EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :ICIMerci d'y penser dans tes prochains messages.Jordane45 |
votre aide me sera tjr le bienvenu
Pour commencer...Attention, l'extension mysql était obsolète en PHP 5.5.0, et a été supprimée en PHP 7.0.0.
https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
À la place, tu peux (<gras DOIS </gras> ) utiliser l'extension MySQLi ou l'extension PDO_MySQL
https://www.commentcamarche.net/faq/44117-connexion-a-une-base-avec-pdo-mysqli
Si tu choisis PDO, pense à activer la gestion des erreurs : https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
Ensuite.... Tu fais, dans ta requête, la recherche du user dont le password et le login sont envoyés dans tes variables POST
Il n'est donc pas utile de faire ensuite :
Ligne contenant une erreur de toutes façons... puisqu'il te manque une parenthèse fermante....
Pour voir ces erreurs... il faut qu'au début de tes pages PHP tu ajoutes les instructions
https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
À la place, tu peux (<gras DOIS </gras> ) utiliser l'extension MySQLi ou l'extension PDO_MySQL
https://www.commentcamarche.net/faq/44117-connexion-a-une-base-avec-pdo-mysqli
Si tu choisis PDO, pense à activer la gestion des erreurs : https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
Ensuite.... Tu fais, dans ta requête, la recherche du user dont le password et le login sont envoyés dans tes variables POST
"select* from tuto pseudo='$pseudo' and password='$password'"
Il n'est donc pas utile de faire ensuite :
if($row['pseudo'] ==$pseudo) && $row['password'] == $password{
Ligne contenant une erreur de toutes façons... puisqu'il te manque une parenthèse fermante....
Pour voir ces erreurs... il faut qu'au début de tes pages PHP tu ajoutes les instructions
<?php //donc juste après la balise d'ouverture de php : //Affichage des de code erreurs PHP : error_reporting(E_ALL); ini_set('display-errors','on');
Autre chose encore.... tu sembles avoir utilisé un password... sans le crypter ... aie....
Penches toi sur la fonction password_verify() : https://www.php.net/manual/fr/function.password-verify.php
Un exemple complet est disponible ici (utilisant le PDO ) : https://forums.commentcamarche.net/forum/affich-34340900-login-password-php#7
Penches toi sur la fonction password_verify() : https://www.php.net/manual/fr/function.password-verify.php
Un exemple complet est disponible ici (utilisant le PDO ) : https://forums.commentcamarche.net/forum/affich-34340900-login-password-php#7
la je viens d essaie avec msqli le donnees ne vient tjr pas dans la base de donnees et la page vide continue a s affiche apret avoir subtmit et voila le code en bas
<?php
error_reporting(E_ALL);
ini_set('display-errors','on');
$pseudo= $_POST['pseudo'];
$password = $_POST['password'];
$hote = 'localhost';
$pseudo = 'pseudo';
$password = 'password';
$tuto = 'tuto';
$tuto = new mysqli($hote, $pseudo, $password, $tuto);
if ($tuto->connect_error) {
echo 'Erreur de connexion (' . $tuto->connect_errno . ') ' . $tuto->connect_error;
}
$pseudo = stripcslashes($pseudo);
$password = stripcslashes($password);
$pseudo = mysql_real_escape_string($pseudo);
$password = mysql_real_escape_string($password);
$result = mysql_query("select* from tuto pseudo='$pseudo' and password='$password'")
or die("failed to query database" .msql_error());
$row = mysql_fetch_array($result);
"select* from tuto pseudo='$pseudo' and password='$password'"{
echo "login success!! welcome" .$row['pseudo'];
}else{
echo "failed to login";
}
?>
<?php
error_reporting(E_ALL);
ini_set('display-errors','on');
$pseudo= $_POST['pseudo'];
$password = $_POST['password'];
$hote = 'localhost';
$pseudo = 'pseudo';
$password = 'password';
$tuto = 'tuto';
$tuto = new mysqli($hote, $pseudo, $password, $tuto);
if ($tuto->connect_error) {
echo 'Erreur de connexion (' . $tuto->connect_errno . ') ' . $tuto->connect_error;
}
$pseudo = stripcslashes($pseudo);
$password = stripcslashes($password);
$pseudo = mysql_real_escape_string($pseudo);
$password = mysql_real_escape_string($password);
$result = mysql_query("select* from tuto pseudo='$pseudo' and password='$password'")
or die("failed to query database" .msql_error());
$row = mysql_fetch_array($result);
"select* from tuto pseudo='$pseudo' and password='$password'"{
echo "login success!! welcome" .$row['pseudo'];
}else{
echo "failed to login";
}
?>
91 - NB : Pour poster du code sur le forum.. merci d'utiliser la coloration syntaxique (les balises de code).
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
2 - Tu avais une erreur dans ta requête
3 - Tu as mélangé du mysqli avec du mysql
4 - Teste ça :
Cordialement,
Jordane
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
2 - Tu avais une erreur dans ta requête
3 - Tu as mélangé du mysqli avec du mysql
4 - Teste ça :
<?php //-----------------------------------------------------------------// //Affichage des erreurs PHP //-----------------------------------------------------------------// error_reporting(E_ALL); ini_set('display-errors','on'); //-----------------------------------------------------------------// //connexion à la bdd //-----------------------------------------------------------------// $hote = 'localhost'; $pseudo = 'pseudo'; $password = 'password'; $bdd = 'tuto'; $db = new mysqli($hote, $pseudo, $password, $bdd); if ($db->connect_error) { echo 'Erreur de connexion (' . $db->connect_errno . ') ' . $db->connect_error; } //-----------------------------------------------------------------// //récupération PROPRE des variables AVANT de les utiliser // Pour ça, j'utilise l'écriture TERNAIRE et la fonction !EMPTY //-----------------------------------------------------------------// $pseudo= !empty($_POST['pseudo']) ? stripcslashes($_POST['pseudo']) : NULL; $password = !empty($_POST['password']) ? stripcslashes($_POST['password']) : NULL; //-----------------------------------------------------------------// //Traitement //-----------------------------------------------------------------// if($pseudo && $password){ $sql = "SELECT * FROM tuto WHERE pseudo='$pseudo' AND password='$password'"; if (!$result = $db->query($sql)) { printf("Erreur : %s\n", $db->error); }else{ $row = $result->fetch_array(MYSQLI_ASSOC); echo "login success!! welcome" .$row['pseudo']; /* Libération des résultats */ $result->free(); } }else{ echo "Erreur ! Aucun Pseudo ou Password envoyé !"; print_r($_POST); } /* Fermeture de la connexion */ $db->close(); ?>
Cordialement,
Jordane
et avec comme code:
<!DOCTYPE HTML>
<html>
<head>
<title>savepage</title>
</head>
<body>
<div id="frm">
<form action="process.php" method="POST">
<P>
<label>name:</label>
<input type="text" id="name" name="name"/>
</P>
<P>
<label>surname:</label>
<input type="text" id="surname" name="surname"/>
</P>
<P>
<input type="submit" id="btn" name="login"/>
</P>
</form>
</div>
</body>
</html>
la page est enregistre avec le syntaxe .html
http://localhost:8888/phpMyAdmin/tbl_structure.php?server=1&db=save&table=details&pos=0&token=bdcf68e540f42689a6af1f89068cab97(ca pour mon DDB)
et voila mes code php
<?php
$name = $_POST['name'];
$surname = $_POST['surname'];
$name = stripcslashes($name);
$surname = stripcslashes($surname);
$name = mysql_real_escape_string($name);
$surname = mysql_real_escape_string($surname);
mysql_connect("localhost","root","");
mysql_select_db("save");
$result = mysql_query("select* from details name='$name' and surname='$surname'")
or die("failed to query database" .msql_error());
$row = mysql_fetch_array($result);
if($row['name'] ==$name) && $row['surname'] == $surname{
echo "login success!! welcome" .$row['name'];
}else{
echo "failed to login";
}
?>
la page est enregistre avec comme syntaxe .php
2) oui j utilise MAMP et oui suis en local