Signaler

J ai du mal a retrouve mes donnees dans mon db [Résolu]

Posez votre question Miraj-123 8Messages postés jeudi 6 juillet 2017Date d'inscription 9 juillet 2017 Dernière intervention - Dernière réponse le 8 juil. 2017 à 23:05 par Miraj-123
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
Afficher la suite 
Utile
+0
plus moins
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 ??? )

Miraj-123 8Messages postés jeudi 6 juillet 2017Date d'inscription 9 juillet 2017 Dernière intervention - 6 juil. 2017 à 22:22
1) file:///Applications/MAMP/htdocs/Newproject/tuto.html(ca pour ma page html)
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
Répondre
Donnez votre avis
Utile
+0
plus moins
Regarde bien ton url
 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

Donnez votre avis
Utile
+0
plus moins
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

<!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 :ICI

Merci d'y penser dans tes prochains messages.
Jordane45

votre aide me sera tjr le bienvenu
jordane45 17902Messages postés mercredi 22 octobre 2003Date d'inscription ModérateurStatut 21 juillet 2017 Dernière intervention - 7 juil. 2017 à 23:32
Pour commencer...Attention, l'extension mysql était obsolète en PHP 5.5.0, et a été supprimée en PHP 7.0.0.
http://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
http://www.commentcamarche.net/faq/44117-connexion-a-une-base-avec-pdo-mysqli

Si tu choisis PDO, pense à activer la gestion des erreurs : http://www.commentcamarche.net/faq/46512-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');
Répondre
jordane45 17902Messages postés mercredi 22 octobre 2003Date d'inscription ModérateurStatut 21 juillet 2017 Dernière intervention - 7 juil. 2017 à 23:35
Autre chose encore.... tu sembles avoir utilisé un password... sans le crypter ... aie....
Penches toi sur la fonction password_verify() : http://php.net/manual/fr/function.password-verify.php

Un exemple complet est disponible ici (utilisant le PDO ) : http://www.commentcamarche.net/forum/affich-34340900-login-password-php#7
Répondre
Miraj-123 8Messages postés jeudi 6 juillet 2017Date d'inscription 9 juillet 2017 Dernière intervention - 8 juil. 2017 à 01:09
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";
}
?>
Répondre
Donnez votre avis
Utile
+0
plus moins
91 - NB : Pour poster du code sur le forum.. merci d'utiliser la coloration syntaxique (les balises de code).
Explications disponibles ici : http://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                                                                 
Miraj-123 8Messages postés jeudi 6 juillet 2017Date d'inscription 9 juillet 2017 Dernière intervention - 8 juil. 2017 à 23:04
Vraiment grand merci pour votre aide puis que je viens de passe cet etape et ma base de donnees est connect maintenant....merci bcpp
jordane45
Répondre
Miraj-123 8Messages postés jeudi 6 juillet 2017Date d'inscription 9 juillet 2017 Dernière intervention - 8 juil. 2017 à 23:05
et donc rendez vous au prochain defi lol
Répondre
Donnez votre avis

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !