Script PHP ne s’exécute pas

Fermé
darklight59 Messages postés 127 Date d'inscription lundi 2 mars 2015 Statut Membre Dernière intervention 24 septembre 2022 - Modifié le 6 oct. 2019 à 10:57
jordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024 - 6 oct. 2019 à 16:41
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

A voir également:

5 réponses

darklight59 Messages postés 127 Date d'inscription lundi 2 mars 2015 Statut Membre Dernière intervention 24 septembre 2022 30
6 oct. 2019 à 13:00
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
0
jordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024 4 717
6 oct. 2019 à 13:30
Bonjour

Commence par appliquer ceci :
https://forums.commentcamarche.net/forum/affich-37584947-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.



0
darklight59 Messages postés 127 Date d'inscription lundi 2 mars 2015 Statut Membre Dernière intervention 24 septembre 2022 30
6 oct. 2019 à 16:20
J'ai bien appliqué la gestion des bugs et changé la position de mon script mais rien ne change
0
jordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024 4 717
6 oct. 2019 à 16:29
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."'" ; 
0
jee pee Messages postés 40558 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 16 décembre 2024 9 458 > jordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024
6 oct. 2019 à 16:34
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 ?
0
darklight59 Messages postés 127 Date d'inscription lundi 2 mars 2015 Statut Membre Dernière intervention 24 septembre 2022 30
6 oct. 2019 à 16:36
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024 4 717
6 oct. 2019 à 16:41
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.

0