Création d'un système galerie image
Résolu
reverb94
Messages postés
106
Date d'inscription
Statut
Membre
Dernière intervention
-
reverb94 Messages postés 106 Date d'inscription Statut Membre Dernière intervention -
reverb94 Messages postés 106 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous et à toutes,
Je créer actuellement une sorte de réseau social permettant au artiste de publier leur dessin, avec un titre, image etc.., bref une galerie d'image.
J'ai commencer par suivre un tuto, est lors d'un test je m'aperçois que d'entré de jeu, les erreurs sont là ^^'.
Voici ma page publication.php :
Lorsque je fait un upload d'un fichier qui n'est pas une image ( jpg, png, gif ) l'infos erreur de non correspondance ne s'affiche pas ( $erreurpublication = "Votre fichier contient une mauvaise extension, ou n'est pas une image."; )
et lorsque j'essaye d'uploader une image avec un vrai format, l'upload ne fonctionne pas, l'image n'est pas envoyer :/
Merci pour votre attention et votre aide à tous :)
Je créer actuellement une sorte de réseau social permettant au artiste de publier leur dessin, avec un titre, image etc.., bref une galerie d'image.
J'ai commencer par suivre un tuto, est lors d'un test je m'aperçois que d'entré de jeu, les erreurs sont là ^^'.
Voici ma page publication.php :
<?php session_start(); ?> <?php require_once("connexioninscription.inc.php"); ?> <!DOCTYPE HTML> <html> <head> <link rel="shortcut icon" title="titre" type="image/png" href="mafavicon.png" /> <link href="css1.css" rel="stylesheet" type="text/css"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="description" content="blablabla." /> <meta name="keywords" content="blablabla" /> <title> Galerie d'art / Crobara2bal</title> </head> <body> <div id="container"> <?php include("header.inc.php"); ?> <?php include("menus.inc.php"); ?> <div id="corpspublication"> <div id="retourselect"> <a href="publication.php" title="recharger la page"><h1 class="titre1">Publication</h1></a> </div> <div id="souscorpspublication"> <h3 class="textesimple">Publier une oeuvre</h3> <?php if (isset($erreurpublication)) { echo $erreurpublication; } ?> <form method="post" action="publication.php" enctype="multipart/form-data"> <input type="file" name="imgpublication"/> <input type="submit" name="Envoyer"/> <?php if (!empty($_FILES)) { $imgpublication=$_FILES['img']; $ext = strtolower(substr($imgpublication['name'],-3)); $allow_ext = array('jpg','png','gif'); if (in_array($ext,$allow_ext)) { move_uploaded_file($imgpublication['tmp_name'],"images/oeuvres/".$imgpublication['name']); } } else { $erreurpublication = "Votre fichier contient une mauvaise extension, ou n'est pas une image."; } ?> </div> </div> <?php include("footer.inc.php"); ?> </div> </body> </html>
Lorsque je fait un upload d'un fichier qui n'est pas une image ( jpg, png, gif ) l'infos erreur de non correspondance ne s'affiche pas ( $erreurpublication = "Votre fichier contient une mauvaise extension, ou n'est pas une image."; )
et lorsque j'essaye d'uploader une image avec un vrai format, l'upload ne fonctionne pas, l'image n'est pas envoyer :/
Merci pour votre attention et votre aide à tous :)
A voir également:
- Création d'un système galerie image
- Restauration systeme windows 10 - Guide
- Creation compte gmail - Guide
- Création site web - Guide
- Création d'un compte google - Guide
- Galerie photo en ligne gratuite - Guide
5 réponses
Voici mon code actuelle de ma page publication.php
<?php if (empty($_SESSION['membre_id'])) { echo '<p class="textewarning">'."vous devez vous connectez pour accéder à la publication oeuvre".'</p>'; } else { ?> <form method="post" action="publication.php" enctype="multipart/form-data"> <input type="file" name="imgpublication"/> <input type="submit" name="envoyer"/> <?php if (isset($_POST['envoyer'])) { if (!empty($_FILES)) { $imgpublication=$_FILES['imgpublication']; $ext = strtolower(substr($imgpublication['name'],-3)); $allow_ext = array('jpg','png','gif'); if (in_array($ext,$allow_ext)) { move_uploaded_file($imgpublication['tmp_name'],"images/oeuvres/".$imgpublication['name']); } } else { $erreurpublication = "Votre fichier contient une mauvaise extension, ou n'est pas une image."; } if (isset($erreurpublication)) { echo $erreurpublication; } } } ?>
il manque le </form> et l'action "publication.php" ca va pas
le but c que sur le bouton le script revienne sur la même pas pour le traitement donc action=""
voici le code remanié
<?php
session_start();
if (empty($_SESSION['membre_id']))
{
echo '<p class="textewarning">'."vous devez vous connectez pour accéder à la publication oeuvre".'</p>';
} else {
echo '
<form method="post" action="" enctype="multipart/form-data">
<input type="file" name="imgpublication"/>
<input type="submit" name="envoyer"/>
</form>';
if (isset($_POST['envoyer']))
{
if (!empty($_FILES))
{
$imgpublication=$_FILES['imgpublication'];
$ext = strtolower(substr($imgpublication['name'],-3));
$allow_ext = array('jpg','png','gif');
if (in_array($ext,$allow_ext))
{
move_uploaded_file($imgpublication['tmp_name'],"images/oeuvres/".$imgpublication['name']);
}
}
else
{
$erreurpublication = "Votre fichier contient une mauvaise extension, ou n'est pas une image.";
}
if (isset($erreurpublication))
{
echo $erreurpublication;
}
}
}
?>
désolé pour l'indentation mais si je met le code en tag "Code", CCM ajout de \ devant les "
le but c que sur le bouton le script revienne sur la même pas pour le traitement donc action=""
voici le code remanié
<?php
session_start();
if (empty($_SESSION['membre_id']))
{
echo '<p class="textewarning">'."vous devez vous connectez pour accéder à la publication oeuvre".'</p>';
} else {
echo '
<form method="post" action="" enctype="multipart/form-data">
<input type="file" name="imgpublication"/>
<input type="submit" name="envoyer"/>
</form>';
if (isset($_POST['envoyer']))
{
if (!empty($_FILES))
{
$imgpublication=$_FILES['imgpublication'];
$ext = strtolower(substr($imgpublication['name'],-3));
$allow_ext = array('jpg','png','gif');
if (in_array($ext,$allow_ext))
{
move_uploaded_file($imgpublication['tmp_name'],"images/oeuvres/".$imgpublication['name']);
}
}
else
{
$erreurpublication = "Votre fichier contient une mauvaise extension, ou n'est pas une image.";
}
if (isset($erreurpublication))
{
echo $erreurpublication;
}
}
}
?>
désolé pour l'indentation mais si je met le code en tag "Code", CCM ajout de \ devant les "
re,
ça ne fonctionne toujours pas :/
voici le code :
ça ne fonctionne toujours pas :/
voici le code :
<?php session_start(); ?> <?php require_once("connexioninscription.inc.php"); ?> <!DOCTYPE HTML> <html> <head> <link rel="shortcut icon" title="log" type="image/png" href="mafavicon.png" /> <link href="css1.css" rel="stylesheet" type="text/css"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="desc." />desc" /> <title> Galerie d'art </title> </head> <body> <div id="container"> <?php include("header.inc.php"); ?> <?php include("menus.inc.php"); ?> <div id="corpspublication"> <div id="retourselect"> <a href="publication.php" title="recharger la page"><h1 class="titre1">Publication</h1></a> </div> <div id="souscorpspublication"> <div id="encartpubl"><h3 class="textesimple">Publier une oeuvre</h3></div> <?php if (empty($_SESSION['membre_id'])) { echo '<p class="textewarning">'."vous devez vous connectez pour accéder à la publication oeuvre".'</p>'; } else { echo '<form method="post" action="" enctype="multipart/form-data"> <input type="file" name="imgpublication"/> <input type="submit" name="envoyer"/> </form>'; if (isset($_POST['envoyer'])) { if (!empty($_FILES)) { $imgpublication=$_FILES['imgpublication']; $ext = strtolower(substr($imgpublication['name'],-3)); $allow_ext = array('jpg','png','gif'); if (in_array($ext,$allow_ext)) { move_uploaded_file($imgpublication['tmp_name'],"images/oeuvres/".$imgpublication['name']); } } else { $erreurpublication = "Votre fichier contient une mauvaise extension, ou n'est pas une image."; } if (isset($erreurpublication)) { echo $erreurpublication; } } } ?> </div> </div> <?php include("footer.inc.php"); ?> </div> </body> </html>
Je viens de faire quelques modifications pour être plus juste dans les test.
Chez moi ca marche bien
voici un lien avec le fichier modifier. https://www.cjoint.com/?3IfqE6zNLVW
Chez moi ca marche bien
voici un lien avec le fichier modifier. https://www.cjoint.com/?3IfqE6zNLVW
Salut à toi,
Merci encore pour ton aide apporté =),
Je pense changer le système de publication car il ne semble pas convenir à ce que je souhaite faire :/,
J'ai précédemment créé un espace membre, ( avec inscription, connexion, déconnexion, gestion du profil etc... )
et je souhaiterai liée le système de publication d'oeuvre, au membre, cet à dire que si le membre 'Thora' publie un dessin, une oeuvre etc.. dans ma base de donnée je pourrais voir l'id du membre qui a publier tel oeuvre, etc..
J'ai commencé par créé une table dans ma base de donnée "membres" qui regroupent toutes les tables ayant une liaison avec le membre ^^ :
Merci encore pour ton aide apporté =),
Je pense changer le système de publication car il ne semble pas convenir à ce que je souhaite faire :/,
J'ai précédemment créé un espace membre, ( avec inscription, connexion, déconnexion, gestion du profil etc... )
et je souhaiterai liée le système de publication d'oeuvre, au membre, cet à dire que si le membre 'Thora' publie un dessin, une oeuvre etc.. dans ma base de donnée je pourrais voir l'id du membre qui a publier tel oeuvre, etc..
J'ai commencé par créé une table dans ma base de donnée "membres" qui regroupent toutes les tables ayant une liaison avec le membre ^^ :
-- Structure de la table 'oeuvre_artiste'
--
CREATE TABLE IF NOT EXISTS 'oeuvre_artiste' (
'artiste_id' int(11) NOT NULL,
'titre_oeuvre' varchar(100) NOT NULL,
'description_oeuvre' text NOT NULL,
'image_oeuvre' varchar(100) NOT NULL DEFAULT 'défaut.jpg',
'oeuvre_categorie' int(11) NOT NULL,
'oeuvre_id' int(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY ('oeuvre_id')
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Stockage oeuvre' AUTO_INCREMENT=1 ;
oui intéressant.
Ne pas oublier de créer des indexes sur les champs souvent utiliser pour les recherches (comme titre_oeuvre). Cela augmente les performances de recherche, surtout si vous développez ensuite un système de recherche d'oeuvre.
un champ date (date d'ajout) serait peut être intéressant à ajouter
Ne pas oublier de créer des indexes sur les champs souvent utiliser pour les recherches (comme titre_oeuvre). Cela augmente les performances de recherche, surtout si vous développez ensuite un système de recherche d'oeuvre.
un champ date (date d'ajout) serait peut être intéressant à ajouter
re,
voici mon code SQL mis à jour :
Est-ce possible de récupérer le précédent code php pour l'adapter ? ou faut-il que je commence avec une autre base ^^
merci pour ton attention et ton aide :) sincèrement.
voici mon code SQL mis à jour :
-- Structure de la table 'oeuvre_artiste'
--
CREATE TABLE IF NOT EXISTS 'oeuvre_artiste' (
'artiste_id' int(11) NOT NULL,
'titre_oeuvre' varchar(100) NOT NULL,
'description_oeuvre' text NOT NULL,
'image_oeuvre' varchar(100) NOT NULL DEFAULT 'défaut.jpg',
'oeuvre_categorie' int(11) NOT NULL,
'oeuvre_style' int(11) NOT NULL,
'oeuvre_id' int(11) NOT NULL AUTO_INCREMENT,
'date_crea' date NOT NULL,
'date_edit' date NOT NULL,
PRIMARY KEY ('oeuvre_id'),
KEY 'titre_oeuvre' ('titre_oeuvre')
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Stockage oeuvre' AUTO_INCREMENT=1 ;
Est-ce possible de récupérer le précédent code php pour l'adapter ? ou faut-il que je commence avec une autre base ^^
merci pour ton attention et ton aide :) sincèrement.
Je pense que tu peux reprendre ton code précédent en l'adaptant.
Il faudra bien sur adapter le formulaire en ajoutant les zones supplémentaire (titre oeuvre, catégorie..) D'ailleurs il serait interessant de faire une table oeuvre_style et oeuvre_categorie afin de faire des listes déroulantes dynamiques.
Chose aussi important, faire attention à bien tester chaque champ afin qu'ils correspondent a vos critères (Null interdit, doublon ...) dans les tests de validation
Ca avance dans le bon sens
Il faudra bien sur adapter le formulaire en ajoutant les zones supplémentaire (titre oeuvre, catégorie..) D'ailleurs il serait interessant de faire une table oeuvre_style et oeuvre_categorie afin de faire des listes déroulantes dynamiques.
Chose aussi important, faire attention à bien tester chaque champ afin qu'ils correspondent a vos critères (Null interdit, doublon ...) dans les tests de validation
Ca avance dans le bon sens
Re,
Effectivement :D merci, j'ai créer 2 autres tables.
et
j'ai commencer également à modifier mon code php de ma page publication.php :
Merci encore pour tes conseilles et ton aide :), sincèrement.
Effectivement :D merci, j'ai créer 2 autres tables.
-- Structure de la table 'oeuvre_categorie'
--
CREATE TABLE IF NOT EXISTS 'oeuvre_categorie' (
'id_oeuvre_id' int(11) NOT NULL,
'oeuvre_categorie' int(11) NOT NULL,
'oeuvre_nom_cat' varchar(50) NOT NULL,
'cat_ordre' int(11) NOT NULL,
PRIMARY KEY ('id_oeuvre_id'),
KEY 'oeuvre_nom_cat' ('oeuvre_nom_cat')
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Categorie des oeuvres';
et
-- Structure de la table 'oeuvre_style'
--
CREATE TABLE IF NOT EXISTS 'oeuvre_style' (
'id_oeuvre' int(11) NOT NULL,
'oeuvre_style' int(11) NOT NULL,
'oeuvre_nom_style' varchar(50) NOT NULL,
'oeuvre_style_ordre' int(11) NOT NULL,
KEY 'oeuvre_nom_style' ('oeuvre_nom_style')
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Oeuvre style';
j'ai commencer également à modifier mon code php de ma page publication.php :
<?php session_start(); ?>
<?php require_once("connexioninscription.inc.php"); ?>
<?php
$query=$bdd->prepare('SELECT artiste_id, titre_oeuvre, description_oeuvre, image_oeuvre, oeuvre_categorie, oeuvre_style, oeuvre_id, date_crea, date_edit FROM oeuvre_artiste');
if (empty($_SESSION['membre_id']))
{
echo '<p class="textewarning">'."vous devez vous connectez pour accéder à la publication oeuvre".'</p>';
}
else
{
echo '<form method="post" action="" enctype="multipart/form-data">
<label for="titre">Titre :</label><input type="text" name="titre" id="oeuvretitre" />
<label for="oeuvre">Oeuvre :</label><input type="file" name="imgpublication"/>
<label for="categorie">Catégorie</label><br />
<select name="categorie" id="categorie">
<option value="peinture">Peinture</option>
<option value="croquis">Croquis</option>
<option value="dessin">Dessin</option>
<option value="autre">Autre...</option>
</select>
<label for="style">Style</label><br />
<select name="style" id="style">
<option value="abstrait">Abstrait</option>
<option value="pointillisme">Pointillisme</option>
<option value="cubisme">Cubisme</option>
<option value="autre">Autre...</option>
</select>
<label for="description">Description :</label><input type="text" name="titre" id="oeuvredescription" />
<label for="datecreaoeuvre">Date de création :</label><input type="text" name="datecreaoeuvre" id="datecreaoeuvre" />
<input type="submit" name="envoyer" value="envoyer"/>
</form>';
if (isset($_POST['envoyer']))
{
if (!empty($_FILES))
{
$imgpublication=$_FILES['imgpublication'];
$ext = strtolower(substr($imgpublication['name'],-3));
$allow_ext = array('jpg','png','gif');
if (in_array($ext,$allow_ext))
{
move_uploaded_file($imgpublication['tmp_name'],"images/oeuvres/".$imgpublication['name']);
}
}
else
{
$erreurpublication = "Votre fichier contient une mauvaise extension, ou n'est pas une image.";
}
if (isset($erreurpublication))
{
echo $erreurpublication;
}
}
}
?>
Merci encore pour tes conseilles et ton aide :), sincèrement.
pour la table oeuvre_categorie le champ id_oeuvre_id est confus. plutot id_oeuvre_cat
Attention aux nom de champ, dès que les tables vont augmenter avec en plus les relations, plus tu seras perdu. Petit conseil (même si ca doit tout révolutionner mais ca t'évitera des problèmes futurs) et de mettre un préfixe à tes champs ex:
pour la table oeuvre_categorie:
catov_id
catov_style
catov_nom_style
catov_style_ordre
ou autre préfixe (pas trop long)
pour la table oeuvre_style:
styoe_id
styoe_style
styoe_nom_style
styoe_style_ordre
enfin tu vois le principe
Attention aux nom de champ, dès que les tables vont augmenter avec en plus les relations, plus tu seras perdu. Petit conseil (même si ca doit tout révolutionner mais ca t'évitera des problèmes futurs) et de mettre un préfixe à tes champs ex:
pour la table oeuvre_categorie:
catov_id
catov_style
catov_nom_style
catov_style_ordre
ou autre préfixe (pas trop long)
pour la table oeuvre_style:
styoe_id
styoe_style
styoe_nom_style
styoe_style_ordre
enfin tu vois le principe
Re,
Merci :D il est vrai que par la suite cela pourra m'être utile :), j'ai appliqué ton conseil :
Merci :D il est vrai que par la suite cela pourra m'être utile :), j'ai appliqué ton conseil :
-- Structure de la table 'oeuvre_categorie'
--
CREATE TABLE IF NOT EXISTS 'oeuvre_categorie' (
'catov_id' int(11) NOT NULL,
'catov_categorie' int(11) NOT NULL,
'catov_nomcat' varchar(50) NOT NULL,
'catov_ordre' int(11) NOT NULL,
PRIMARY KEY ('catov_id'),
KEY 'catov_nomcat' ('catov_nomcat')
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Categorie des oeuvres';
-- Structure de la table 'oeuvre_style'
--
CREATE TABLE IF NOT EXISTS 'oeuvre_style' (
'styoe_id' int(11) NOT NULL,
'styoe_style' int(11) NOT NULL,
'styoe_nomstyle' varchar(50) NOT NULL,
'styoe_ordre' int(11) NOT NULL,
KEY 'styoe_nomstyle' ('styoe_nomstyle')
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Oeuvre style';
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut à toi,
Je suis actuellement sur mon code php, j'ai créer mes variables post du formulairen mais je ne vois pas comment envoyer le nom de l'avatar dans la base de donnée avec l'id du membre qui la post.
voici mon code actuelle :
Merci encore une fois pour ton aide ^^.
Je suis actuellement sur mon code php, j'ai créer mes variables post du formulairen mais je ne vois pas comment envoyer le nom de l'avatar dans la base de donnée avec l'id du membre qui la post.
voici mon code actuelle :
<?php session_start(); ?>
<?php require_once("connexioninscription.inc.php"); ?>
<!DOCTYPE HTML>
<html>
<head>
<link rel="shortcut icon" title="montitre" type="image/png" href="mafavicon.png" />
<link href="css1.css" rel="stylesheet" type="text/css">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="desc." />
<meta name="keywords" content="motclef" />
<title>
Galerie d'art</title>
</head>
<body>
<div id="container">
<?php include("header.inc.php"); ?>
<?php include("menus.inc.php"); ?>
<div id="corpspublication">
<div id="retourselect">
<a href="publication.php" title="recharger la page"><h1 class="titre1">Publication</h1></a>
</div>
<div id="souscorpspublication">
<div id="encartpubl"><h3 class="textesimple">Publier une oeuvre</h3></div>
<?php
$query=$bdd->prepare('SELECT artiste_id, titre_oeuvre, description_oeuvre, image_oeuvre, oeuvre_categorie, oeuvre_style, oeuvre_id, date_crea, date_edit FROM oeuvre_artiste');
if (empty($_SESSION['membre_id']))
{
echo '<p class="textewarning">'."vous devez vous connectez pour accéder à la publication oeuvre".'</p>';
}
else
{
echo '<form method="post" action="" enctype="multipart/form-data">
<label for="titre"><p class="textesimple">Titre : </p></label><input type="text" name="titre" id="oeuvretitre" />
<label for="oeuvre"><p class="textesimple">Oeuvre : </p></label><input type="file" name="imgpublication"/>
<label for="description"><p class="textesimple">Description : </p></label><input type="text" name="oeuvredescription" id="oeuvredescription" />
<label for="categorie"><p class="textesimplesans">Catégorie</p></label><br />
<select name="categorie" id="categorie">
<option value="peinture">Peinture</option>
<option value="croquis">Croquis</option>
<option value="dessin">Dessin</option>
<option value="autre">Autre...</option>
</select>
<label for="style"><p class="textesimplesans">Style</p></label><br />
<select name="style" id="style">
<option value="abstrait">Abstrait</option>
<option value="pointillisme">Pointillisme</option>
<option value="cubisme">Cubisme</option>
<option value="autre">Autre...</option>
</select>
<label for="datecreaoeuvre"><p class="textesimple">Date de création : </p></label><input type="text" name="datecreaoeuvre" id="datecreaoeuvre" />
<input type="submit" name="envoyer" value="envoyer"/>
</form>';
if (isset($_POST['envoyer']))
{
if (!empty($_FILES))
{
$imgpublication=$_FILES['imgpublication'];
$ext = strtolower(substr($imgpublication['name'],-3));
$allow_ext = array('jpg','png','gif');
if (in_array($ext,$allow_ext))
{
move_uploaded_file($imgpublication['tmp_name'],"images/oeuvres/".$imgpublication['name']);
}
}
else
{
$erreurpublication = "Votre fichier contient une mauvaise extension, ou n'est pas une image.";
}
if (isset($erreurpublication))
{
echo $erreurpublication;
}
$titre = ($_POST['titre']);
$oeuvredescription = ($_POST['oeuvredescription']);
$style = ($_POST['style']);
$datecreaoeuvre = ($_POST['datecreaoeuvre']);
}
}
?>
</div>
</div>
<?php include("footer.inc.php"); ?>
</div>
</body>
</html>
Merci encore une fois pour ton aide ^^.
vous récupérez le fichier par
$imgpublication=$_FILES['img'];
hors dans votre formulaire la variable s'appelle imgpublication
faudrait plutot faire $imgpublication=$_FILES['imgpublication'];
concernant l'erreur de l'extension votre test
est trop tot dans votre code puisque c'est en bas que vous dites $erreurpublication = "Votre fichier contient une mauvaise extension, ou n'est pas une image.";
faire le teste en bas de page
voila pour un début
merci pour ton aide :D, tout à l'aire de fonctionner correctement jusqu'à la,
juste par rapport au message d''erreur publication', lorsque j'arrive sur ma page sans même avoir inséré, et envoyé une image, le message d'erreur est déjà afficher :/.
faut-il rajouter une condition : si le formulaire est rempli, et que erreurpublication est positive alors afficher l'erreur ^^ ou est-ce juste un mauvais placement du code :s,
Voici mon code MAJ :
( j'ai également une autre question concernant ce système, il n'utilise pas les bases de données :/ ?, dans mon cas j'ai créé précédemment un espace membre, est je souhaiterai liée les dessins aux membres connecté.
Merci encore pour ton attention et ton aide, sincèrement :).
Normalement il ne devrait rien afficher la première fois
Essayez ceci
<form method="post" action="publication.php" enctype="multipart/form-data">
<input type="file" name="imgpublication"/>
<input type="submit" name="Envoyer" />
</form>
<?php
if (isset($_POST['Envoyer']))
{
if (!empty($_FILES))
{
$imgpublication=$_FILES['imgpublication'];
$ext = strtolower(substr($imgpublication['name'],-3));
$allow_ext = array('jpg','png','gif');
if (in_array($ext,$allow_ext))
{
move_uploaded_file($imgpublication['tmp_name'],"images/oeuvres/".$imgpublication['name']);
}
}
else
{
echo = "Votre fichier contient une mauvaise extension, ou n'est pas une image.";
}
}
?>
j'ai rajouter if (isset($_POST['Envoyer']))
{ }
comme dans ton exemple, cette fois si le message d'erreur ne s'affiche plus du tout même quand le format ne correspond pas ^^"
merci pour ta patience et ton aide :)