Erreur php mysql

mary -  
 mary -
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
A voir également:

6 réponses

william7007 Messages postés 335 Date d'inscription   Statut Membre Dernière intervention   46
 
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;}
0
Mary
 
Merci beaucoup

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

Merci
0
mary
 
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.
0
william7007 Messages postés 335 Date d'inscription   Statut Membre Dernière intervention   46
 
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");
0
mary
 
Ok ça fonctionne

Je veux maintenant saisir un code dans mon formulaire et le rechercher dans ma base pour afficher le libelle
le sql je sais faire

mais comment je récupère le code saisi dans le formulaire (champ code) dans mon programme php pour l'utiliser dans ma requete sql ?

merci
0
toto
 
La syntaxe correcte avec les define était :

define ("SERVEUR", "localhost");
define ("NOM", "root");
define ("PASSE", "");
define ("BASE", "bd1");

(le premier paramètre de define est une chaîne, donc des " ou des ' )
0
mary > toto
 
Bonsoir,

Je continue mon apprentissage et j'ai un autre soucis

Je souhaite faire entrer l'utilisateur par une saisie du login et mot de passe

J'ai donc créé un autre fichier html menu.html qui demande un login et un mot de passe et je lance le fichier login.php
qui va chercher le nom et mot de passe dans la base de données, et je veux à partir de ce fichier php lancer le fichier formulaire.html qui me demande d'autre saisie

et là je n'y arrive pas et je ne trouve pas d'exemples sur le net

Merci

Marylène
0
cotta Messages postés 294 Date d'inscription   Statut Membre Dernière intervention   3 > mary
 
consulte ce site :

www.siteduzero.com
0
Mary > cotta Messages postés 294 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Le site est vraiment très vien fait

après lecture j'ai trouvé ceci mais cela ne fonctionne toujours pas

<a href="formulaire.html">
Je souhaite faire ouvrir automatiquement ce fichier html dans mon fichier php

Merci
0
william7007 Messages postés 335 Date d'inscription   Statut Membre Dernière intervention   46
 
qu'entend tu par automatiquement?
sans action de l'utilisateur ???
0
Mary
 
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
0
william7007 Messages postés 335 Date d'inscription   Statut Membre Dernière intervention   46
 
apres la verification si tout est bon fait ce ci:

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

include("bienvenu.html");
}
else{
echo "Verifier vos identifiants";
}
0

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

Posez votre question
william7007 Messages postés 335 Date d'inscription   Statut Membre Dernière intervention   46
 
essaie le code et tu me met au courant!!!
0
william7007 Messages postés 335 Date d'inscription   Statut Membre Dernière intervention   46
 

<?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'";
0
mary
 
Bonjour, toujours pas bon et je ne vois pas

//Déclaration des éléments du serveur Mysql

$Server="localhost";
$Nom="root";
$Passe="";
$Base="util";
$nom=strtoupper(htmlspecialchars($_POST['nom']));
$pass=strtoupper(htmlspecialchars($_POST['pass']));
//echo (" nom --> $nom <BR>");
//echo (" pass --> $pass <BR>");

//Connexion à la base de données Mysql
$connexion = mysql_pconnect($Server,$Nom,$Passe);



//Test sur la connexion
if(!$connexion)
{echo "Désolé, connexion à ".Server."impossible";exit;}
//Test sur l'acces à la base de données

if(!mysql_select_db($Base,$connexion))
{echo "Désolé accès à la base ".Base." impossible";exit;}

//Récupération du résultat de la requete dans un pointeur
$resultat=mysql_query("SELECT * FROM Utilisateur WHERE nom='$nom'", $connexion);
$f=mysql_fetch_array($resultat);
if((nom == $nom) && (pass == $pass)){
include("formulaire.html");
}
else{
echo "Verifier vos identifiants";
}
//déconnexion avec MySQL
mysql_close();
?>
0
bissdebrazza Messages postés 2065 Date d'inscription   Statut Contributeur Dernière intervention   712 > mary
 
Salut!
Quel message d'erreur ça te renvoie?
0
mary > bissdebrazza Messages postés 2065 Date d'inscription   Statut Contributeur Dernière intervention  
 
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
0
mary > bissdebrazza Messages postés 2065 Date d'inscription   Statut Contributeur Dernière intervention  
 
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+
0