Forum Clubic

Uploader JQuery "Uploadify"

Alors voilà, j’ai un léger soucis programmation et je m’en remet aux connaissances infinies de la communautée Clubicienne.

J’utilise Uploadify, un uploader utilisant JQuery.

Mon problème est que TOUT fonctionne SAUF au moment d’uploader mon image. Ou du moins au moment de la copier sur le serveur.

Je m’explique, j’upload, le script me dit que tout fonctionne, sauf quand dans mon dossier Uploads…

Il n’y a RIEN DU TOUT…

C’est un peu agaçant à vrai dire…

Mon uploader :

if (!empty($_FILES)) 
{
	$tempFile = $_FILES['Filedata']['tmp_name'];

	$targetPath = 'http://localhost/app/webroot/uploads/';
	$targetFile =  '/localhost/app/webroot/uploads/' . $_FILES['Filedata']['name'];
		
	move_uploaded_file($tempFile,$targetFile);
	echo "1";
}

Si vous avez besoin de plus d’info je reste à dispo :wink:

Merci d’avance.
Edité le 06/05/2010 à 16:37

ton dossier est bien en 777 ?

Si ça signifie lecture/ecriture, bah j’ai un problème parce que à chaque fois je demande windows (clic droit propriété décoche lecture seul) de l’autoriser mais il le remet instantannément en lecture seul…

Je précise que je suis en local sur WampServeur.

dsl je pensai que tu était sur un linux :slight_smile:

il y a de forte chance qui sa vienne des droit d’écriture.

La je peut pas trop t’aidé j’ai jamais bossé sur win en hébergement web.

essai

propriétés de dossier >> sécurité >> modifier >> utilisateurs,
cocher la case écriture.

J’y avait pas pensé tient! Mais ça ne viens pas de ça, je viens d’essayer et ça ne marche toujours pas…

D’autres idées peut être?

Merci pour ton aide en tout cas :wink:

et j’avai pas vu

à la place de $targetPath = ‘http://localhost/app/webroot/uploads/’;

mes juste le chemin du répertoire ou tu doit envoyer le fichier

Je suis pas sur qu’il apprécie le localhost

Il semblerait que mon problème ne provienne pas de cela non plus…

J’ai essayer de toute les façons pour le chemin j’ai même été jusqu’à codé en ‘mou’ :

$targetPath = $_SERVER['DOCUMENT_ROOT'] . $_REQUEST['folder'] . '/';
$targetFile =  str_replace('//','/',$targetPath) . $_FILES['Filedata']['name'];

Je me demande si les données sont vraiment transféré au final…

if (move_uploaded_file($tempFile,$targetFile))
    {
          echo 'Upload effectué avec succès !';
     }
     else //Sinon (la fonction renvoie FALSE).
     {
          echo 'Echec de l\'upload !';
     }

Edité le 04/05/2010 à 16:47

En faites ce petit programme ‘uploadify’ est fait de flash, de php, et de javascript.

Sur ma page principale j’affiche le “formulaire” en SWF pour gérer un mutli upload, ensuite je récupère les infos grâce à javascript, et je traite les infos via PHP.

Et je ne sais pas pourquoi mais quand je demande à mon script des IF comme tu me le suggère juste précédemment, il ne m’affiche pas le else même quand j’upload n’importe quel format et même quand j’upload rien…

Donc je ne sais pas trop. En tout cas, dans l’immediat ma journée est terminée. Je reprends demain a 8h et je ne pense pas revenir dans la soirée, toute suggestion est la bienvenue pour demain matin quand je recommencerais à me casser la tête :wink:

à donc tu ne devrai pas faire ça


move_uploaded_file($tempFile,$targetFile); 

echo "1";

mais ça


if (move_uploaded_file($tempFile,$targetFile)) 
{  echo '1';  }

Il semblerait que cela ne change pas grand chose à mon problème la seule chose bizarre c’est que entre hier 17h et aujourd’hui 14h je n’ai pas touché mon code et que maintenant il me sort une erreur que je n’avais pas hier :heink:

Maintenant une fois le fichier fini d’uploader, il ne disparait plus de la liste, il me donne le message : “HTTP Error”.

Pas très elloquant comme message me direz vous… Et bien vous avez raison, si vous avez d’autres idées…

C’est quel script que tu utilise

???
www.lafermeduweb.net…

j’utilise le script telechargé sur le site (dans le ZIP il y a un script de demo[dans le dossier Example], et c’est ce script que j’utilise)

Je galère un peu… J’ai réussis à retirer l’erreur : HTTP Error.

Mais bon, ça écris toujours rien sur le disque quand même…

Cela fonctionne, après 2j de recherche je trouve mon erreur avec une idée toute bête afficher le résultat de :

$_SERVER['DOCUMENT_ROOT']

Qui em donnait tout sauf ce que je voulais la solution était tout simplement :

$_SERVER['DOCUMENT_ROOT'] . 'app/webroot/uploads';

En faites tu ma donné la réponse dès le départ quand tu m’as dit :

J’ai juste très mal interpreter ce que tu m’as dit…

En tout cas merci de l’aide.
Edité le 06/05/2010 à 09:57

Salut k0rnmuz3,

Je suis dans le même cas que toi :frowning:

Tout fonctionne sauf l’ajout dans le folder… J’ai tout vérifié, mes chemins, mes droits sur mon serveur (777 sur le folder upload),
le php_file_upload à On dans mon .htaccess mais rien n’y fait… Mes fichiers ne sont tjs pas uploadé

J’ai testé ta modif, en rajoutant juste $_SERVER[‘DOCUMENT_ROOT’] devant mon chemin mais cela n’y fait rien :frowning:

Si tu repasse sur ce post, pourrais-tu me partager la partie de ta source concernant uploadify :slight_smile: ou si quelqu’un d’autre à une idée

Merci d’avance et bonne soirée à tous

Caes

Resalut

Je viens d’arriver a uploader mes fichiers… mais de manière détournée

Par contre, j’aimerai pouvoir uploader en interaction avec zend framework mais la, ca reste un mystère… j’ai l’impression que le jquery n’arrive pas à déclencher l’action du controller

Je l’appelle de la facon suivante :

$(document).ready(function() {
$("#uploadify").uploadify({
‘uploader’ : uploadify_swf_file,
‘script’ : upload_php_file,
‘cancelImg’ : upload_cancel_img,
‘folder’ : upload_folder,
‘queueID’ : ‘fileQueue’,
‘multi’ : true,
‘auto’ : false,
‘buttonText’ : ‘Parcourir…’,
‘sizeLimit’ : 1048576
});
});

var uploadify_swf_file=’/dev/apemLux/public/javascript/uploadify.swf’;
var upload_php_file=’/dev/apemLux/index/upload’; //index est le controller et upload l’action
var upload_folder=’/var/www/dev/apemLux/public/upload/gallery/’;
var upload_cancel_img=’/dev/apemLux/public/images/cancel.png’;

Voici le code de uploadAction()

public function uploadAction()
{
//
// $this->_helper->layout->disableLayout(); //disable layout
// $this->_helper->viewRenderer->setNoRender();

	if (! empty ( $_FILES ))
	{
		$tempFile = $_FILES ['Filedata'] ['tmp_name'];
		
		$targetPath = $_SERVER['DOCUMENT_ROOT'] . $_REQUEST['folder'] . '/';
		$this->view->path = $targetPath;
		$targetFile = str_replace('//','/',$targetPath) . $_FILES['Filedata']['name'];

		move_uploaded_file ( $tempFile, $targetFile );
		echo "1";
		}
		else
		{
			echo "0";
		}
	}

Merci de votre aide

Caes