Posez votre question Signaler

Erreur php mysql

mary - Dernière réponse le 24 janv. 2009 à 10:36
Bonjour,
Je suis une grande débutante en php mysql
J'ai pour un cours une petite appli à faire qui se connecte à une base de donnée mysql avec un formulaire et un fichier php
J'ai une erreur après avoir saisi dans mon formulaire :
Parse error: parse error, unexpected '{' in C:\Program Files\EasyPHP 2.0b1\www\programme.php on line 22
voici mon fichier .php :
<HTML>
<HEAD><TITLE>PHP</TITLE></HEAD>
<BODY>
<h1>Interrogation de la table Article</h1>
Bonjour
<?Php
define (SERVEUR, "localhost");
define (NOM, "root");
define (PASSE, "");
define (BASE, "bd1");
$connexion = mysql_pconnect(SERVEUR,NOM,PASSE);
if(!$connexion)
{echo "Désolé, connexion à ".SERVEUR."impossible";exit;}
if(!mysql_select_db(BASE,$connexion)
LIGNE 22 {echo "Désolé accès à la base ".BASE." impossible";exit;}
$resultat=mysql_query("SELECT * FROM Article ", $connexion);
if($resultat)
{
while($liste=mysql_fetch_object($resultat))
{echo"$liste->codArt, $liste->libArt<BR>";}
}
else
{echo"<b>Erreur dans execution de la requete.</b><BR>";}
?>
</BODY>
</HTML>
Merci pour votre aide
Lire la suite 

Erreur php mysql »

Suggestions
22 réponses
Réponse
+0
moins plus
Bsr
regarde juste après au niveau de on IF il te manque une accolade fermante à la fin (en gras)

if(!mysql_select_db(BASE,$connexion))

LIGNE 22 {echo "Désolé accès à la base ".BASE." impossible";exit;}
Mary - 11 janv. 2009 à 23:44
Merci beaucoup

J'ai cherché pendant des heures croyant que mes syntaxes étaient fausses

Merci
mary - 11 janv. 2009 à 23:58
J'ai bien l'affichage de ma table, les 2 articles en bas mais j'ai plein d'erreurs avant
Qu'est ce que c'est ?

Notice: Use of undefined constant SERVEUR - assumed 'SERVEUR' in C:\Program Files\EasyPHP 2.0b1\www\programme.php on line 11

Notice: Use of undefined constant NOM - assumed 'NOM' in C:\Program Files\EasyPHP 2.0b1\www\programme.php on line 12

Notice: Use of undefined constant PASSE - assumed 'PASSE' in C:\Program Files\EasyPHP 2.0b1\www\programme.php on line 13

Notice: Use of undefined constant BASE - assumed 'BASE' in C:\Program Files\EasyPHP 2.0b1\www\programme.php on line 14


800, Porte coulissante 180x210.
810, Porte automatique 180x250.
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour ce ne sont des erreurs moins grave mais je te conseil de fiare ce ci :

$Server = "localhost";
$Nom = "root";
$Passe = "";
$Base = "bd1";

au lieu de je crois que tu n'auras plus d'erreurs

define (SERVEUR, "localhost");
define (NOM, "root");
define (PASSE, "");
define (BASE, "bd1");
Mary - 23 janv. 2009 à 00:06
oui que l'utilisateur saisisse un login et un mot de passe

s'ils sont ok un autre formulaire.html est ouvert et affiché

Mary
cotta- 23 janv. 2009 à 00:09
dac , j'en est fait un, 1 mnt je te l'envoi..
cottaMary - 23 janv. 2009 à 00:19
Page HTML--> formulaire

<body>
<h1 align="center"><i><b>Formulaire</b></i></a></h1>
<form action="ex11.php" method="POST">
<p>Saisir votre nom <input type="text" name=username> </p>
<p>entrez votre mot de passe <input type="text" name=password> </p>
<p><input type="submit" value="soumettre"></p>
</form>
</body>




Page PHP : traitement du mot de passe et du user

<?php
$username = $_POST["username"];
$password = $_POST["password"];
echo (" votre nom --> $username <BR>");
echo (" votre mot de passe --> $password <BR>");
$idconnexion=mysql_connect("localhost","root","");
$idBase=mysql_select_db("bd-clients",$idconnexion);
$sql="select * from utilisateur where id='$username'";
$resultat=mysql_db_query("bd-clients",$sql);
$f=mysql_fetch_array($resultat);
if($password ==$f['passe'])
{ echo("mot de passe valide");}
else
{echo("mot de passe incorrecte");}
mysql_free_result($resultat);
mysql_close($idconnexion);
?>
si tu veux changer de nom <a href="essai.html">cliquez ici pour revenir a la page precedente</a>

essai ca , je suis encore la ..
Ajouter un commentaire
Réponse
+0
moins plus
qu'entend tu par automatiquement?
sans action de l'utilisateur ???
Mary - 23 janv. 2009 à 00:16
oui

si lors du clic sur le bouton valider le controle du login et mot de passe est ok alors un autre fichier html sera ouvert
Ajouter un commentaire
Réponse
+0
moins plus
apres la verification si tout est bon fait ce ci:

if((Login == $login) && (MP == $motPass)){

include("bienvenu.html");
}
else{
echo "Verifier vos identifiants";
}
Ajouter un commentaire
Réponse
+0
moins plus
essaie le code et tu me met au courant!!!
Ajouter un commentaire
Réponse
+0
moins plus

<?php
$username = $_POST["username"];
$password = $_POST["password"];
echo (" votre nom --> $username <BR>");
echo (" votre mot de passe --> $password <BR>");
$idconnexion=mysql_connect("localhost","root","");
$idBase=mysql_select_db("bd-clients",$idconnexion);
$sql="select * from utilisateur where id='$username'";
$resultat=mysql_db_query("bd-clients",$sql);
$f=mysql_fetch_array($resultat);
if($password ==$f['passe'])
{ echo("mot de passe valide");}
else
{echo("mot de passe incorrecte");}
mysql_free_result($resultat);
mysql_close($idconnexion);
?>



comment tu fais pour avoir ID? or je supose qu'il considère ici que l'ID est là clef
tu sais avec les mot de passe et les login, je suppose qu'il est plus intéressant de faire le test sur les deux données à la fois car rien n'empeche 2 ou plusieurs utilisateur à avoir un même login ou un mm mot de passe , mais la probabiliter que 2 utilisateurs aient un mm login et MP est très faible on joue donc sur cette petit probabilité et on prefère faire ce ci
$req = "SELECT * FROM utilisateur WHERE login = '".$login."' AND motPasse = '".$passWord."'";

au lieu de

$sql="select * from utilisateur where d='$username'";
bissdebrazza- 24 janv. 2009 à 01:51
Salut!
Quel message d'erreur ça te renvoie?
mary - 24 janv. 2009 à 09:08
C'est tout à fait vrai
Il était tellement tard et surtout je saturais tellement avec mes erreurs que j'ai un peu manqué d'explications !

Je lis pourtant le site du zero, php pour les nuls et non ça ne me suffit pas !!!


Voilà mon erreur
Notice: Use of undefined constant nom - assumed 'nom' in C:\Program Files\EasyPHP 2.0b1\www\progLog.php on line 45
Verifier vos identifiants

Avant que je modifie quelques points je n'avais plus d'erreur mais mon login n'est jamais reconnu et j'ai toujours en réponse vérifier vos identifiants
J'en conclus que losque je récupère les éléments de ma requete sql, je ne les utilise pas correctement ou je ne les compare pas correctement
Je cherche donc autour de ceci

Merci

Marylène
marybissdebrazza - 24 janv. 2009 à 10:36
OK j'ai trouvé ça marche
je n'avais pas besoin de tester si le login est bon puisque je ne récupère que ce login

par contre je ne comprends pas pourquoi mon echo avec verifier votre login ne s'affiche pas
si le login est bon j'ai bien mon second formulaire qui s'active
si le login est faux j'ai le titre de mon fichier MENU et pas mon message

Cest vraiment un monde à part la prog !!!

A+
Ajouter un commentaire
Ce document intitulé « erreur php mysql » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?