information des images dans BDD

Eléphant du PHP | 127 Messages

24 août 2005, 18:50

Bonjour à tous, je voulais savoir si il était possible de trensférer les informations des images que l'on upload sur mon site (chemin de l'image et nom de l'image) directement dans la base de donnée?
Merci :D .

Mammouth du PHP | 19672 Messages

24 août 2005, 19:15

Regarde ICI, sujet traité très souvent.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 127 Messages

24 août 2005, 20:00

:(
Je suppose que s'est moi mais j'ai cherché et je ne trouve pas.
Tu pourais me laisser un lien si tu trouves ?

Mammouth du PHP | 19672 Messages

24 août 2005, 20:02

ICI par exemple ... :-k
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 127 Messages

24 août 2005, 20:25

Je ne sais pas si c'est moi mais
ce que je cherche c'est trensmettre les informations de mes fichier uploadés directement dans ma BDD.
Je ne cherche pas à savoir comment uploader des fichier.

Mammouth du PHP | 19672 Messages

24 août 2005, 21:20

Tes informations, il faudrait commencer par les récupérer: ou est ton code qu'on sache où tu en es au juste ?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 127 Messages

25 août 2005, 10:47

En faite je voudrais éditer ma base de donnée a chaque fois qu'une nouvelle image est uploadé.
J'ai donc écrit dans mon code php:
mysql_query("INSERT INTO organisation (image,nom) VALUES('','');
Le problem c'est que je ne sait pas quoi mettre dans le champ VALUES car je voudrais qu'il s'adapte à l'image uploadée.
Jesper que j'ai été compris.
Merci :lol: .

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

25 août 2005, 11:25

Il faut donc que tu récupères le nom de l'image lors de l'upload : le nom définitif que tu lui as attribué.
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

Eléphant du PHP | 127 Messages

25 août 2005, 11:38

Oui mais le problem c'est que je n'attribu pa de nom deffinitif aux images que l'on upload sur mon site elle ont le nom que leur auteur à choisi.
Mais si il n'y a pas d'autre moyen tu peux me dire comment faire.
Merci.

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

25 août 2005, 11:40

Ben attribues leur un nom (même si c'est le mm que celui de base) : disons que le tutorial de PHPFrance pour l'upload t'indiquera comment faire.
Toutes manières, poste ton code PHP, si tu veux ce genre d'aide.
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

Eléphant du PHP | 127 Messages

25 août 2005, 11:47

Voila mon code:
<html>
<head>
<style type="text/css">
a{
text-decoration:none;
color:#000000}
.cadre{
border-bottom:2px dotted black;
border-left:1px solid black;
border-right:1px solid black;
border-top:1px solid black;
background-color:#e6e6e6}
.cadre2{
border-bottom:1px solid black;
border-left:1px solid black;
border-right:1px solid black;
background-color:#e6e6e6}
</style>
</head>
</html>
<?php

if(isset($_FILES['photo']))
{
  // params
  unset($erreur);
  $extensions_ok = array('png', 'gif', 'jpg', 'jpeg');
  $taille_max = 100000;
  $dest_dossier = 'image/';
  // vérifications
  if( !in_array( substr(strrchr($_FILES['photo']['name'], '.'), 1), $extensions_ok ) )
  {
    $erreur = 'Veuillez sélectionner un fichier de type png, gif ou jpg !';  
  }
  elseif( file_exists($_FILES['photo']['tmp_name']) 
          and filesize($_FILES['photo']['tmp_name']) > $taille_max)
  {
    $erreur = 'Votre fichier doit faire moins de 500Ko !';
  }
  // copie du fichier
  if(!isset($erreur))
  {
    $dest_fichier = basename($_FILES['photo']['name']);
    // formatage nom fichier
    // enlever les accents
    $dest_fichier = strtr($dest_fichier, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
    // remplacer les caracteres autres que lettres, chiffres et point par _
    $dest_fichier = preg_replace('/([^.a-z0-1]+)/i', '_', $dest_fichier);
    // copie du fichier
    move_uploaded_file($_FILES['photo']['tmp_name'], $dest_dossier . $dest_fichier);
  
  }
  }
?>
<?
closedir($dir);

mysql_connect("localhost", "****", "*******");
mysql_select_db("yamissa");

// On ajoute une entrée avec mysql_query
mysql_query("INSERT INTO organisation (image,nom) VALUES('','')");

mysql_close();
?>
<html>
<body>
<!-- Erreur ? -->
<?php 
if(isset($erreur)){
  echo '<p>', $erreur ,'</p>';
}
?>
<!-- Formulaire -->
<!-- Attention, ne de ne pas oublier le  enctype="multipart/form-data" -->
<form method="POST" action="script_upload.php" enctype="multipart/form-data">
<!-- Limiter la taille des fichiers à 500Ko -->
<input type="hidden" name="MAX_FILE_SIZE" value="500000" /> 
<fieldset>
<legend>Envoi de fichiers</legend>
<!-- champs d'envoi de fichier, de type file -->
<p><label for="photo">Photo :</label><input type="file" name="photo" /></p>
<!-- bouton d'envoi -->
<p><input type="submit" name="envoi" value="Envoyer les fichiers" /></p>
</legend>
</fieldset>
</form>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td height="20" width="200" class="cadre"><a href="http://yamissa.free.fr/image/model_galerie.php">retourner à la model galerie.</a></td>
</tr>
<tr>
<td height="20" width="300" class="cadre2"><a href="http://yamissa.free.fr/site/site.htm"> retourner à la page d'acceuille du site</a></td>
</tr>
</table>
</body>
</html>
merci :D

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

25 août 2005, 12:00

    move_uploaded_file($_FILES['photo']['tmp_name'], $dest_dossier . $dest_fichier); 
ET là tu ne renomme pas l'image ?

$dest_dossier . $dest_fichier est le nom de l'image :)
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

Eléphant du PHP | 127 Messages

25 août 2005, 12:21

alors si je met $dest_dossier . $dest_fichier dans VALUES ça peut marcher?

Eléphant du PHP | 127 Messages

25 août 2005, 14:35

c'est bon j'ai reussi voila comment j'ai fait:
mysql_connect("****", "****", "*****");
mysql_select_db("yamissa");
$nom=$_FILES["photo"]["name"];
// On ajoute une entrée avec mysql_query
$result = mysql_query("INSERT INTO organisation (image,nom) VALUES('chemin du dossier où je stocke mes images/$nom','$nom')");

mysql_close(); 
Biensur le nom 'photo' est à adapter avec son code.
Voila :wink: