Script PHP ne s’exécute pas

Messages postés
123
Date d'inscription
lundi 2 mars 2015
Statut
Membre
Dernière intervention
6 octobre 2019
-
Bonjour,

Je viens vous voir car j'aimerais avoir quelques renseignements concernant mon script PHP
J'ai fais un formulaire ( login , nom, prenom, password ) et je dois effectuer une requête PHP pour afficher les éléments rentrés par l'utilisateur dans le formulaire

Je précise que ma bdd est vide ( pour le devoirs , la base de donnée doit être vide )
Quand je rentre les données dans le formulaire et que je valide , le script PHP ne m'affiche rien

Merci à ceux qui pourrons m'aider
<!doctype html>
<html>
<head>
<meta http-equiv="Content-Type"  content="text/html; "charset="utf-8" />
<title>Validation des données entrées </title>
</head>

<body>
 
 <?php
 
 $login = $_POST['login'] ;
 $nom = $_POST['nom'] ;
 $prenom = $_POST['prenom'] ;
 $motdepasse = $_POST['motdepasse'] ;
 
$db = mysqli_connect('localhost', 'root','headhunterz', 'devoir_1279bis.1018') ; 
$sql = "SELECT * FROM utilisateurs" ; 
$req = mysqli_query($db,$sql) or die ('Erreur SQL : <br />'.$sql);
$data = mysqli_fetch_assoc($req) ; 
 if ((mysqli_num_rows($req)>0) && ($password == $data ['passwd']))
  

{  session_start();
 $_SESSION['Login'] = $data ['Login'];
 $_SESSION['Nom'] = $data ['Nom'];
 $_SESSION['Prenom'] = $data ['Prenom'];
 $_SESSION['Motdepasse'] = $data ['Motdepasse'];
 print 'Le login est :'.$_SESSION['login'] ; 
 print '<br/> <a href="resume.php"> Afficher les informations personnelles </a>' ;
}
 else { print ' les informations ne sont pas valides :';}
 
 ?>
 <br>
</body>
</html>

Configuration: Windows / Chrome 77.0.3865.90

Afficher la suite 

5 réponses

Messages postés
123
Date d'inscription
lundi 2 mars 2015
Statut
Membre
Dernière intervention
6 octobre 2019
30
0
Merci
J'aimerais savoir où est l'erreur , syntaxique ou autre
Je ne demande pas une réécriture complète mais simplement savoir où est mon erreur
Commenter la réponse de darklight59
Messages postés
26519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 octobre 2019
1831
0
Merci
Bonjour

Commence par appliquer ceci :
http://www.commentcamarche.net/faq/48399-php-gestion-des-erreurs-debogage-et-ecriture-du-code

Puis déplace ton code php (et surtout le session_start() ) AVANT tout le code HTML.



Commenter la réponse de jordane45
Messages postés
123
Date d'inscription
lundi 2 mars 2015
Statut
Membre
Dernière intervention
6 octobre 2019
30
0
Merci
J'ai bien appliqué la gestion des bugs et changé la position de mon script mais rien ne change
jordane45
Messages postés
26519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 octobre 2019
1831 -
Il n'y a pas que l'affichage des erreurs...
Il y a aussi la récupération PROPRE des variables AVANT de les utiliser.

Ensuite, tu nous dis que ça ne marche pas.. c'est à dire ?
Une page blanche ? Un message d'erreur ? Autre chose ?

Et puis, ça serait bien de nous partager ton code modifié que l'on voit ce que tu as changé ou non...

Il faudrait également nous indiquer si tu bosses en "local" sur ton ordi ou si tes pages sont hébergées sur un serveur.
Si en local, avec quel logiciel travailles tu ? Laragon ? Wamp ? Xampp ? EasyPhp ?

Quelle URL as tu dans ton navigateur lorsque tu affiches cette page ?

Es tu sûr que la connexion à la bdd fonctionne ? il faudrait, pour t'en assurer, ajouter une petite gestion d'erreur.... comme par exemple :

$db = mysqli_connect('localhost', 'root','headhunterz', 'devoir_1279bis.1018') ; 
if (!$db ) {
    echo "Error: Unable to connect to MySQL." . PHP_EOL;
    echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
    echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
    exit;
}


Et, si comme tu nous l'as dit au départ.. ta bdd est vide...
ta requête
SELECT * FROM utilisateurs
ne retournera rien.
Tu tomberas donc toujours sur ton ELSE.

Pour finir, ta méthode n'est pas terrible... as tu déjà entendu parlé de la clause "where" dans une requête sql ?

$sql = "SELECT * 
            FROM utilisateurs
            WHERE Login = '".$login."'" ; 
jee pee
Messages postés
26971
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
16 octobre 2019
5559 > jordane45
Messages postés
26519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 octobre 2019
-
Bonjour,

Et peut être d'un INSERT à la fin ;-), l'énoncé du problème n'est pas terrible non plus, la bdd étant vide, la logique voudrait qu'on la remplisse avec les données saisies non ?
Commenter la réponse de darklight59
Messages postés
123
Date d'inscription
lundi 2 mars 2015
Statut
Membre
Dernière intervention
6 octobre 2019
30
0
Merci
Merci pour tes informations
Je travail sur Dreamweaver et sur Brackets
Je travail en Local , l'URL est file:///C:/wamp64/www /...

Ma page formulaire s'affiche correctement mais quand j'appuie sur envoyer , j'ai juste le script qui s'affiche dans mon navigateur

Le but du jeu est juste de créer des identifiants grâce à la page formulaire.html et faire un script PHP qui "nourrira" la bdd et qui m'affichera à l'écran les identifiant précédemment crées
Commenter la réponse de darklight59
Messages postés
26519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 octobre 2019
1831
0
Merci
Si tu fais du php... il faut passer par un serveur. L'URL sera obligatoirement de la forme http://localhost/tonficher.php

Tu dois donc installer (et utiliser ) un logiciel tel que laragon.

Commenter la réponse de jordane45