Probleme php/mysql

Fermé
mCx - 1 mai 2010 à 20:16
avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 - 1 mai 2010 à 22:20
Bonsoir , j'ai suivit un tuto pour coder un espace membre et jai une erreur car j'ai rajouté des champs

Parse error: syntax error, unexpected '(', expecting T_STRING or T_VARIABLE or '$' in /home/LoisirWorld0509/www/staff/inscription.php on line 5

voici mon code :

<?php
// on teste si le visiteur a soumis le formulaire
if (isset($_POST['inscription']) && $_POST['inscription'] == ('Inscription') {
// on teste l'existence de nos variables. On teste également si elles ne sont pas vides
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass'])) && (isset($_POST['pass_confirm']) && !empty($_POST['pass_confirm'])) && isset(($_POST['offre']) && !empty($_POST['offre'])) && isset(($_POST['email']) && !empty($_POST['email']))) {
// on teste les deux mots de passe
if ($_POST['pass'] != $_POST['pass_confirm']) {
$erreur = 'Les 2 mots de passe sont différents.';
}
else {
$base = mysql_connect ('localhost', 'xxxx', 'xxxx');
mysql_select_db ('micx2a', $base);

// on recherche si ce login est déjà utilisé par un autre membre
$sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);

if ($data[0] == 0) {
$sql = 'INSERT INTO membre VALUES("", "'.mysql_escape_string($_POST['login']).'", "'.mysql_escape_string(md5($_POST['pass'])).'", "'.mysql_escape_string(md5($_POST['offre'])).'", "'.mysql_escape_string(md5($_POST['email'])).'")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());

session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: membre.php');
exit();
}
else {
$erreur = 'Un membre possède déjà ce login.';
}
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
}
?>
<html>
<head>
<title>Inscription</title>
</head>

<body>
Inscription à l'espace membre :<br />
<form action="inscription.php" method="post">
<p>Login :
<input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>">
<br />
</p>
<p>Mot de passe :
<input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>">
<br />
</p>
<p>Confirmation du mot de passe :
<input type="password" name="pass_confirm" value="<?php if (isset($_POST['pass_confirm'])) echo htmlentities(trim($_POST['pass_confirm'])); ?>">
</p>
<p>Offre :
<input type="text" name="offre" value="<?php if (isset($_POST['offre'])) echo htmlentities(trim($_POST['offre'])); ?>">
</p>
<p>Email :
<input type="text" name="email" value="<?php if (isset($_POST['email'])) echo htmlentities(trim($_POST['email'])); ?>">
<br />
<input type="submit" name="inscription" value="Inscription">
</p>
</form>
<?php
if (isset($erreur)) echo '<br />',$erreur;
?>
</body>
</html>


Si quelqu'un s'y connait un peu ça serait vraiment sympa , merci .


A voir également:

6 réponses

avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 500
1 mai 2010 à 20:25
Évite de mettre des parenthèses partout.
Si dans tes conditions il n'y a que des AND (&&), ça ne sert à rien.
D'ailleur, l'erreur s'affiche parce que tu as oublié d'en fermer une qui n'est pas utile (autour d'une chaine) :
if(isset($_POST['inscription']) && $_POST['inscription'] == ('Inscription')
0
Elle est fermé elle est entre les parenthèses la ligne 5 c'est

if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass'])) && (isset($_POST['pass_confirm']) && !empty($_POST['pass_confirm'])) && isset(($_POST['offre']) && !empty($_POST['offre'])) && isset(($_POST['email']) && !empty($_POST['email']))) {
0
avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 500
1 mai 2010 à 20:49
Non, elle n'est pas fermée.
Ou bien si tu considères que ")" juste après la ferme, alors laquelle ferme celle que tu as ouvert juste après "if" ?
0
Hum

donc c'est comme ça

if (isset($_POST['inscription'])) && $_POST['inscription'] == ('Inscription') {

?
0

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

Posez votre question
Plus de réponses ?
0
avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 500
1 mai 2010 à 22:20
J'ai souligné, mis en gras et en italique la parenthèse qui est ouverte mais pas fermée.
Regarde dans mon premier message.
0