Tu me dit trouve de quelle $variable tu as besoins pour affiché le nom ok c'étais bien ta question ?Tu es vraiment compliqué, tu demandes pour un problème qu'il affiche array(), et d'un seul coup tu pars sur la requête SQL. Pas auprès de moi que tu retrouveras de l'aide.
Ce que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.
echo "<img src='".$img_nom."' style='width:".$largeur."px;height:".$hauteur."px' alt='".$legende."' />";
Et ça, ça fait partie des bases les plus élémentaires du PHP.
Bon alors mon formulaire.Mon incroyable flair doublé de mon incomparable perspicacité
me laissent penser que ce sujet s'enlise quelque peu...
Plutôt que de reprendre chacun des arguments fournis
dans cette (trop) longue succession de messages,
je préfère revenir à la source de ce sujet et procéder par étapes.
On a tous intérêt à ce que ce sujet s'habille vite d'un joli petit [Résolu]...Pour la suite, je suppose que tu sais utiliser les requêtes SQL : SELECT et INSERT.
- Comment stocker des images avec une base de données ?
![]()
Tout d'abord, comme te l'a judicieusement conseillé Ajoloca,
il vaut mieux stocker les fichiers images dans un répertoire spécifique
et n'enregistrer dans la base que les éléments premettant d'utiliser cette image.
Il est certes possible de stocker l'image elle-même dans la base, en données binaires,
mais l'avantage de ce choix - que je juge catastrophique - m'est toujours inconnu
tandis que les inconvénients sont évidents : taille de la base, pour n'en citer qu'un.- Comment enregistrer les identifiants des images dans la base de données ?
![]()
Il te faut déjà recenser ces identifiants.
Là, c'est Cyrano qui t'a donné des indications.
Voici quelques données qui me paraissent essentielles :Et en énumérant toutes ces informations, tu es en train de définir la structure de ta table.
- Le nom du fichier (avec son extension) est bien évidemment indispensable ;
- Les dimensions de l'image (height et width) peuvent être utiles pour gérer l'affichage.
- si toutes tes images ne sont pas stockées dans le même répertoire sur ton serveur,
il te faudra aussi prévoir d'enregistrer le chemin (= nom du dossier).- Une légende que tu souhaiterais afficher près de chacune de tes images ?
La mention de l'auteur (photographe, graphiste, etc.) ? Toute autre info ?- etc.
Tout simplement ! C'est pas beau, ça ?
Celles-ci seront suffisantes pour enregistrer et lire les infos concernant tes images.
Puis, il ne te restera plus qu'à concevoir une page dynamique (un masque)
qui affichera les images à partir des infos prélevées dans la base,
avec un code du genre :Et ça, ça fait partie des bases les plus élémentaires du PHP.echo "<img src='".$img_nom."' style='width:".$largeur."px;height:".$hauteur."px' alt='".$legende."' />";
$filenamehttp cela fonctionne
Ce que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.
Enfin presqueOn en attendait pas moins de ta partBon je vais en étonner mais voilà j'ai trouvé
$tableau = $_FILES['userfile']['name'];
foreach ($tableau as $cle=>$nom)
J'ai ceci comme erreur
je cherche pourquoi !Warning: Invalid argument supplied for foreach() in E:\wamp\www\mabrique\clients\envoie.php on line 12
Ce que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.
Et oui et c'est là que je plante je comprend rienPour trouver, il faut comprendre la structure d'un tableau
Ce que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.
J'avanceÇa m'avance drôlement ça : il y a une chose qu'il serait grand temps que tu réalises, c'est que la solution se trouve au départ dans la bonne formulation d'une question : à une question mal formulée, tu n'obtiendras aucune réponse satisfaisante.
En d'autres termes : qu'est-ce que tu ne comprends pas ?
$tableau = $_FILES['userfile']['name'];
foreach ($tableau as $key=>$nom)
//$nom = array(0,1,2,3,4,5);
$nom['userfile'] = array();
$nom['error'] = array();
$nom['userfile']['name'] = array(); <--- j'ai une erreur ici :Fatal error: Cannot use string offset as an array in ----->
$nom['userfile']['type'] = array();
$nom['userfile']['tmp_name'] = array();
$nom['error']['size'] = array();
enfin je crois
Ce que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.
Voilà je pense avoir compridReprends la structure du tableau $_FILES tel qu'il est envoyé par le formulaire : essaye de me construire le même tableau en PHP avec des valeurs quelconques : mettons que tu me crée un tableau contenant les informations pour deux images. Si tu arrives à comprendre ça, alors le reste ira tout seul, mais tant que tu n'auras pas assimilé le fonctionnement des tableaux, tu resteras paumé.
$tableau = $_FILES['userfile']['name'];
foreach ($tableau as $key=>$nom)
$nom = array();
$nom['name'] = array();
$nom['userfile'] = array();
$nom['userfile']['name'] = array();
$nom['userfile']['type'] = array();
$nom['userfile']['tmp_name'] = array();
$nom['userfile']['size'] = array();
je pense l'avoir créer correctement a partir de ceciCode : Tout sélectionner
Array
(
[userfile] => Array
(
[name] => Array
(
[0] => 5.gif
[1] => 3.gif
)
[type] => Array
(
[0] => image/gif
[1] => image/gif
)
[tmp_name] => Array
(
[0] => E:/wamp/tmp\php36A.tmp
[1] => E:/wamp/tmp\php36B.tmp
)
[error] => Array
(
[0] => 0
[1] => 0
)
[size] => Array
(
[0] => 2463
[1] => 2601
)
)
)
Ce que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.