image et base de donnée sql

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : image et base de donnée sql

par arno77 » 13 mai 2005, 18:04

j'ai remplacer $tmp par $tmp_file est cela marche

va savoir charles au PMU on joue comme on aime
merci à tous

par arno77 » 13 mai 2005, 17:47

mon probleme est que mon echo de $tmp se fait bien mais qu'ensuite je me retrouve dans fichier introuvable je pense que le code contenu dans le eslse est bon mais pourquoi je n'y vais pas mystere

if(isset($images) && !empty($images))
{
$tmp=$_FILES['image']['tmp_name'];

echo $tmp."<br>";

//test si le fichier est trouvé------------------------------------------------------
if(!is_uploaded_file($tmp))
{
echo"fichier introuvable";
}
else
{
echo "toto";
}

par arno77 » 12 mai 2005, 18:50

voici mon code



<?php
//-------------------------connexion à la base----------------------------------------
include ("connexion_base_admin.php");
//------------------------------------------------------------------------------------

//transfert des variables pour eviter les problème d'encapsulation lors des insertions
$reference=$_POST['ref'];
$designation=$_POST['design'];
$description=$_POST['descrip'];
$achat=$_POST['pachat'];
$vente=$_POST['pvente'];
$qte_stock=$_POST['qtestock'];
$qte_cmd=$_POST['qtecmd'];
$delais=$_POST['delais'];
$id_four=$_POST['select1'];
$id_mark=$_POST['select2'];
$typ_prod=$_POST['select4'];
$images=$_POST['image'];
//-------------------------------------------------------------------------------------

//----------chemin de la photo qui sera inscrit dans la base de données-------------------------------------------------------------------------------------------
$ch_phProd_bdd=null;
//--------------------------------------------------------------------------------------
//-----------------------------insertion d'un produit avec photo----------------------------------------------------------------------------------------------
if(isset($images) && !empty($images))
{
// fichier temporaire------------------------------------------------------------

C EST ICI QUE CA DECONNE IL NE PREND PAS LE $_FILES['images']['tmp_name']
$tmp=$_FILES['images']['tmp_name'];
//--------------------------------------------------------------------------------

// le fichier est introuvable-------------------------------------------------------
if(!is_uploaded_file($tmp))
{
echo"fichier introuvable";
}
//--------------------------------------------------------------------------------
else
{}

// le fichier a été trouvé et uploadé ----------------------------------------------------
else
{
// on vérifie l'extension du fichier------------------------------------------------------------
$type_file = $_FILES['image']['type'];
if( !strstr($type_file, 'jpg') && !strstr($type_file, 'jpeg') && !strstr($type_file, 'bmp') && !strstr($type_file, 'gif') && !strstr($type_file, 'tif') && !strstr($type_file, 'png') )
{
echo "le type du fichier est incorrect";
}
else
{
// récupération du nom du fichier
$file = $_FILES['image']['name'];
// chemin de la photo qui sera insérée dans la base de données
$ch_phProd_bdd = "images_prod/".$reference."/".$file;

// création du dossier où sera stockée la photo
$dir = stripslashes("../../images_prod/".$reference);
if(!is_dir($dir)) // si le dossier n'existe pas on le crée
{
mkdir($dir,0777);
}
$dest_photo = $dir."/".$file; // destination de la photo à partir de la partie adminVente

if(!move_uploaded_file($tmp_file, $dest_photo)) // l'upload de la photo a échoué
{
echo "<tr><td align=\"center\"><strong>Erreur</strong></tr></td>
<tr><td>&nbsp;</td></tr>
<tr><td align=\"center\">L&acute;upload de la photo du produit a &eacute;chou&eacute;.</td></tr>
<tr><td align=\"center\">V&eacute;rifiez que le chemin et l&acute;extension du fichier sont corrects.</td></tr>
<tr><td align=\"center\"><i>Rappel: les formats acceptés sont uniquement .jpeg, .jpg, .gif, .bmp, .png, .tif .</i></td></tr>
<tr><td>&nbsp;</td></tr>
<tr><td align=\"center\">--> <a href=\"javascript:history.go(-1)\">R&eacute;essayez</a> <--</td></tr>";
}
else // l'upload de la photo a réussi
{
// .
//------------------------requete insertion client par admin---------------------------

$ajout=mysql_query("INSERT INTO produits(reference_produit,designation,descriptif,prix_achat,prix_vente,
qte_en_stock,qte_en_cmd,delais_livraison,id_fournisseur,id_marque,id_type_produit,img)
VALUES ('$reference','$designation','$description','$achat','$vente','$qte_stock'
,'$qte_cmd','$delais','$id_four','$id_mark','$typ_prod','$ch_phProd_bdd')");
//-------------------------------------------------------------------------------------

//-------------------------------test de verification de l'insertion--------------------
if(mysql_affected_rows()>0)
{
echo "<i><font color=\"blue\">L'insertion du produit $designation a réussi</font></i>";
}
else
{
echo "<i><font color=\"blue\">L'insertion du produit $designation a echoué</font></i>";
}
//---------------------------------------------------------------------------------------
}
}
}
}
?>

par pjl » 11 mai 2005, 20:57

Expliquation des principes d'insertion de données dans une table :
http://phpdebutant.org/article67.php

Si tu rencontres un PB, reviens avec ton code et dis nous ou ca cloche.

par arno77 » 11 mai 2005, 18:03

je sais que ces deux methode existe mais comment les utilise t'on en pratique

par rami » 11 mai 2005, 17:35

Ou alors tu stockes ton image directement ds ta base par un champ blob... Moi je prefere stocker le chemin comme t'as dis zeus.
Il faut donc entrer le chemin ds ta base, ensuite tu pourras faire un lien sur ton image en allant chercher son chemin ds la base! ;)

par zeus » 11 mai 2005, 16:45

CE que tu peut faire, c'est créer un champ de type VARCHAR dans ta base de données et stocker l'adresse de ton image dans ce champ.

Quand tu voudras retrouver l'image, il ne te suffira plus qu'a récupérer le contenu de ce champ et à aller chercher l'image au chemin spécifié

image et base de donnée sql

par arno77 » 11 mai 2005, 16:17

Salut à tous
je souhaite insererdans une base de donnée une image ou simplement un lien me permettant de la stocker dans un autre dossier mais ne sait oas du tout comment faire.

Quelqu'un peut il m'aider?