Accueil   |   Forums   |  Offres d'emplois   |  Contact    |   Mon compte   
samedi 6 septembre 2008 Rechercher :
Déposez votre CV gratuitement sur touslesemplois
 
comparer les prix
» Logiciels
» Jeux vidéos
» Matériel Informatique


» ASP.NET
» ASP
» SQL
» PHP
» JAVASCRIPT
» XML
 


» ACTUALITÉ / DIVERS
» DROIT DE L'INTERNET
» INFOS VIRUS
» PATCHS MICROSOFT
» SÉCURITÉ
» BASES DE DONNÉES
» DOWNLOAD .NET
» LOGITHÈQUE
» SERVICES WEB
» Y SONT FOUS !
» .NET
» ASP
» ASP.NET
» JAVA
» PHP
» XML
» LANGAGE C#
» LANGAGE VB.NET
» UNIX / LINUX
» WINDOWS
» EVÈNEMENTS
» GASP
» MICROSOFT
 


Vous êtes ici : Forums > Langage ASP > upload.inc + probleme d'include

upload.inc + probleme d'include
Bonjour,

J'utilise un script trouvé sur le web pour uploader des fichiers léger...et tout fonctionne très bien.

Je suis en train de monter un nouveau site dans lequel j'ai une page principale faisant appel à différents includes avec un select Case...et là mon fichier upload.inc ne fonctionne plus.

Page principale -> affichage de la page 2 grâce à include -> page 2 présente l'erreur suivante :

*********************************
Erreur de compilation Microsoft VBScript error '800a0401'

Fin d'instruction attendue

/iisHelp/common/500-100.asp, line 11

Dim objASPError, blnErrorWritten, strServername, strServerIP, strRemoteIP Dim strMethod, lngPos, datNow, strQueryString, strURL
--------------------------------------------------------------------------^
Erreur de compilation Microsoft VBScript error '800a0411'

Redéfinition de nom

\Includes\upload.inc, line 2

Const IncludeType = 2
------^
*********************************

Bizarrement, lorsque j'éxécute directement la page 2 (sans passer par la page 1)...ça marche !?!?

Merci d'avance pour votre aide.

Message posté le 05/04/2006 par chucky69

Répondre à ce message
 
AuteurRéponse 
Salem
05/04/2006
RE : upload.inc + probleme d'include
En utilisant include file/virtual, tous tes fichiers includes sont charges par IIS, peu importe les conditions que tu utilises. Donc si tu as la meme variable/fonction/procedure definie dans deux includes differents, ca donnera une erreur.

Essaye en utilisant des:

<% server.execute("ton_include.asp") %> ...
Répondre
chucky69
05/04/2006
RE : RE : upload.inc + probleme d'include
Merci Salem,

Server.execute("url") a une conséquence étrange...mes variables récupérées dans ma page 1 ne sont plus traitées dans ma page 2 (bizarre car un response.write les affiche) !?!?

Bref, comme ces variables sont chargées dans ma page 1 mais plus exploitées dans mes pages appelées, je ne peux plus tester le script d'upload.

Pour finir, je n'arrive pas à utiliser server.execute pour remplacer mes includes de connexion...c'est normal ?

merci ...
Répondre
Salem
05/04/2006
RE : RE : RE : upload.inc + probleme d'include
hmm... je crois que oui en fait, c'est normal. Mais cela dit, tu peux recuperer les variables de session ainsi que les donnees recuperables via un request.form ou request.querystring (de la meme facon que tu le ferais depuis la page appelante). ...
Répondre
chucky69
06/04/2006
RE : RE : RE : RE : upload.inc + probleme d'include
c'est comme cela que mes variables étaient récupérées (request.form et request.querystring).

A la différence de l'include, le server.execute a l'air de s'éxécuter de manière complètement isolée :-|...je retourne à mes tests et te tiens au courant. ...
Répondre
Salem
06/04/2006
RE : RE : RE : RE : RE : upload.inc + probleme d'include
Oui, server.execute s'execute de facon isolee, mais question performance, c'est bien mieux que l'include car seulement les fichiers requis sont charges par IIS. ...
Répondre
chucky69
06/04/2006
RE : RE : RE : RE : RE : RE : upload.inc + probleme d'include
Ok
J'ai remplacé tous mes includes (hormis mes includes de connexion) par des server.execute...j'ai dû doubler tous mes request.form et request.querystring (copier ceux de la page 1 sur la page 2)...je t'avouerais que je n'ai pas compris pourquoi j'ai dû le faire mais tout refonctionne...hormis l'upload.

Je n'ai plus de message d'erreur mais le fichier upload.inc n'est plus chargé par l'include <!--#INCLUDE FILE="upload.inc" --> (la fonction getupload appelée ne s'éxécute pas)... :( :( :(

A priori je ne rentre plus dans mon If car mes response.write ne me retournent rien (cf partie de code ci-dessous):

<%
If Request.ServerVariables("REQUEST_METHOD") = "POST" Then 'Request method must be "POST" For get the fields
Set Fields = GetUpload()
NomFichier=Fields("File1").FileName
NomFichier=REPLACE(NomFichier,"'","¤")
FilePath = Server.MapPath(".") & "\..\images\" & NomFichier
Fields("File1").Value.SaveAs FilePath
%>
<!--#include virtual="/Connexion.asp"-->
<%
SQLUPDATE="UPDATE [MaTable] SET [MaTable].NomFichier = '" & NomFichier & "' WHERE [MaTable].NumFichier=" & NumFichier & ";"

conn.execute(SQLUPDATE)

conn.close
set conn=nothing

response.redirect ("Administration.asp?Choix=" & Choix)
response.write("NomFichier=") & NomFichier & "<br>"
response.write FilePath

End If
%>

Je ne sais pas si j'ai été super super clair :( :( :(

Merci pour votre aide. ...
Répondre
Salem
06/04/2006
RE : RE : RE : RE : RE : RE : RE : upload.inc + probleme d'include
Ton <!--#INCLUDE FILE="upload.inc" --> se trouve-t-il dans un fichier charge via un server.execute ?
Si c'est le cas, il est effectivement possible que Request.ServerVariables("REQUEST_METHOD") ne retourne pas "POST". Il vaut mieux dans ce cas tester le contenu d'un champs via un request.form pour proceder a l'upload. ...
Répondre
chucky69
06/04/2006
RE : RE : RE : RE : RE : RE : RE : RE : upload.inc + probleme d'include
Oui c'est le cas...

J'ai un formulaire juste avant qui permettait l'upload :
<form method=post ENCTYPE="multipart/form-data">
File : <input type="file" name="File1"><br>
<input type="submit" Name="Action" value="Upload the file">
</form>

Il faut donc que je vire ENCTYPE="multipart/form-data" et qu'à la place je déclenche une action de validation de formulaire "action=Administration.asp" ? ...
Répondre
Salem
06/04/2006
RE : RE : RE : RE : RE : RE : RE : RE : RE : upload.inc + probleme d'include
Non, je ne pense pas qu'il soit necessaire de retirer l'attribut ENCTYPE.

Mais au lieu d'utiliser:
if Request.ServerVariables("REQUEST_METHOD") = "POST" then

essaye plutot avec:
if request.form("Action") <> "" then

...
Répondre
chucky69
06/04/2006
RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : upload.inc + probleme d'include
j'avais déjà essayé mais a marche pas :( ...
Répondre
Salem
06/04/2006
RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : upload.inc + probleme d'include
Et ton upload fonctionnait bien avant ?

Si oui, utilise une page autonome pour l'upload (sans include) qui sera chargee par ton formulaire dans un iframe de 1x1 pixel (donc transparent).

Donne un nom a ton iframe, et utilise ce nom dans le target de ton formulaire. ...
Répondre
chucky69
06/04/2006
RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : upload.inc + probleme d'include
Merci Salem pour ta persévérance...

Voilà ce que j'ai essayé et ça ne marche pas...désolé, je n'ai jamais utilisé d'Iframe :

<iframe src="upload.inc" name="Upload" width="1" height="1" frameborder=no></iframe>
<form method=post ENCTYPE="multipart/form-data" target="Upload">
File : <input type="file" name="File1"><br>
<input type="submit" Name="Action" value="Upload the file">
</form>
<%
if request.form("Action") <> "" then
Set Fields = GetUpload()
NomFichier=Fields("File1").FileName
NomFichier=REPLACE(NomFichier,"'","¤")
FilePath = Server.MapPath(".") & "\..\images\" & NomFichier
Fields("File1").Value.SaveAs FilePath
%>
<!--#include virtual="/Connexion.asp"-->
<%
SQLUPDATE="UPDATE [TMaTable] SET [TMaTable].Nom = '" & NomFichier & "' WHERE [TMaTable].NumNom=" & Choix & ";"

conn.execute(SQLUPDATE)

conn.close
set conn=nothing

response.redirect ("Administration.asp?Choix=" & Choix)
%>

:( ...
Répondre
Salem
06/04/2006
RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : upload.inc + probleme d'include
Aucun probleme.
Ton iframe est utilise correctement.
Par contre, ton fichier include utilise une extension .inc - ce n'est pas une extension reconnue par defaut par IIS. Ca veut dire que n'importe qui peut egalement editer son source si le nom est entre dans l'url.
Bref, renomme ton fichier include avec une extension .asp (et change le nom dans ton tag IFRAME egalement). ...
Répondre
chucky69
06/04/2006
RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : upload.inc + probleme d'includ
C'est fait mais le soucis maintenant est que la source .inc transformée en .asp devient bizarre...

Il y a 2 scripts encadrés par les balises <SCRIPT RUNAT=SERVER LANGUAGE=VBSCRIPT></SCRIPT>...bien sûr j'ai essayé de remplacer ces balises par <% et %>...rien n'y fait.

Ce qui est bizarre, c'est que lorsque je valide le formulaire, le champ texte du formulaire reste rempli !?!?

Là je suis largué...
...
Répondre
chucky69
06/04/2006
RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : RE : upload.inc + probleme d'i
Salem,

J'ai trouvé un nouveau script à l'adresse suivante http://www.asp-magazine.com/fr/asp/blitz/blitz10.asp

ça marche :-)...mais j'ai un autre problème...comment transférer des variables suppmémentaires dans le fichier "NC-upload.asp".

Je tente, de ma première page, un <input type="hidden" name="ChoixMat" value="<%=ChoixMat%>"> mais lorsque je fais un request.form dans "NC-upload.asp" j'ai le message d'erreur suivant :

*************************************
Objet Request error 'ASP 0207 : 80004005'

Impossible d'utiliser Request.Form

/c2nt/Includes/Upload.asp, line 161

Impossible d'utiliser la collection Request.Form après avoir appelé BinaryRead.
*************************************

Galère, galère :-( :-( :-( ...
Répondre
1 2 


Project Hoshimi


A RETENIR CETTE SEMAINE
16/07/2008 - Windows Server 2008 : Network Access Protection
Le nouveau système d’exploitation serveur de Microsoft, Windows Server 2008, apporte avec lui de nou ...
16/07/2008 - Webcasts - Développement parallèle, à l'aube d'une nouvelle ère
Avec l'avénement des multi-coeurs, le développement parallèle devient une necéssité. Dans cette séri ...
16/07/2008 - J'en ai rien à coder - Votre devoir de vacances sur Silverlight !
Qu'est-ce que Silverlight ? Une nouvelle technologie Web permettant d'exécuter des RIA sur un large ...
16/07/2008 - Quelques petits tests sur les bases embarquées
Dans ce billet, Ayende réalise un benchmarking de plusieurs "petites" bases de données embarquées. S ...
15/07/2008 - Présentation d'ASP.NET Dynamic Data
Dynamic Data est une nouvelle technologie inclue dans l' "Asp.net 3.5 Extension CTP ". Elle fournit ...
15/07/2008 - Silverlight 2 - Les webcasts de l'événement sont en ligne
L’objectif de cette journée était de comprendre les limitations de Silverlight 1, et d’appréhender l ...
15/07/2008 - Cache transparent et Entity Framework
La gestion du cache (1er et second niveau) est une fonctionnalité très importante d'un outil de mapp ...
(c) 1999-2006 ASP MAGAZINE SARL
Partenaires : Codes sources c2i ASP-PHP
Hébergement serveurs dédiés Windows


Hit-Parade