cs_zakichane
Messages postés44Date d'inscriptionjeudi 23 juin 2005StatutMembreDernière intervention30 novembre 2005
-
26 juil. 2005 à 14:22
cs_zakichane
Messages postés44Date d'inscriptionjeudi 23 juin 2005StatutMembreDernière intervention30 novembre 2005
-
26 juil. 2005 à 16:55
Bonjour je suis encor debutant et j'ai un petit probleme c ke j"arrive pas a telechatger plusieur fichier ds un dossier et inserer seulement leur nom ds la bd mysql puis je avoir de l'aide svp
cs_zakichane
Messages postés44Date d'inscriptionjeudi 23 juin 2005StatutMembreDernière intervention30 novembre 2005 26 juil. 2005 à 14:34
puis que je sui debutant j'ai pas pu bien comprendre ce ke veullent dire ds ce lien ke tu ma donner
je vai essayer de mieu m'expliquer
je veu créer une page qui permet d'afficher 2 image d'un même produi et son commentaire en même ligne comme ça je vai avoir un tableau et ds chaque ligne tu va trouver un produi
et pour faire sela j'ai decidé de fair une bd my sql qui comprenne id, img01, img02, comment jusqua la tt va bien
mais je sai pas comment telecharger plusieur fichier en même temp et stoquer juste le nom du fichier ds la base de donnée comme ça je vai bien les afficher et les organisé j'espère ke j'ai expliqué un peu. et merci pour votre reponce
morpheus262
Messages postés461Date d'inscriptionmardi 27 avril 2004StatutMembreDernière intervention16 février 2012 26 juil. 2005 à 14:36
Oui a mon avis son probleme vien du faite de recuperer le nom de ses fichier et de les inserer.
Euh malalam je te sens bien en forme aujourd hui lol tu as une astuce pour que si le nom du fichier comporte un espace (satané windows) celui ci s inscrive entierement dans la bdd, j ai fait des str_replace mais ca marche pas top alors pour le momentn je renome les fichier avec l id en general mais je pars le nom du fichier ce qui peux parfois etre genant.
<HR>
Loi du plagiat industriel de Felson : <CITE>Voler les idées d'une personne, c'est du plagiat. En voler à plusieurs, c'est de la recherche.</CITE>
malik7934
Messages postés1154Date d'inscriptionmardi 9 septembre 2003StatutMembreDernière intervention15 août 200917 26 juil. 2005 à 16:18
ca m'intéresse là... j'ai fait un essai, mais ca pose pas de prob chez
moi d'avoir un nom prout schmurz... mais c'est peut-etre que je passe
par une bd et que j'insere en utilisant de ''
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 26 juil. 2005 à 16:34
A mon avis :
soit il passe ca d'une page vers une autre avant insertion, par GET. Dans ce cas, oui, url_encode.
Soit ca se trouve dans un champ quelconque d'un formulaire, et c#est
recupere de la, et dans ce cas il y a sans doute un probleme tout bete
de quote pour la valeur du champ.
Enfin, autre possibilite : le type du champ de la bdd n#est pas assez grand (chais pas moi, varchar 5 par exemple lol).
if(isset($_FILES['img01']))
{
unset($erreur);
$extensions_ok = array('GIF', 'gif', 'jpg', 'jpeg', 'JPG', 'JPEG');
$taille_max = 500000;
$dest_dossier = 'img/';
// utilisez également des slashes sous windows : $dest_dossier = 'd:/damien/photos/';
// vérifications
if( !in_array( substr(strrchr($_FILES['img01']['name'], '.'), 1), $extensions_ok) )
{
$erreur = 'Veuillez sélectionner un fichier de type png, gif ou jpg !';
echo($erreur);
}
elseif( file_exists($_FILES['img01']['tmp_name'])
and filesize($_FILES['img01']['tmp_name']) > $taille_max)
{
$erreur = 'Votre fichier doit faire moins de 500Ko !';
echo($erreur);
}
// copie du fichier
if(!isset($erreur))
{
$dest_fichier = basename($_FILES['img01']['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['img01']['tmp_name'], $dest_dossier.$dest_fichier);
//insertion des images au bd
$img = "img/$dest_fichier";
$fp = fopen($img,"r");
$data = fread($fp,filesize($img));
fclose($fp);
$data = addslashes($data);
$name1 = $_FILES['img01']['name'];
mysql_query("INSERT INTO test (img01) VALUES ('$name1')");
//echo('La photo été bien téléchargé');
}
//else{
//echo($erreur);
//}
}
if(isset($_FILES['img02']))
{
unset($erreur);
$extensions_ok = array('GIF', 'gif', 'jpg', 'jpeg', 'JPG', 'JPEG');
$taille_max = 500000;
$dest_dossier = 'img02/';
// utilisez également des slashes sous windows : $dest_dossier = 'd:/damien/photos/';
// vérifications
if( !in_array( substr(strrchr($_FILES['img02']['name'], '.'), 1), $extensions_ok) )
{
$erreur = 'Veuillez sélectionner un fichier de type png, gif ou jpg !';
echo($erreur);
}
elseif( file_exists($_FILES['img02']['tmp_name'])
and filesize($_FILES['img02']['tmp_name']) > $taille_max)
{
$erreur = 'Votre fichier doit faire moins de 500Ko !';
echo($erreur);
}
// copie du fichier
if(!isset($erreur))
{
$dest_fichier = basename($_FILES['img02']['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['img02']['tmp_name'], $dest_dossier.$dest_fichier);
//insertion des images au bd
$img = "img02/$dest_fichier";
$fp = fopen($img,"r");
$data = fread($fp,filesize($img));
fclose($fp);
$data = addslashes($data);
$name2 = $_FILES['img02']['name'];
mysql_query("INSERT INTO test (img02) VALUES ('$name2')");
echo('La photo été bien téléchargé');
}
//else{
//echo($erreur);
//}
}
?>
ça marche très bien il telecharge les image et il met leur nom ds la base de donnée mais le probleme c ke le nom de img01 ce met de img01 et le img02 se met ds img02 mais ds un autre enregistrement ça veux dir ils auront un id differant je croi ke j'ai un probleme ds la requet d'insertion
cs_zakichane
Messages postés44Date d'inscriptionjeudi 23 juin 2005StatutMembreDernière intervention30 novembre 2005 26 juil. 2005 à 16:55
ok les gas j'ai trouvé la solution il fau enlevé la 1er requet et la 2eme sera
mysql_query("INSERT INTO test (img01,img02) VALUES ('$name1','$name2')");