xeroxiss
Messages postés85Date d'inscriptionsamedi 30 juillet 2005StatutMembreDernière intervention 7 mai 2009
-
14 déc. 2007 à 20:55
bladeboxe -
6 janv. 2008 à 20:13
Bonsoir,
Après avoir télécharger une petite class sur l'upload (redimentions et renommer), et surtout après avoir chercher des heures durant,
je me demande si quelqu'un ici ne pourrait pas faire la lumière sur mon problème...
Mon problème est le suivant, je désirai stoqué le chemin de l'image en base de donnée, sauf que je n'arrive pas a mettre le chemin sous une variable présice. Pour exemple l'auteur utilise ceci :
cs_sebastien_et_typh
Messages postés289Date d'inscriptionjeudi 5 octobre 2006StatutMembreDernière intervention11 juin 20103 15 déc. 2007 à 21:10
je l'ai deja regarder donc si je comprend bien lorsque tu fais :
$image = $Upload -> Infos[1]['chemin'];
echo $image;
il n'y a rien qui s'affiche et toi tu veux que $image contienne le nom de l'image uploadé c'est ca?
Personne ne peut se permettre de juger l'autre....
xeroxiss
Messages postés85Date d'inscriptionsamedi 30 juillet 2005StatutMembreDernière intervention 7 mai 2009 15 déc. 2007 à 21:45
Oui enfaite je désirais stocké l'image dans une base de donnée. Donc il faudrait que ce soit le chemin de l'image.
exemple : $image = "www.monsite.com/upload/image.jpg"
cs_sebastien_et_typh
Messages postés289Date d'inscriptionjeudi 5 octobre 2006StatutMembreDernière intervention11 juin 20103 16 déc. 2007 à 03:23
Alors juste au dessus de la fonction WriteFile tu as :
@access private
change le en @access public ce qui rend la fonction accessible depuis l'exterieur de la classe
ensuite j'ai tester en faisant
$image = $Upload -> Infos[1]['chemin'];
echo $image;
et le echo $image m'a bien affiché le chemin
Personne ne peut se permettre de juger l'autre....
cs_sebastien_et_typh
Messages postés289Date d'inscriptionjeudi 5 octobre 2006StatutMembreDernière intervention11 juin 20103 16 déc. 2007 à 15:43
je pense que dans ton if il faudrait mettre :
foreach() mais je ne vois pas ce qu'il faut mettre dans le foreach mais j'y reflechit et te dis des que je trouve
Personne ne peut se permettre de juger l'autre....
cs_sebastien_et_typh
Messages postés289Date d'inscriptionjeudi 5 octobre 2006StatutMembreDernière intervention11 juin 20103 17 déc. 2007 à 02:50
Donc voila lorsque je fais des tests ca m'affiche le nom de mes deux images :
il suffi de mettre ce code :
for($i=1;$i<=($Upload->Fields + 1);$i++){
$image = $Upload -> Infos[$i]['chemin'];
echo $image;
}
donc a mon avis si tu rajoute ton code dans le for :
$chaine = "abcd0123456789";
$nb_caract = 13;
$rename = "";
for($u = 1; $u <= $nb_caract; $u++) {
$nb = strlen($chaine);
$nb = mt_rand(0,($nb-1));
$rename.=$chaine[$nb];
ca devrait fonctionner
j'espere que ca ta aidé
Personne ne peut se permettre de juger l'autre....
cs_sebastien_et_typh
Messages postés289Date d'inscriptionjeudi 5 octobre 2006StatutMembreDernière intervention11 juin 20103 17 déc. 2007 à 10:39
Moi j'ai mis ce code :
for($i=1;$i<=($Upload->Fields + 1);$i++){
$chaine = "abcd0123456789";
$nb_caract = 13;
$rename = "";
for($u = 1; $u <= $nb_caract; $u++) {
$nb = strlen($chaine);
$nb = mt_rand(0,($nb-1));
$rename.=$chaine[$nb];
}
$image = $Upload -> Infos[$i]['chemin'];
echo $rename;
rename($image,$rename.$Upload->Infos[$i]['extension']);
}
}
juste en dessous de la ligne :
pArray($Upload-> GetSummary());
du fichier sample.php et lors de mes test ca me renome bien le fichier
j'espere que c'est ce que tu recherché
Personne ne peut se permettre de juger l'autre....
xeroxiss
Messages postés85Date d'inscriptionsamedi 30 juillet 2005StatutMembreDernière intervention 7 mai 2009 17 déc. 2007 à 12:44
Bonjour,
J'ai plusieurs fois des PARSE ERROR, je suppose que c'est a cause de mes
}
Je ne trouve pas ou est l'erreur, cela me semble juste pourtant... J'ai tout essayé, avec les } avant, après
supprimées, laissées...
Voila le bout de code un peu avant jusque un peu après... Si vous voyez l'erreur
print 'Upload effectuée avec succès :';
pArray($Upload-> GetSummary());
xeroxiss
Messages postés85Date d'inscriptionsamedi 30 juillet 2005StatutMembreDernière intervention 7 mai 2009 17 déc. 2007 à 15:21
Je dois vraiment être très nul
Ou très débutant... (Un peu des deux a mon avis)
Voila ma source... j'ai toujours une parse erreur...
<?php
function pArray($array) {
print '';
print_r($array);
print '
';
}
// Chargement de la classe
require_once('../upload.class.php');
// Instanciation d'un nouvel objet "upload"
$Upload = new Upload();
/**
* Gestion lors de la soumission du formulaire
**/
if (!Empty($_POST['submit'])) {
// Si vous voulez renommer le fichier...
$Upload-> Filename = 'clic_'.$rename.'_img';
// Pour changer le mode d'écriture (entre 0 et 3)
$Upload-> WriteMode = 1;
// Pour filtrer les fichiers par extension
$Upload-> Extension = '.gif;.jpg;.jpeg;.bmp;.png';
// Pour interdire automatiquement tous les fichiers considérés comme "dangereux"
$Upload-> SecurityMax = true;
// Définition du répertoire de destination
$Upload-> DirUpload = '../upload/';
// On lance la procédure d'upload
$Upload-> Execute();
$image = $Upload -> Infos[1]['chemin']; // mise en variable du chemin de l'image
$image2 = $Upload -> Infos[2]['chemin']; // mise en variable du chemin de l'image
$image3 = $Upload -> Infos[3]['chemin']; // mise en variable du chemin de l'image
// Gestion erreur / succès
if ($UploadError) {
print 'Il y a eu une erreur :';
pArray($Upload-> GetError());
} else {
print 'Upload effectuée avec succès :';
pArray($Upload-> GetSummary());
for($i=1;$i<=($Upload->Fields + 1);$i++){
$chaine = "abcd0123456789";
$nb_caract = 13;
$rename = "";
for($u = 1; $u <= $nb_caract; $u++) {
$nb = strlen($chaine);
$nb = mt_rand(0,($nb-1));
$rename.=$chaine[$nb];
$image = $Upload -> Infos[$i]['chemin'];
echo $rename;
rename($image,$rename.$Upload->Infos[$i]['extension']);
}
}
$image = $Upload -> Infos[1]['chemin'];
$image2 = $Upload -> Infos[2]['chemin'];
$image3 = $Upload -> Infos[3]['chemin'];
echo $image;
/**
* Création du formulaire
**/
//echo $image;
//echo $image2;
//echo $image3;
// Pour limiter la taille d'un fichier (exprimée en ko)
$Upload-> MaxFilesize = '1024';
// Pour ajouter des attributs aux champs de type file
$Upload-> FieldOptions = 'style="border-color:black;border-width:1px;"';
// Pour indiquer le nombre de champs désiré
$Upload-> Fields = 3;
// Initialisation du formulaire
$Upload-> InitForm();
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Exemple Classe Upload</title>
</head>