Bonjour,
J'ai un problème au niveau de mon site j'ai une erreur mais je sais pas ou est cette erreur.
Voici l'erreur :
Parse error: syntax error, unexpected end of file in C:\wamp\www\Site-de-vente-de-tout-et-nimporte-quoi\admin\admin.php on line 43

Voici mon code source :

<?php

session_start();

if(isset($_SESSION['username'])){

if($_GET['action']=='add'){

?>

<form action="" method="post">
<h3>Titre du produit :</h3><input type="text" name="title"/>
<h3>Description du produit :</h3><input type="text" name="description"/>
<h3>Prix du produit :</h3><input type="text" name="price"/>
</form>
<?php

}elseif($_GET['action']=='modify'){

} elseif($_GET['action']=='delete'){

} else {

die('Une Erreur s\'est produite.');

header('Location: ../index.php');

}
?>
<link href="../style/bootstrap.css" type="text/css" rel="stylesheet" />
<h1>Bienvenue, <?php echo $_SESSION['username']; ?></h1>
<br/>
<a href="?action=add">Ajouter un produit</a>
<a href="?action=modify">Modifier un produit</a>
<a href="?action=delete">Supprimer un produit</a>
</html>

13 réponses


tleb
Réponse acceptée

Il manque un } : il faut toujours indenter.

Bakar23
Réponse acceptée

Salut, ajoutes ta balise html au début de ton fichier, tu la fermes sans l'avoir ouverte.

Wave59
Auteur

Merci de m'aider
Cdlt ,
Wave59

Wave59
Auteur

Re un probleme encore ,

( ! ) Parse error: syntax error, unexpected 'else' (T_ELSE) in C:\wamp\www\Site-de-vente-de-tout-et-nimporte-quoi\admin\admin.php on line 34

voici le code entier :

<?php

session_start();

if(isset($_SESSION['username'])){
if(isset($_GET['action'])){
 if($_GET['action']=='add'){

if(isset($_POST['submit'])){

$title=$_POST['title'];
$descrition=$_POST['description'];
$price=$_POST['price'];

if($title&&$description&&$price){

try
{
$db = new PDD('mysql:host=localhost;dbname=bdd_e-commerce','root','');
$db->setAttribute(PDO::ATTR_CASE,PDO::CASE_LOWER); // les noms de champs seront en minuscule
$db->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION); // les erreurs lanceront des exceptions
}
catch(Exception $e){

echo'une erreur est survenue';
die();

}

$insert = $db->prepare("INSERT INTO products VALUES('','$title','$description','$price')");
$insert->execute

else{

echo'Veuillez remplir tous les champs';

}
}
?>

<form action="" method="post">
<h3>Titre du produit :</h3><input type="text" name="title"/>
<h3>Description du produit :</h3><input type="text" name="description"/>
<h3>Prix du produit :</h3><input type="text" name="price"/><br/><br/>
<input type="submit" name="submit"/>
</form>
<?php

}elseif($_GET['action']=='modify'){
}elseif($_GET['action']=='delete'){
} else {
die('Une Erreur s\'est produite.');

}
}else{

}
}else{
header('Location: ../index.php');

}
?>
<link href="../style/bootstrap.css" type="text/css" rel="stylesheet" />
<h1>Bienvenue, <?php echo $_SESSION['username']; ?></h1>
<br/>
<a href="?action=add">Ajouter un produit</a>
<a href="?action=modify">Modifier un produit</a>
<a href="?action=delete">Supprimer un produit</a>

il manque un "}" avant ton else ligne 39 pour fermer ton if. Tu ferais mieux d'indenter ton code, de plus, tu peux très largement simplifier tes structures if/else , notamment avec des "&&".

Wave59
Auteur

Je le trouve pas il est ou x) ? donne moi un repere stp :) Merci

Après ton $insert->execute

Wave59
Auteur

En rajoutant le truc sa me fais sa ! ) Parse error: syntax error, unexpected '}' in C:\wamp\www\Site-de-vente-de-tout-et-nimporte-quoi\admin\admin.php on line 33

En effet, il manque un point virgule après ton execute()

Wave59
Auteur

Toujours une erreur x) : Parse error: syntax error, unexpected 'else' (T_ELSE) in C:\wamp\www\Site-de-vente-de-tout-et-nimporte-quoi\admin\admin.php on line 34

Tu as bien ajouté les parenthèses à ton execute()?

Wave59
Auteur

oui je les ai mises x) mais toujours la même erreur x(

Wave59
Auteur

C bon je viens de trouver x) Il fallais mettre un { la ligne avant le else{ et fallais mettre des parentheses et ; a execute x)

MERCI QUAND MEME ,
Wave59