2014-09-15 5 views
0

J'utilise ASPUpload pour faire le téléchargement de fichiers pour un formulaire Web, la forme actuelle je travaille sur des mises à jour un enregistrement dans la base de données afin que vous avez la possibilité de changer le nom du fichier, j'ai le contrôle suivantComment vérifier qu'un fichier a été téléchargé?

If Upload.Form("imageFilename-bound") <> "" And Upload.Files = null Then 
    skipUpload = true 
End If 

Lorsque la page est chargée, le nom de fichier dans la base de données est la valeur d'une zone de texte en lecture seule imageFilename-bound tandis que le champ de saisie de fichier imageFilename est utilisé pour sélectionner un fichier. de sorte que le code psudo de ce qui précède est

IF[notre précédent nom de l'image] n'est pas videET[nous n'avons pas reçu un fichier à télécharger]ALORS
        {Nous ne sommes pas télécharger un fichier}

maintenant puisqu'il y a l'option que l'utilisateur ne veut pas changer le fichier et que le téléchargement de fichier n'a été que récemment suggéré (après que le formulaire ait été complété) je ne veux pas changer beaucoup de chose avec le téléchargement de fichier (y compris la validation de la taille, le type etc) j'ai mis dans une condition If skipUpload = false Then.

Si je supprime la partie And Upload.Files = null je ne reçois aucune erreur mais lors de la mise à jour et je vais changer l'image elle ne le fait pas (comme imageFilename-bound n'est pas une chaîne vide donc l'instruction if est correcte) mais quand j'ajoute la partie And Upload.Files = null je reçois une erreur 500 et je ne peux donc pas actully voir le problème (je suis forcé de tester sur une machine qui n'a pas l'enregistrement d'erreur)

donc ma question est, comment puis-je vérifier avec ASPUpload si mon champ de saisie de fichier a reçu un fichier?

Répondre

0

j'ai la page de travailler avec ce code

skipUpload = false 

If Upload.Form("imageFilename-bound") <> "" Then 
    skipUpload = true 
    For Each File in Upload.Files 
     skipUpload = false 
    Next 
End If 

psudo:

IF[notre précédent nom de l'image] n'est pas videALORS
        {Nous ne sommes pas Uploa ding un fichier}
        POUR CHAQUE[fichier Soumis]
                {nous allons télécharger}

fait cela ne ce que je veux mais je pense que c'est très inélégant, avoir à utiliser une boucle pour che ck si j'ai soumis un fichier.Je cherche toujours une meilleure réponse

+0

Il devrait être aussi simple que 'skipUpload = (Len (Upload.Form (" imageFilename-bound "))> 0) Et (Upload.Files.Count> 0)'. –

Questions connexes