salut,je suis entrain de réaliser un petit catalogue de produits
voilà le formulaire pour entrer les données produits
Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 <form enctype="multipart/form-data" method="post" action="addarticle.php"> <fieldset> <legend>Informations sur l'article</legend> <label>Nom de l'article: <input type="text" name="nom" /></label><br><br> <label>Taille(ou version): <input type="text" name="taille" /></label><br><br> <label>Catégorie <select name="categorie"> <option value="categorie1">categorie1</option> <option value="categorie2">categorie2</option> <option value="categorie3">categorie3</option> <option value="categorie4">categorie4</option> </select> </label><br><br> <label>Sous-catégorie <select name="sous_categorie"> <option value="sous_categorie1">sous-categorie1</option> <option value="sous_categorie2">sous-categorie2</option> <option value="sous_categorie3">sous-categorie3</option> <option value="sous_categorie4">sous-categorie4</option> </select> </label><br><br> <label>Prix: <input type="text" name="prix" size="4" maxlength="4" /></label><br><br> <label>Quantité disponible: <input type="text" name="quantite" size="4" maxlength="4" /></label><br><br> <label>Photo de l'article: <input type="file" name="image" /></label><br><br> </fieldset> <input type="submit" value="Ajouter l'article" name="validation" /> </form>
il renvoi sur une page php que voici
donc comme vous pouvez le constater je mets l'image dans un blob,mais ensuite quand je fait ma boucle while pour afficher mon cataloguensi j'y mets un header(pour afficher l'image) ça ne m'affiche qu'une seule image ce qui est très chiant car je veux afficher l'image et les données correspondant à chaque produit dans la boucle
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 <?php mysql_connect("localhost", "root", ""); mysql_select_db ("boutique"); if ( isset($_POST) && !empty($_POST)) { extract($_POST); } $reponse=mysql_query("SELECT * FROM article WHERE nom='".addslashes($nom)."'"); $test= mysql_num_rows($reponse); if ($test==0) { if(isset($_POST['validation'])) { //Indique si le fichier a été téléchargé $verif = is_uploaded_file($_FILES['image']['tmp_name']); if(!$verif) { echo 'Un problème est survenu durant l opération de transfert de l image. Veuillez réessayer !'; } else { $maxtaille = 300000; if($_FILES['image']['size'] > $maxtaille) { echo 'Votre image est supérieure à la taille maximale de '.$maxtaille.' octets'; } else {extract($_POST); $image = addslashes(file_get_contents($_FILES['image']['tmp_name'])); mysql_query("INSERT INTO article VALUES ('','".addslashes($nom)."','".addslashes($taille)."','".addslashes($prix)."','".addslashes($categorie)."','".addslashes($sous_categorie)."','".addslashes($quantite)."','".$image."','".$_FILES['image']['type']."','')"); mysql_close(); ?>L'article <? echo $nom;?> a bien été rajouté dans le catalogue à <?php echo $quantite;?> unités,ce nombre baissera au fur et à mesure des commandes<?php } } } } ?>
je pense que le problême vient du header vu que le header ordonne d'afficher une image
Donc ma question est comment afficher à la fois des images et des données..
Code : Sélectionner tout - Visualiser dans une fenêtre à part header ("Content-type: "image/png");
je m'étais retranché sur une upload de l'image sur le serveur
au lieu d'introduire l'image dans un blob ,je la mets dans un répertoire upload sur le serveur
pour que tous les fichiers image aient un nom différent je leur donne le nom de la date mais je ne sais pas comment afficher cette image depuis ma boucle while...j'ai bien essayer img src mais çà fonctionne pas
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 extract($_POST); $nomfichier = microtime(); $nomfichier = "upload/".str_replace(' ','',$nomfichier); $nom2=microtime(); $resultat = move_uploaded_file($_FILES['image']['tmp_name'],$nomfichier);
Voilà donc si quelqu'un peut m'aider svp ça serait cool
Partager