Pbm pour afficher une photo sur mon site web

otchouck Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   -  
otchouck Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
j'ai créé un formulaire pour charger des photos sur mon site web et je ne sais comment gerer avec php ces infos pour les afficher dans différentes pages de mon site web!
voici le code du formulaire:

<form method="post" action="preview.php" enctype="multipart/form-data">
<input type="file" name="photo"></center>
<center><font size=4 face="constantia" color="red">Donnez un nom à la photo</font><br>
<input type="text" name="libelle" size=30><br><br>
<center><font size=4 face="constantia" color="red">sélectionnez la catégorie</font><br>
<select name="categorie">
<option value="MESACTIVITES">MES ACTIVITES</option>
<option value="FAMILLE">FAMILLE</option>
<option value="AMIS">AMIS</option>
<option value="EVENEMENT">EVENEMENTS</option>
</select><br><br>
<center><font size=4 face="constantia" color="red">ajouter un commentaire à la photo</font><br>
<textarea name="commentaire" rows=5 cols=40></textarea><br>
<input type="submit" value="charger"><input type="reset" value="annuler"></center>
</form><br>

pourriez vous m'aider pour la suite de sorte à ce que je puisse faire une prévisualisation et un rangement dans les différentes pages "acivité, famille, amis, evenement"
merci d'avance!!

A voir également:

1 réponse

avion-f16 Messages postés 19254 Date d'inscription   Statut Contributeur Dernière intervention   4 507
 
Salut.

Tu peux créer une table "categories" contenant ces champs (au minimum) :
- (INT ; unsigned ; AUTO_INCREMENT) id
- (TINYTEXT) nom

Et une autre table "images" avec au minimum ces champs :
- (INT ; unsigned ; AI) id
- (INT ; unsigned) cat_id
- (TINYTEXT) titre
- (TINYTEXT) nom (du fichier)

Sur la page "categories.php", il suffit de faire un lien pour chaque catégorie vers la page "categorie.php" en passant en argument l'ID de cell-ci.
Exemple : categorie.php?id=1
<?php
$pdo = new PDO('mysql:host=localhost;dbname=ta_base','root','');

$sql = 'SELECT * FROM categories';
$req = $pdo->query($sql);

while($cat = $req->fetch()) {
    echo '<a href="categorie.php?id='.$cat['id'].'">'.$cat['nom'].'</a><br/>';
}

$req->closeCursor();
?>


Sur la page "categorie.php", il suffit de lister toutes les images « WHERE cat_id = $_GET['id'] ». Tu peux faire un lien vers une page "voir_image.php" en passant en argument l'ID de l'image.

Pour finir, sur la page "voir_image.php", il suffit de récupérer le titre et le nom de l'image.
0
otchouck Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   6
 
Merci bcp pr ton aide!! mè dis moi? n'est il pa nécessaire d'ajouter ds la table "image" le champ "fichier"? si oui, quels seront ses attributs?
0
avion-f16 Messages postés 19254 Date d'inscription   Statut Contributeur Dernière intervention   4 507
 
Non, c'est le champ "nom" qui contiendra le chemin vers le fichier.
Le tire, lui, contiendra un titre entré à la main (sans limitation au niveau des caractères, contrairement au nom du fichier).
D'ailleur je te conseil de générer le nom du fichier lors de l'upload, avec ceci :
$nom = uniqid(md5($_SERVER['REQUEST_TIME']).'_');
Et n'oublie pas d'ajouter l'extension :
$pathinfo = pathinfo($_FILES['image']['name']);
$extension = strtolower($pathinfo['extension']);
$nom .= '.'.$extension;
0
otchouck Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   6
 
ok!!
donc si jè bien compris, dans le formulaire pour recueillir les informations, action=categorie.php ?
0
avion-f16 Messages postés 19254 Date d'inscription   Statut Contributeur Dernière intervention   4 507
 
Oui, et dans les value, il faut mettre l'id de la catégorie.
0
otchouck Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   6
 
je ne comprend pas quand tu parles de value ou de "id" à mettre en argument!! je suis vraiment novice!!
0