IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

plugin UPLOADIFY, controle du nom de fichier


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 69
    Par défaut plugin UPLOADIFY, controle du nom de fichier
    Bonjour, je viens à l'aide car je ne trouve pas de réponse ou d'exemple sur le net, même sur le forum dédié à Uploadify.

    Mon projet serait de controler le nom de fichiers avant transfert.

    Le script fonctionne actuellement. (C'est un multi-upload qui n'accepte que le pdf).

    Mon nom de fichier doit commencer par 5 chiffres et ne pas contenir d'accent et ne pas exister dans ma base de données. Ces différentes requêtes sont dans l'upload.php avec un echo error1 / 2 / 3 else = upload

    Dans la partie js de l'uploadify, je voudrais dire quelquechose du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function(){if(result==error1) { alert("Le fichier XXX  ne commence pas par 5 chiffres, il ne sera pas uploadé, les autres si ");   }
    if(result==error2) { alert("Le fichier XXX existe dans la base, il ne sera pas uploadé, les autres si");   }
    if(result==error3) { alert("Le fichier XXX contient des caractères interdit, il ne sera pas uploadé, les autres si");   }
    if(result==OK) { // Uploadify...   }

    Pourriez-vous m'aider, j'ai du mal à trouver une solution? Comment liéer le resultat du fichier externe upload.php et le code javascript? Pour infos le code natif est ici : http://www.uploadify.com/implementation/

    Merci beaucoup, je commence à désésperer de la possibilité de mon projet.

  2. #2
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2007
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Octobre 2007
    Messages : 282
    Par défaut
    Si je comprend bien, tu souhaites tester avant l'upload la structure du nom? C'est bien cela?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 69
    Par défaut
    Oui, c'est ça. C'est un multi-upload.

    Par exemple, j'ai 4 fichiers, je selectionne les 4 et les ajoute dans la file d'attente :

    12345_test.pdf
    12345_test1.pdf
    12345_testà.pdf
    test5_.pdf


    La une (ou plusieurs suivant le nombre d'erreur) alert arrive signifiant que
    12345_test1.pdf existe déjà dans le dossier (la vérification est une requete dans une base de donnée), ensuite, 12345_testà.pdf est invalide car il a un caractère non-autorisé (expression regex) ensuite test5_.pdf ne commence pas par 5 chiffres (expression egex). Les 4 fichiers sont toujours dans la liste d'attente (si possible les griser pour dire qu'ils sont incorrectes) et lorsque que l'on clique sur envoyer j'ai 12345_test.pdf qui est uploadé.

    Est-ce faisable?

  4. #4
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2007
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Octobre 2007
    Messages : 282
    Par défaut
    Vérifier la structure d'un nom de fichier dans une base de donnée ou autre est faisable. Regarde du coté de jquery et de la fonction ajax.

    Voici un de mes vieux scripts:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
     
    $("#commentaireformulaire").submit(function()
    	{
    		//recuperation de la valeur qui de l'id #adresse
    		var pseudonyme = $("#pseudo").val();
    		var adressemail = $("#mail").val();
    		var comment = $("#commentaire").val();
    		var total = "0";
    	/* Pseudo Long */
    		if(pseudonyme.length > 30)
    		{
    			var total = "1";
    			$("#formulairecommentairebox").html('Votre pseudo est trop long ! (30 caractères MAX !');
    		}
    		if(pseudonyme=="")
    		{
    			var total = "1";
    			$("#formulairecommentairebox").html('Indiquez votre pseudo');
    		}
    	/* Mail */
    		if(comment=="")
    		{
    			var total ="1";
    			$("#formulairecommentairebox").html('Indiquez votre message');
    		}
    		mailvalide = new RegExp ( "^\\w[\\w+\.\-]*@[\\w\-]+\.\\w[\\w+\.\-]*\\w$", "gi" ) ;
    		if(adressemail != '' && adressemail.search(mailvalide) == -1)
    		{
    			var total="1";
    			$("#formulairecommentairebox").html("Entrez une adresse mail valide");
    		}
    		if(total == "0")
    		{
    	/* Champ anti spam complete */
    			var str = $("form").serialize();
    				//lancement de la requete ajax pour envoyer l'adresse dans le fichier newsletter.php qui enregistrera les nouveaux abonnés
    			$.ajax({
    				url: '../../ajoutcommentaire.php',
    				type: 'POST',
    				data: str,
    				success: function (data)
    				{
    					//renvoie du message pour confirmer ou infirmer l'inscription
    					$("#formulairecommentairebox").html(data);
    					//document.getElementById("formnewsletter").innerHTML=data;
    				}
    			});
    			return false;	
    		}
    	});
    Dans ce code, je récupère le contenu de mes champs input et je l'envoie à une page $.ajax, en méthode post pour l'enregistrer dans ma base de donnée.
    Je pense que tu dois pouvoir récupérer le nom de fichier pour tester via l'attribut onchange() mis en place dans ton formulaire

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 69
    Par défaut
    Ok, je teste, mais comment intégrer cela dans le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $(document).ready(function() {
    	$("#uploadify").uploadify({

  6. #6
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2007
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Octobre 2007
    Messages : 282
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $('#fileInput').uploadify({
    'uploader'  : 'uploadify.swf',
    'checkScript': 'tonfichier.php',
    'script'    : 'uploadify.php',
    'cancelImg' : 'cancel.png',
    'auto'      : true,
    'folder'    : '/uploads'
    });
    });

Discussions similaires

  1. controler les nom de fichier en utf8 ?
    Par panthere noire dans le forum Débuter
    Réponses: 2
    Dernier message: 06/03/2012, 15h12
  2. Réponses: 2
    Dernier message: 09/06/2011, 10h39
  3. Réponses: 8
    Dernier message: 10/03/2010, 15h51
  4. Réponses: 3
    Dernier message: 03/03/2010, 19h16
  5. Réponses: 1
    Dernier message: 03/02/2010, 17h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo