Insérer images MySQL/PHP

Fermé
elerien Messages postés 56 Date d'inscription jeudi 29 mai 2008 Statut Membre Dernière intervention 19 décembre 2010 - 19 déc. 2010 à 18:01
UgglyBoy Messages postés 422 Date d'inscription mercredi 24 septembre 2008 Statut Membre Dernière intervention 30 mai 2015 - 20 déc. 2010 à 19:13
Bonjour,

Je travaille atuellement sur une photothèque en php (obligatoire) et cherche donc :
1. a insérer des photos dans ma base de données MySQL afin de les afficher en miniatures dans un "table". Je suppose qu'il faut créer un formulaire avec un bouton parcourir afin de charger l'image ?

2. manipuler "exif" ==> je suis allée voir siur php.net (qui a un article dessus) mais je ne comprends pas comment il faut :
- ajouter l'option de compilation --enable-exif
- comment l'utiliser.

3. Rien à voir avec les images mais comment éviter le message "Notice: Undefined index: nom in C:\wamp\www\BE-php\Phototheque\ajoutphoto.php on line 60" alors qu'une fois le script executé (que j'insère les données dans la BDD, il disparait.
(il y a un message pour 'nom', 'auteur', 'date', 'lieu', ...).


pour info :
index.php
		<?php
			include "Connexion_BDD.php";
			
			// récupération de toutes les photos
			$query = mysql_query("SELECT * FROM photo") or die(mysql_error());
			
			// Y a t'il des résultats ?
			if (!mysql_fetch_row($query)) {
			echo "Aucun enregitrement ne correspond\n";
			exit;
			}
		?>

		<!-- tableau pour l'affichage de la liste -->
		<table>
			<!-- ligne d'entêtes du tableau -->
			<tr>
				<th>Nom</th>
				<th>Auteur</th>
				<th>Date</th>
				<th>Lieu</th>
				<th>Description</th>
				<th>Commentaires</th>
				<th>Personnes présentes</th>
			</tr>

			<!-- code PHP pour l'affichage du contenu de la table -->
			<?php
				// boucle sur les photos
				while ( $a = mysql_fetch_assoc($query)) 
				{
					// affichage d'une ligne du tableau
					echo "<tr>\n";
					echo "<td>".$a['Nom_photo']."</td>\n";
					echo "<td>".$a['Auteur_photo']."</td>\n";
					echo "<td>".$a['Date_photo']."</td>\n";
					echo "<td>".$a['Lieu_photo']."</td>\n";
					echo "<td>".$a['description_photo']."</td>\n";
					echo "<td>".$a['commentaire_photo']."</td>\n";
					echo "<td>".$a['personnes_sur_photo']."</td>\n";
					echo "</tr>\n";
				}
		
			?>

			<!-- fin du tableau -->
		</table>
		<p>
			<a href="ajoutphoto.php">Ajouter une photo</a>
		</p>
	</body>


partie du code d'ajout d'images (inclut dans index .php
<form action="ajoutphoto.php" method="post">
			<dl>
				<p>Votre nom :<br />
				<dd><input type="text" name="nom" size="20" /></dd>
				
				<dt>Auteur:</dt>
				<dd> <input type="text" name="auteur" /></dd>

				<dt>Date:</dt>
				<dd><input type="date" name="date" /></dd>

				<dt>Lieu:</dt>
				<dd><input type="text" name="lieu" /></dd>
				
				<dt>Hauteur:</dt>
				<dd><input type="int" name="hauteur" /></dd>
				
				<dt>Largeur:</dt>
				<dd><input type="int" name="largeur" /></dd>
				
				<dt>Poids:</dt>
				<dd><input type="int" name="poids" /></dd>
				
				<dt>Description:</dt>
				<dd><input type="text" name="description" /></dd>
				
				<dt>Commentaires:</dt>
				<dd><input type="text" name="commentaire"  /></dd>
				
				<dt>Personnes présentes:</dt>
				<dd><input type="text" name="personnes"/></dd>
			</dl>
			
			<input type="submit" name="Submit" value="Envoyer"/>
			<input type="reset" name="clear" value="Recommencer"/> 
			
			<p>
				<a href="index.php">Retour</a>
			</p>
		</form>
		<?php
			//Récupérer les données 				
			$nom=$_POST['nom'];
			$auteur=$_POST['auteur'];  /*et ainsi de suite */
			$date=$_POST['date'];
			$lieu=$_POST['lieu'];
			$hauteur=$_POST['hauteur'];
			$largeur=$_POST['largeur'];
			$poids=$_POST['poids'];
			$description=$_POST['description'];
			$commentaires=$_POST['commentaire'];
			$personnes=$_POST['personnes'];

			/* puis faire la requete : */						
			$query = "INSERT INTO $table (Nom_photo, Auteur_photo, Date_photo, Lieu_photo, hauteur_photo, largeur_photo, poids_photo,description_photo,commentaire_photo, personnes_sur_photo) 
				VALUES ('$nom', '$auteur', '$date', '$lieu', '$hauteur', '$largeur', '$poids', '$description', '$commentaires', '$personnes')";
			$resultat = mysql_query($query)
				or die("L'insertion a echouée car ". mysql_error() ."."); 	
		?>


Merci d'avance pour votre aide.

A voir également:

1 réponse

UgglyBoy Messages postés 422 Date d'inscription mercredi 24 septembre 2008 Statut Membre Dernière intervention 30 mai 2015 64
20 déc. 2010 à 19:13
1. tu dois décider si tu veux insérer l'url de l'image ou l'image elle-même (déconseillé).
2. es-tu sûr d'en avoir besoin, sais-tu à quoi cela sert?
3. dans "php.ini" remplacer "error_reporting = E_ALL" par "error_reporting = E_ALL & ~E_NOTICE"
0