Renommer une image selon une id produit
Fermé
yvesman
-
28 oct. 2021 à 11:21
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 - 3 nov. 2021 à 10:24
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 - 3 nov. 2021 à 10:24
A voir également:
- Renommer une image selon une id produit
- Clé de produit windows 10 gratuit - Guide
- Renommer plusieurs fichiers en même temps - Guide
- Comment agrandir une image - Guide
- Créer une image iso - Guide
- Renommer iphone - Guide
12 réponses
jordane45
Messages postés
38321
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 décembre 2024
4 707
Modifié le 28 oct. 2021 à 11:49
Modifié le 28 oct. 2021 à 11:49
Ce n'est pas possible...
Tu n'as aucun "lien" entre ton formulaire d'upload et ton csv ....
On va voir le souci autrement....
Il faudrait, dans ce formulaire, pouvoir choisir le produit auquel associer l'image....
Tu pourrais, par exemple, proposer la liste des produits (dans un select ) dans ton formulaire...
Et puis... tu insères déjà le nom de l'image en BDD .. donc il faudrait simplement ajouter un champ à ta table pour y contenir l'id du produit concerné..
PS: prends l'habitude de mettre ton PHP ... AVANT ton html....
Bref..
ça pourrait donner un truc du genre
PS²: je t'invite à prendre connaissance de ce qui est marqué ici
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Histoire que tes codes soient un peu moins brouillons..
Tu n'as aucun "lien" entre ton formulaire d'upload et ton csv ....
On va voir le souci autrement....
Il faudrait, dans ce formulaire, pouvoir choisir le produit auquel associer l'image....
Tu pourrais, par exemple, proposer la liste des produits (dans un select ) dans ton formulaire...
Et puis... tu insères déjà le nom de l'image en BDD .. donc il faudrait simplement ajouter un champ à ta table pour y contenir l'id du produit concerné..
PS: prends l'habitude de mettre ton PHP ... AVANT ton html....
Bref..
ça pourrait donner un truc du genre
<?php require_once("db_connect_BDO.php"); //------------------------------------------------// //------------ FONCTIONS -----------------// //------------------------------------------------// function uploadImg(){ $extensions = ['jpg', 'jpeg', 'png', 'gif', 'tif', 'bmp']; if (isset($_FILES['file'])) { $tmpName = $_FILES['file']['tmp_name']; $name = $_FILES['file']['name']; $size = $_FILES['file']['size']; $error = $_FILES['file']['error']; $tabExtension = explode('.', $name); $extension = strtolower(end($tabExtension)); $maxSize = 500000; if (in_array($extension, $extensions) && $error == 0) { $uniqueName = uniqid('', true); //uniqid génère quelque chose comme ca : 5f586bf96dcd38.73540086 $file = $uniqueName . "." . $extension; //$file = 5f586bf96dcd38.73540086.jpg if (!move_uploaded_file($tmpName, './upload/' . $file)) { echo "Erreur lors de l'upload de l'image sur le serveur .."; exit; } return $file; } // fin in-array } } function insertImgBdd($fileName, $product_id) { global $conn; $sql = "INSERT INTO file (name,product_id) VALUES (:name,:id)"; $data = [ ':name' => $fileName , ':product_id' => $product_id ]; $stmt = $conn->prepare($sql); $stmt->execute($data); } /** * Retourne la lite des produits * @return array */ function getProductList(){ global $conn; $sql = "SELECT * FROM produits"; try { $stmt = $conn->prepare($sql); $stmt->execute(); return $stmt->fetchAll(); // stocke le résultat de la requête dans un array } catch (Exception $e) { echo "Erreur dans la requête " . $e->getMessage(); } } //------------------------------------------------// //------------ DEBUT DU TRAITEMNT -----------------// //------------------------------------------------// //liste des produits $arrProducts = getProductList(); //traitement du formulaire.. if (isset($_POST['produit'])) { $product_id = !empty($_POST['produit']) ? $_POST['produit'] : NULL; if ($product_id) { $img = uploadImg(); //on upload l'image sur le serveur insertImgBdd($img, $product_id); // on insere le nom de l'image en BDD et on l'associe au produit selectionné } } ?> <!DOCTYPE html> <html> <head> <meta charset='utf-8'> <meta name='viewport' content='width=device-width, initial-scale=1'> <title>Image produit</title> </head> <body> <h2>Ajouter une image</h2> <form action='image.php' method='POST' enctype='multipart/form-data'> <lable for="produit">Produit</label><!-- comment --> <select name="produit" id="produit"><!-- comment --> <?php foreach ($arrProducts as $P) { echo "<option value='" . $P['id'] . "'>" . $P['name'] . "</option>"; } ?> </select> <br> <label for='file'>Fichier</label> <input type='file' name='file'> <button type='submit'>Enregistrer</button> </form> <h2>Mes images</h2> <?php //sortie de l'image if ($img) { echo "<img src='./upload/" . $img . "' width='300px' ><br>"; } ?> </body> </html>
PS²: je t'invite à prendre connaissance de ce qui est marqué ici
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Histoire que tes codes soient un peu moins brouillons..
l'idée est interessante mais n'y aurait il pas moyen d'automatiser l'action pour pas a avoir enregistrer image par image ( ce qui prendrait un temps monstre)
par contre ton script genere une erreur :
Fatal error: Uncaught PDOException: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in /home/......./domains/........../public_html/image2.php:46
par contre ton script genere une erreur :
Fatal error: Uncaught PDOException: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in /home/......./domains/........../public_html/image2.php:46
jordane45
Messages postés
38321
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 décembre 2024
4 707
28 oct. 2021 à 13:23
28 oct. 2021 à 13:23
Ligne 42, le nom de la variable n'est pas le bon.
Ie faut le remplacer par :id
Pour ce qui est de l'automatiser... Il faudrait déjà savoir comment tu accède à ce formulaire.
As-tu un moyen de savoir pour quel produit tu veux uploader la photo ??
Dis voir, as-tu réfléchi à la conception de tes pages avant de te mettre à coder ???
C'est un minimum....
Ie faut le remplacer par :id
Pour ce qui est de l'automatiser... Il faudrait déjà savoir comment tu accède à ce formulaire.
As-tu un moyen de savoir pour quel produit tu veux uploader la photo ??
Dis voir, as-tu réfléchi à la conception de tes pages avant de te mettre à coder ???
C'est un minimum....
j'ai modifie le code :
pour enregistrer le nom de l'image du meme nom qui sors dans le label
mais quand je lance function uploadImg j'ai le message d'erreur en echo
pourtant tout les echos reviennent remplis
EDIT : correction des balises de code ( encore !! ) => Ajout du LANGAGE pour avoir la coloration syntaxique
function uploadImg(){ $extensions = ['jpg', 'jpeg', 'png', 'gif', 'tif', 'bmp']; $name = $_FILES['file']['name']; $tabExtension = explode('.', $name); $extension = strtolower(end($tabExtension)); $product_id = !empty($_POST['produit']) ? $_POST['produit'] : NULL; $file = $product_id . "." . $extension; //if (!move_uploaded_file($name,'./upload/'.$file)) if (!move_uploaded_file($name, './upload/' . $file)) { echo "Erreur lors de l'upload de l'image sur le serveur .."; echo '<br/>' ; echo 'extension :<br/>' ; echo $extension,'<br/>'; echo 'name :<br/>' ; echo $name,'<br/>'; echo 'product_id :<br/>' ; echo $product_id,'<br/>'; echo 'file :<br/>' ; echo $file,'<br/>'; exit; } //fin if move } //fin function
pour enregistrer le nom de l'image du meme nom qui sors dans le label
mais quand je lance function uploadImg j'ai le message d'erreur en echo
echo "Erreur lors de l'upload de l'image sur le serveur ..";
pourtant tout les echos reviennent remplis
EDIT : correction des balises de code ( encore !! ) => Ajout du LANGAGE pour avoir la coloration syntaxique
jordane45
Messages postés
38321
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 décembre 2024
4 707
2 nov. 2021 à 17:08
2 nov. 2021 à 17:08
Et la suite du message d'erreur ??
ça serait utile de savoir ce que contiennent les différentes variables...
ça serait utile de savoir ce que contiennent les différentes variables...
voila ce que j'ai en retour
extension :
jpg
name :
1633470487-117-image.jpg
product_id :
Four encastrable pyrolyse Whirlpool AKZ9629IX - Four pyrolyse Inox - multifonction - Chaleur tournante ou pulsée - 73 litres - Porte froide (4 vitres) - Classe énergétique A+
file :
Four encastrable pyrolyse Whirlpool AKZ9629IX - Four pyrolyse Inox - multifonction - Chaleur tournante ou pulsée - 73 litres - Porte froide (4 vitres) - Classe énergétique A+.jpg
extension :
jpg
name :
1633470487-117-image.jpg
product_id :
Four encastrable pyrolyse Whirlpool AKZ9629IX - Four pyrolyse Inox - multifonction - Chaleur tournante ou pulsée - 73 litres - Porte froide (4 vitres) - Classe énergétique A+
file :
Four encastrable pyrolyse Whirlpool AKZ9629IX - Four pyrolyse Inox - multifonction - Chaleur tournante ou pulsée - 73 litres - Porte froide (4 vitres) - Classe énergétique A+.jpg
jordane45
Messages postés
38321
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 décembre 2024
4 707
2 nov. 2021 à 17:50
2 nov. 2021 à 17:50
heu... tu ne penses pas que pour un id .... Four encastrable pyrolyse Whirlpool AKZ9629IX - Four pyrolyse Inox - multifonction - Chaleur tournante ou pulsée - 73 litres - Porte froide (4 vitres) - Classe énergétique A+ ça ne soit un peu (juste un peu...) trop long ????
Et en plus.. avec des caractères spéciaux, des parenthèses, des "plus" ...
un ID ( id veut dire IDENTIFIANT ) .. faut que ça reste UNIQUE .. mais relativement "court" ...
il me semble, que dans les exemple que je t'avais déjà donné.. j'utilisai le champ " ID " de ta bdd ( champ NUMERIQUE ) et non le "LIBELLE" du produit...
Faut pas oublier non plus que, selon l'OS sur lequel tourne ton site web (le serveur qui héberge tes pages) tu peux avoir des limitations dans le nombre de caractères autorisés pour le chemin complet d'un fichier ... ( sur windows ça doit tourner autour de 256 caractères (du moins sur les anciens windows))
Et en plus.. avec des caractères spéciaux, des parenthèses, des "plus" ...
un ID ( id veut dire IDENTIFIANT ) .. faut que ça reste UNIQUE .. mais relativement "court" ...
il me semble, que dans les exemple que je t'avais déjà donné.. j'utilisai le champ " ID " de ta bdd ( champ NUMERIQUE ) et non le "LIBELLE" du produit...
Faut pas oublier non plus que, selon l'OS sur lequel tourne ton site web (le serveur qui héberge tes pages) tu peux avoir des limitations dans le nombre de caractères autorisés pour le chemin complet d'un fichier ... ( sur windows ça doit tourner autour de 256 caractères (du moins sur les anciens windows))
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
c'est vrai que c'est long mais c'est necessaire car a l'affichage de l'image je vais aller rechercher le nom du produit et le comparer au nom de l'image pour faire apparaitre l'image correspondant au nom
je n'utilise pas la bdd dans cette partie ormis pour chercher le nom des produits et la mettre dans le label
les noms sont inscrit dans une bdd avec un autre script
j'ai limite le nombre de caractere avec un substr mais ca ne change pas grand chose
je n'utilise pas la bdd dans cette partie ormis pour chercher le nom des produits et la mettre dans le label
les noms sont inscrit dans une bdd avec un autre script
j'ai limite le nombre de caractere avec un substr mais ca ne change pas grand chose
jordane45
Messages postés
38321
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 décembre 2024
4 707
2 nov. 2021 à 19:00
2 nov. 2021 à 19:00
Tu pourras comparer de la même facon avec l'id du produit...
Et puis.. je ne comprends vraiment pas pourquoi tu te refuses à utiliser la bdd... Surtout que tu stockes déjà le nom de l'image dans la base .
A un moment va falloir arrêter de s'entêter et essayer de revoir un minimum la conception de tes pages...
Sinon tu vas faire une usine à gaz... Inmaintenable...et bourrée de bugs et de.. malfaçons
Et puis.. je ne comprends vraiment pas pourquoi tu te refuses à utiliser la bdd... Surtout que tu stockes déjà le nom de l'image dans la base .
A un moment va falloir arrêter de s'entêter et essayer de revoir un minimum la conception de tes pages...
Sinon tu vas faire une usine à gaz... Inmaintenable...et bourrée de bugs et de.. malfaçons
parce que j'extraie les noms directement d'un fichier csv
je vais avoir beaucoup de donnees a traiter c'est pourquoi je prefere cette methode
peut on en revenir a mon probleme stp
je gere les galeres au fur et a mesure
je vais avoir beaucoup de donnees a traiter c'est pourquoi je prefere cette methode
peut on en revenir a mon probleme stp
je gere les galeres au fur et a mesure
jordane45
Messages postés
38321
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 décembre 2024
4 707
2 nov. 2021 à 19:22
2 nov. 2021 à 19:22
Enfin bon.. vu que tu insert les produits en bdd ... tu as donc des ID .... je ne vois donc pas où sont les difficultés.
Pour ma part je m'arrête là ..
Parler à un mur .. ça ne m'intéresse pas.
Bonne continuation.
Pour ma part je m'arrête là ..
Parler à un mur .. ça ne m'intéresse pas.
Bonne continuation.
entre le nom et l'id je vois pas la difference et dans tout les cas ca ne resoud pas mon probleme
jordane45
Messages postés
38321
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 décembre 2024
4 707
Modifié le 2 nov. 2021 à 20:16
Modifié le 2 nov. 2021 à 20:16
Mais si ça résout ton problème...
L'id sera un chiffre très court...
Tu n'attends pas donc pas la limitation éventuelle dans le nombre de caractères possible pour le chemin du fichier.
Ça évitera également qu'il y a des caractères spéciaux
Enfin bon je vais pas me répéter tu n'as qu'à relire l'ensemble des messages que nous avons déjà échangé pour comprendre.
Je ne peux pas comprendre à ta place il va falloir que tu fasses des efforts
L'id sera un chiffre très court...
Tu n'attends pas donc pas la limitation éventuelle dans le nombre de caractères possible pour le chemin du fichier.
Ça évitera également qu'il y a des caractères spéciaux
Enfin bon je vais pas me répéter tu n'as qu'à relire l'ensemble des messages que nous avons déjà échangé pour comprendre.
Je ne peux pas comprendre à ta place il va falloir que tu fasses des efforts
j'ai deja resolu ce probleme avec substr
jordane45
Messages postés
38321
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 décembre 2024
4 707
2 nov. 2021 à 20:17
2 nov. 2021 à 20:17
Si tu le dis....
En espérant pour toi que tu n'auras pas des produits ayant un nom plus ou moins proche et donc que tu risques d'avoir les même caractère si tu fais du substring...
En espérant pour toi que tu n'auras pas des produits ayant un nom plus ou moins proche et donc que tu risques d'avoir les même caractère si tu fais du substring...
en mettant 45 caracteres ya peu de chances
pour mon probleme tu vois, une soluc concretement ?
pour mon probleme tu vois, une soluc concretement ?
jordane45
Messages postés
38321
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 décembre 2024
4 707
2 nov. 2021 à 20:49
2 nov. 2021 à 20:49
Ah ben ça des solutions j'en vois ...mais comme tu ne veux pas m'écouter tant pis pour toi ..
En plus, je t'ai posé des questions auxquelles tu n'as jamais répondu...
Bref... Comme je te l'ai dit ....j'arrête là. bonne soirée.
En plus, je t'ai posé des questions auxquelles tu n'as jamais répondu...
Bref... Comme je te l'ai dit ....j'arrête là. bonne soirée.
a part de parler de l'id desole t'as pas apporte de vrai soluc
quelle question ?
quelle question ?
jordane45
Messages postés
38321
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 décembre 2024
4 707
2 nov. 2021 à 22:10
2 nov. 2021 à 22:10
Dans ta précédente discussion je t'ai demandé :
De plus, dans ton code, tu insères déjà le nom de l'image en bdd
Je t'ai donc demandé à plusieurs reprises.. pourquoi ne pas insérer en même temps l' ID du produit ....
ça aussi.. tu ne m'as toujours pas répondu...
Donc ...
Commence par nous expliquer en DETAILS ( sans oublier de donner le nom des différents fichiers concernés) le CHEMINEMENT de ton programme...
Voici le début .. je te laisse compléter ( Et répondre à mes précédentes questions)
Etape 1 : Import d'une liste de produit depuis un fichier CSV via le script se trouvant dans le fichier ...... .php
Etape 2 : ... ??
Reprenons ...
A quel moment fais tu l'upload de ton image ?
Via un formulaire ?
Ce formulaire contient quels champs ?
Il est appelé dans quel fichier ?
Est-ce que le formulaire est lié à un produit ?
De plus, dans ton code, tu insères déjà le nom de l'image en bdd
$sql = "INSERT INTO file (name) VALUES (:name)";
Je t'ai donc demandé à plusieurs reprises.. pourquoi ne pas insérer en même temps l' ID du produit ....
ça aussi.. tu ne m'as toujours pas répondu...
Donc ...
Commence par nous expliquer en DETAILS ( sans oublier de donner le nom des différents fichiers concernés) le CHEMINEMENT de ton programme...
Voici le début .. je te laisse compléter ( Et répondre à mes précédentes questions)
Etape 1 : Import d'une liste de produit depuis un fichier CSV via le script se trouvant dans le fichier ...... .php
Etape 2 : ... ??
A quel moment fais tu l'upload de ton image ?
en 4eme position apres avoir transfere le contenu de la csv sur la bdd
Via un formulaire ?
oui celui que tu as fourni mais sans la partie bdd qui ne sers a rien vu que les donnees sont deja uploadees
je n'ai garde que ce qui concerne la completion du label, le renommage des images et l'upload des images
toutes ce parties marchent correctement ( sauf l'upload ) car j'ai bien toutes les variables necessaires
Ce formulaire contient quels champs ?
celui que tu as cree si dessus
Il est appelé dans quel fichier ?
dans image.php
Est-ce que le formulaire est lié à un produit ?
pas pour le moment mais il le sera plus tard ( il suffira de changer le nom du dossier)
De plus, dans ton code, tu insères déjà le nom de l'image en bdd
non c'est le contenu de la csv qui est telecharge
Je t'ai donc demandé à plusieurs reprises.. pourquoi ne pas insérer en même temps l' ID du produit ....
l'id ne m'est d'aucune utilite il est juste genere par la bdd
la bdd comprend 4 champs :
-id
-name
-prix
lien
Commence par nous expliquer en DETAILS ( sans oublier de donner le nom des différents fichiers concernés) le CHEMINEMENT de ton programme...
1) je telecharge les donnes du site sur un csv avec un script sur le navigateur
2) je telecharge les photos avec le meme script
3) j'envoie les donnes de la csv sur la bdd avec import_csv.php (operationnel )
4) j'uploade les images sur le server avec image.php
5) je fais apparaitre les donnees de la bdd sur ma page article.php
6) je fais apparaitre les images sur la page en verifiant qu ils correspondent aux donnees
resultat final : une page article avec les photos des article et en dessous le nom ( comprenant la description ) et le prix (une par table, 4 table par ligne horizontale sur 8 lignes par pages )
etant donne le grand nombre de donnees j'essaye d'automatiser au max la procedure d'ou la methode choisie
le probleme dans l'immediat est que je ne peux pas upload les images
j'en ai d'autre mais je gere au fur et a mesure
j'espere avoir repondu a ttes tes questions
en 4eme position apres avoir transfere le contenu de la csv sur la bdd
Via un formulaire ?
oui celui que tu as fourni mais sans la partie bdd qui ne sers a rien vu que les donnees sont deja uploadees
je n'ai garde que ce qui concerne la completion du label, le renommage des images et l'upload des images
toutes ce parties marchent correctement ( sauf l'upload ) car j'ai bien toutes les variables necessaires
Ce formulaire contient quels champs ?
celui que tu as cree si dessus
Il est appelé dans quel fichier ?
dans image.php
Est-ce que le formulaire est lié à un produit ?
pas pour le moment mais il le sera plus tard ( il suffira de changer le nom du dossier)
De plus, dans ton code, tu insères déjà le nom de l'image en bdd
non c'est le contenu de la csv qui est telecharge
Je t'ai donc demandé à plusieurs reprises.. pourquoi ne pas insérer en même temps l' ID du produit ....
l'id ne m'est d'aucune utilite il est juste genere par la bdd
la bdd comprend 4 champs :
-id
-name
-prix
lien
Commence par nous expliquer en DETAILS ( sans oublier de donner le nom des différents fichiers concernés) le CHEMINEMENT de ton programme...
1) je telecharge les donnes du site sur un csv avec un script sur le navigateur
2) je telecharge les photos avec le meme script
3) j'envoie les donnes de la csv sur la bdd avec import_csv.php (operationnel )
4) j'uploade les images sur le server avec image.php
5) je fais apparaitre les donnees de la bdd sur ma page article.php
6) je fais apparaitre les images sur la page en verifiant qu ils correspondent aux donnees
resultat final : une page article avec les photos des article et en dessous le nom ( comprenant la description ) et le prix (une par table, 4 table par ligne horizontale sur 8 lignes par pages )
etant donne le grand nombre de donnees j'essaye d'automatiser au max la procedure d'ou la methode choisie
le probleme dans l'immediat est que je ne peux pas upload les images
j'en ai d'autre mais je gere au fur et a mesure
j'espere avoir repondu a ttes tes questions
jordane45
Messages postés
38321
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 décembre 2024
4 707
3 nov. 2021 à 00:13
3 nov. 2021 à 00:13
Alors
Alors NON .... En plus de la requête que tu utilises pour insérer les données du CSV dans la BDD ... tu as (ou du moins.. avais) une requête pour INSERER le chemin de l'image dans la base.... dans la table "file" ( ce n'est pas moi qui l'invente.. c'est dans le code que tu as donné dans ton premier post )
A croire que ce n'est pas toi qui a écrit ce code... tu ne sais même pas ce qu'il fait...
Alors là aussi je vais dire non.....
L'ID n'est pas inutile ... bien au contraire... et c'est ce que j'essai de t'expliquer depuis le début...
Dis voir... tu sais ce qu'est une base de données relationnelle et comment c'est sensé fonctionner ?? Je pense que non vu que depuis le début tu m'envoies bouler quand je te parle d'id ...
Tu fais parti des nombreux débutants qui se lancent dans l'écriture d'un code sans connaitre le minimum requis sur le fonctionnement des langages qu'ils utilisent...
C'est bien dommage... et c'est surtout un frein énorme pour réussir à coder correctement quelque chose...
Je ne saurais te conseiller d'aller suivre des tutos sur le fonctionnement de php et de mysql... tu sembles être passé à côté de beaucoup de choses.
Donc cette fois j'abandonne pour de bon.
Du moins.. tant que tu n'auras pas compris l'utilité de ton champ ID et l'avantage de stocker en bdd l'image ET l'id produit qui lui est rattaché..
Tchao..
De plus, dans ton code, tu insères déjà le nom de l'image en bdd
non c'est le contenu de la csv qui est telecharge
Alors NON .... En plus de la requête que tu utilises pour insérer les données du CSV dans la BDD ... tu as (ou du moins.. avais) une requête pour INSERER le chemin de l'image dans la base.... dans la table "file" ( ce n'est pas moi qui l'invente.. c'est dans le code que tu as donné dans ton premier post )
A croire que ce n'est pas toi qui a écrit ce code... tu ne sais même pas ce qu'il fait...
Je t'ai donc demandé à plusieurs reprises.. pourquoi ne pas insérer en même temps l' ID du produit ....
l'id ne m'est d'aucune utilite il est juste genere par la bdd
Alors là aussi je vais dire non.....
L'ID n'est pas inutile ... bien au contraire... et c'est ce que j'essai de t'expliquer depuis le début...
Dis voir... tu sais ce qu'est une base de données relationnelle et comment c'est sensé fonctionner ?? Je pense que non vu que depuis le début tu m'envoies bouler quand je te parle d'id ...
Tu fais parti des nombreux débutants qui se lancent dans l'écriture d'un code sans connaitre le minimum requis sur le fonctionnement des langages qu'ils utilisent...
C'est bien dommage... et c'est surtout un frein énorme pour réussir à coder correctement quelque chose...
Je ne saurais te conseiller d'aller suivre des tutos sur le fonctionnement de php et de mysql... tu sembles être passé à côté de beaucoup de choses.
Donc cette fois j'abandonne pour de bon.
Du moins.. tant que tu n'auras pas compris l'utilité de ton champ ID et l'avantage de stocker en bdd l'image ET l'id produit qui lui est rattaché..
Tchao..
jordane45
Messages postés
38321
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 décembre 2024
4 707
>
yvesman
3 nov. 2021 à 10:19
3 nov. 2021 à 10:19
Tiens..
juste pour le souci d'upload...
Vérifie que le répertoire de destination existe et que tu as bien les droit en écriture dessus
pour ça, voici les trois fonctions à utiliser :
https://www.php.net/manual/fr/function.realpath.php
https://www.php.net/manual/fr/function.is-dir.php
https://www.php.net/manual/fr/function.is-writable.php
juste pour le souci d'upload...
Vérifie que le répertoire de destination existe et que tu as bien les droit en écriture dessus
pour ça, voici les trois fonctions à utiliser :
https://www.php.net/manual/fr/function.realpath.php
https://www.php.net/manual/fr/function.is-dir.php
https://www.php.net/manual/fr/function.is-writable.php
jordane45
Messages postés
38321
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 décembre 2024
4 707
>
jordane45
Messages postés
38321
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 décembre 2024
3 nov. 2021 à 10:24
3 nov. 2021 à 10:24
Ah.. et puis.. c'est le tmp_name et non le name qu'il faut utiliser en premier paramètre de la fonction move_uploaded_file....