Php envoi d'image via formulaire
Résolu
Zocan
-
Zocan -
Zocan -
Bonjour,
Je suis assez novice en php , et j'ai décidé il y a peu de me replonger dans des bouquins (notamment Php 5 le guide complet de micro application)
J'ai suivi un de leur exercice qui consiste a crée un formulaire afin de crée une bibliothèque de livre . Tout se passe bien quand j'ajoute des livres dans ma base de donnée via le formulaire. Mais dès le moment ou je souhaite ajouter une photo en guise de couverture , plus aucun enregistrement (même dans phpmyadmin la table ne compte pas de nouvel enregistrement !) J'ai pourtant relu minutieusement mon code mais je ne vois pas ou est le problème !
ps : L'image de couverture s'upload bien par contre et si j'enlève les bout de codes concernant la photo de couverture tout fonctionne..
Source du formulaire :
Source du script qui s'occupe d'ajouter ça a la BDD :
et enfin source du fichier qui s'occupe d'afficher la liste de film :
Si quelqu'un pouvait m'éclairer , ça serait génial !
Merci d'avance :)
Je suis assez novice en php , et j'ai décidé il y a peu de me replonger dans des bouquins (notamment Php 5 le guide complet de micro application)
J'ai suivi un de leur exercice qui consiste a crée un formulaire afin de crée une bibliothèque de livre . Tout se passe bien quand j'ajoute des livres dans ma base de donnée via le formulaire. Mais dès le moment ou je souhaite ajouter une photo en guise de couverture , plus aucun enregistrement (même dans phpmyadmin la table ne compte pas de nouvel enregistrement !) J'ai pourtant relu minutieusement mon code mais je ne vois pas ou est le problème !
ps : L'image de couverture s'upload bien par contre et si j'enlève les bout de codes concernant la photo de couverture tout fonctionne..
Source du formulaire :
<html> <head> <title>Biblio</title> </head> <body> <h1> Ajout </h1> <form action="ajoute.php" method="post" enctype="multipart/form-data"> <fieldset> <legend> Nouveau livre </legend> <label> Titre </label> <input type="text" name="titre" /><br/> <label> auteur </label> <input type="text" name="auteur" /><br/> <label> annee </label> <input type="text" name="annee" /><br/> <label> genre </label> <select name="genre"> <option value="Roman">Roman</option> <option value="Poesie">Poésie</option> </select><br/> <label> Etat </label> <input type="radio" name="etat" value="1" /> Neuf <input type="radio" name="etat" value="0" /> Occasion <br/> <label> Couverture </label> <input type="file" name="couverture" /> <br/> <input type="submit" value="Ajouter" /> </fieldset> <a href="Listing livre.php">Retour à la liste </a> </body> </html>
Source du script qui s'occupe d'ajouter ça a la BDD :
<?php
$liaison = mysql_connect("localhost", "root", "");
mysql_select_db("biblio");
if (isset($_FILES['couverture'])) {
$source = $_FILES['couverture'] ['tmp_name'];
$destination = 'c:\\wamp\\www\\images\\'
.$_FILES['couverture'] ['name'];
if ($_FILES['couverture']['error'] > 0) {
die("erreur lors du telechargement du fichier");
}
if (!move_uploaded_file($source, $destination)) {
die("erreur lors du deplacement du fichier");
}
$couverture = $_FILES['couverture'] ['name'];
}
else {
$couverture = '' ;
}
$sql = "insert into livre "
."(titre, auteur, annee, genre, etat) VALUES "
."('".mysql_real_escape_string($_REQUEST['titre']) ."',"
."'".mysql_real_escape_string($_REQUEST['auteur']) ."',"
."'".mysql_real_escape_string($_REQUEST['annee']) ."',"
."'".mysql_real_escape_string($_REQUEST['genre']) ."',"
."'".mysql_real_escape_string($_REQUEST['etat']) ."',"
."'".mysql_real_escape_string($couverture)."')";
mysql_query($sql);
mysql_close($liaison);
?>
Ajout effectué !
<a href="Listing livre.php">retour</a>
et enfin source du fichier qui s'occupe d'afficher la liste de film :
<?php
$liaison = mysql_connect("localhost", "root", "");
mysql_select_db("biblio");
$sql = "select * from livre";
$livres = mysql_query($sql) ;
?>
<html>
<head>
<title>Biblio</title>
</head>
<body>
<h1>Listes des livres </h1>
<ul>
<?php while (($livre = mysql_fetch_assoc($livres)) !== false) : ?>
<li>
<?php if (!empty($livre["couverture"])): ?>
<img src="/images/<?php echo $livre["couverture"]; ?>" />
<?php endif; ?>
<?php echo $livre["titre"]; ?> par
<em><?php echo $livre["auteur"]; ?> </em>
(<?php echo $livre["annee"]; ?>)
</li>
<?php endwhile; ?>
</ul>
</body>
</html>
<?php mysql_close($liaison); ?>
Si quelqu'un pouvait m'éclairer , ça serait génial !
Merci d'avance :)
A voir également:
- Php envoi d'image via formulaire
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook compte désactivé - Guide
- Image iso - Guide
- Formulaire de reclamation instagram - Guide
- Légender une image - Guide