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 !
Source du fomulaire :
<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 :)
Afficher la suite