parcourir, Stocker image ds bd mysql et l'afficher !!

parcourir, Stocker image ds bd mysql et l'afficher !! - PHP - Programmation

Marsh Posté le 01-10-2006 à 23:22:44    

Bonjour, je suis entrain de developper une application web (php/mysql).
Je ve que lorsque les clients ajoutent une annonce(dans un formulaire), puissent aussi aujouter(parcourir)une image, et je dois stocker cette image dans ma base.
je veux savoir comment faire tout ça, le code comment parcourir une image et la stocké et en fin pouvoir l'afficher.
Merci.
Voici mon code :
Form.htm
 
<form name="FormAjout" method="POST" action="ajout.php" >
         
  <table width="617" border="0" align="center" cellpadding="0" cellspacing="10" bordercolor="#CCCCCC">
 
    <tr valign="top">  
      <td >Vous etes :</td>
      <td><input type="radio" name="civil" value="Madame">Mme.  
             <input name="civil" type="radio" value="Monsieur" checked>Mr. </td>
        </tr>
    <tr >
      <td>Nom :</td>
      <td>   <input size="25" name="nom"></td>
</tr>      
    <tr>  
 
      <td><input type="submit" name="ajout" value="Ajouter"></td>
      <td><input type="reset" name="Submit2" value="Annuler"></td>
    </tr>
  </table>
</form>
 
========================================================
Ajout.php
<?php
 
 
$civil=$_POST['civil'];
$nom=$_POST['nom'];
 
 
// Connexion a Mysql (changer l'host, le login et le mot de passe SVP)
$mysql_link = mysql_connect("localhost","root","" );
 
// Vérification de la validité de la connexion MYSQL
if($mysql_link)
{
// Requete d'insertion MYSQL
$requete = "INSERT INTO tab (civil,nom) VALUES ('$civil','$nom')";
 
// Execution de cette requete dans la base essai
$execution = mysql_db_query("based", $requete);
echo "<font color='green' face='Verdana' size='2'>Les informations de votre bien ont été bien enregistrées.</font>";
}
// La connexion Mysql est indisponible
else echo "<HTML><HEAD><TITLE>Erreurs</TITLE></HEAD><BODY><font face='Verdana' size='2'>Problème de connexion avec la base de données !</font></body></html>";
// Les champs ne sont pas tous remplis
     
?>  
==========================================
Merci pour votre aide


---------------
polytech'Grenoble
Reply

Marsh Posté le 01-10-2006 à 23:22:44   

Reply

Marsh Posté le 02-10-2006 à 08:23:07    

sujet déjà abordé. En principe on se contente de stocker l'url de l'image dans la base. On peut même enlever les droits de l'image, et d'ouvrir un flux sur ce fichier pour éviter tout vol/visualisation d'images

Reply

Marsh Posté le 02-10-2006 à 12:06:35    

Merci pour ta reponse,
Mais comment stocké lurl de l image dans la base(extraire le chemin valide) et stoké le fichier dans un repertoir du site ?
Merci


---------------
polytech'Grenoble
Reply

Marsh Posté le 02-10-2006 à 13:51:19    

Voilà, j ai resolu une grande partie de mon problème,
Ja parcour l'image et je la stocke,(si klk 1 ve le code c est avec plaisir).
Mon petit probleme mnt, et lors de l 'affichage, j'obtient le code binaire de l'image.
Je ve savoir comment faire pour changer le content-type.
j'ai trouvé ça :
<?php
if ( isset($_GET['id']) )
{
   $id = intval ($_GET['id']);
   include ("connexion.php" );
   $req = "SELECT img_id, img_type, img_blob ".
             "FROM images WHERE img_id = ".$id;
   $ret = mysql_query ($req) or die (mysql_error ());
   $col = mysql_fetch_row ($ret);
   if ( !$col[0] )
   {
      echo "Id d'image inconnu";
   }
   else
   {
      header ("Content-type: ".$col[1]);
      echo $col[2];
   }
}
else
{
   echo "Mauvais id d'image";
}
?>
Mais moi j ai d'autre champs texte ds la table, et j utilise un tableau pour l'affichage !
Merci


---------------
polytech'Grenoble
Reply

Marsh Posté le 02-10-2006 à 13:53:56    

il faut que tu mettes le script qui ci-dessus dans un fichier php séparé et que dans ton html tu fasses:

Code :
  1. <img alt="pouet" src="taPagePHPQuiAfficheLesImages.php?id=X"/>

Reply

Marsh Posté le 02-10-2006 à 15:07:44    

Merci bcp, cher ami,
alors, j ai coiper le script si dessus ds un fichier apresu.php et ds mon fichier d'affiche.php
j ai inclu ça :
echo "<a href=\"apercu.php?id=".$bien['num']."\">Voir Image</a>"; ?>.
Et ça marche.


---------------
polytech'Grenoble
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed