HtmlInputFile to get filename only without upload

Discussion in 'ASP .Net' started by Ariel Dolan, Feb 19, 2004.

  1. Ariel Dolan

    Ariel Dolan Guest

    Can I use HtmlInputFile to only get the selected file name but not actually
    upload the file?

    Clicking the control's Browse button let's the user select a file. All I
    need is the HtmlInputFile Value property. However, any button clicked on the
    Html page results in uploading the selected file. Is there a way to avoid
    the actual uploading?

    Alternatively, is there any other way to let a user select a file name from
    his local disk?

    Thanks,
    Ariel
    --
    ==================================================
    Ariel Dolan


    Artificial Life and other Experiments
    http://www.aridolan.com
    http://www.arieldolan.com
    ==================================================
    Ariel Dolan, Feb 19, 2004
    #1
    1. Advertising

  2. Never tried this but if you use the usual enctype instead
    multipart/form-data, I believe the file will not be uploaded....

    Another option would be to copy the file name into an hidden textbox and to
    prevent posting of this particular field (by clearing this node for a
    radical solution to just clearing the name attribute or disabling the
    control).

    Let us know.

    Patrice

    --

    "Ariel Dolan" <> a écrit dans le message de
    news:%...
    > Can I use HtmlInputFile to only get the selected file name but not

    actually
    > upload the file?
    >
    > Clicking the control's Browse button let's the user select a file. All I
    > need is the HtmlInputFile Value property. However, any button clicked on

    the
    > Html page results in uploading the selected file. Is there a way to avoid
    > the actual uploading?
    >
    > Alternatively, is there any other way to let a user select a file name

    from
    > his local disk?
    >
    > Thanks,
    > Ariel
    > --
    > ==================================================
    > Ariel Dolan
    >
    >
    > Artificial Life and other Experiments
    > http://www.aridolan.com
    > http://www.arieldolan.com
    > ==================================================
    >
    >
    Patrice Scribe, Feb 19, 2004
    #2
    1. Advertising

  3. Ariel Dolan

    Ariel Dolan Guest

    Thank you for your answer.

    I removed the enctype attribute but it did not help. The file is still uploaded.

    Can you explain the second option you suggested. How do I prevent the HtmlInputFile control from uploading the file? The file name is displayed in the control's text box, but as soon as I activate any button, the file gets uploaded. I can copy the file name to a textbox, but this can be carried out only after uploading is complete. The uploading seems to be activated before any action initiated by the code.

    Thanks again,
    Ariel
    --
    ===============================================================
    Ariel Dolan


    Artificial Life and other Experiments
    http://www.aridolan.com
    http://www.arieldolan.com
    ===============================================================
    "Patrice Scribe" <> wrote in message news:...
    Never tried this but if you use the usual enctype instead
    multipart/form-data, I believe the file will not be uploaded....

    Another option would be to copy the file name into an hidden textbox and to
    prevent posting of this particular field (by clearing this node for a
    radical solution to just clearing the name attribute or disabling the
    control).

    Let us know.

    Patrice

    --

    "Ariel Dolan" <> a écrit dans le message de
    news:%...
    > Can I use HtmlInputFile to only get the selected file name but not

    actually
    > upload the file?
    >
    > Clicking the control's Browse button let's the user select a file. All I
    > need is the HtmlInputFile Value property. However, any button clicked on

    the
    > Html page results in uploading the selected file. Is there a way to avoid
    > the actual uploading?
    >
    > Alternatively, is there any other way to let a user select a file name

    from
    > his local disk?
    >
    > Thanks,
    > Ariel
    > --
    > ==================================================
    > Ariel Dolan
    >
    >
    > Artificial Life and other Experiments
    > http://www.aridolan.com
    > http://www.arieldolan.com
    > ==================================================
    >
    >
    Ariel Dolan, Feb 19, 2004
    #3
  4. My first thought would be :
    - don't include the "name" attribute. Controls without the name attribute
    shouldn't post their values. This way the file shoudn't be uploaded either.
    - on the onsubmit event, copy the value of the htmlInputFile to an hidden
    text box so that the name is still posted...

    In the worst case you could try also to use this event to clear totally the
    input type=file tag from the HTML form so that it is not posted (it should
    hopefully really prevent the file from being uploaded)...

    Hope it helps....

    Actually I finally made quick client side test using ASP. My web browser is
    IE 6:
    - with the default enctype, the file is NOT posted (make sure you don't have
    a browser cache problem or whatever).

    If I'm using enctype="multipart/form-data" the file is posted.

    I can still avoid to send its content by not using the name attribute on the
    input type=file tag. My final code is (ASP). Note though that the file part
    file is still here (Request.Files.count will still return a file) but there
    is no content in beetween (no content sent, you'll seee an empty file server
    side).

    The final HTML code is (you may want to test other browsers) :

    <%@ Language=VBScript %>
    <HTML>
    <HEAD>
    <META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
    </HEAD>
    <BODY>
    <%
    Response.BinaryWrite Request.BinaryRead(Request.TotalBytes)
    %>
    <FORM action="tst.asp" method="post"
    onSubmit="hiddenfilename.value=filename.value"
    enctype="multipart/form-data">
    <INPUT type="file" id="filename">
    <INPUT type="textbox" id="hiddenfilename" name="hiddenfilename">
    <INPUT Type="submit">
    </FORM>
    </BODY>
    </HTML>

    --

    "Ariel Dolan" <> a écrit dans le message de
    news:c134uq$4tr$...
    > Thank you for your answer.
    >
    > I removed the enctype attribute but it did not help. The file is still

    uploaded.
    >
    > Can you explain the second option you suggested. How do I prevent the

    HtmlInputFile control from uploading the file? The file name is displayed in
    the control's text box, but as soon as I activate any button, the file gets
    uploaded. I can copy the file name to a textbox, but this can be carried out
    only after uploading is complete. The uploading seems to be activated before
    any action initiated by the code.
    >
    > Thanks again,
    > Ariel
    > --
    > ===============================================================
    > Ariel Dolan
    >
    >
    > Artificial Life and other Experiments
    > http://www.aridolan.com
    > http://www.arieldolan.com
    > ===============================================================
    > "Patrice Scribe" <> wrote in message

    news:...
    > Never tried this but if you use the usual enctype instead
    > multipart/form-data, I believe the file will not be uploaded....
    >
    > Another option would be to copy the file name into an hidden textbox and

    to
    > prevent posting of this particular field (by clearing this node for a
    > radical solution to just clearing the name attribute or disabling the
    > control).
    >
    > Let us know.
    >
    > Patrice
    >
    > --
    >
    > "Ariel Dolan" <> a écrit dans le message de
    > news:%...
    > > Can I use HtmlInputFile to only get the selected file name but not

    > actually
    > > upload the file?
    > >
    > > Clicking the control's Browse button let's the user select a file. All I
    > > need is the HtmlInputFile Value property. However, any button clicked on

    > the
    > > Html page results in uploading the selected file. Is there a way to

    avoid
    > > the actual uploading?
    > >
    > > Alternatively, is there any other way to let a user select a file name

    > from
    > > his local disk?
    > >
    > > Thanks,
    > > Ariel
    > > --
    > > ==================================================
    > > Ariel Dolan
    > >
    > >
    > > Artificial Life and other Experiments
    > > http://www.aridolan.com
    > > http://www.arieldolan.com
    > > ==================================================
    > >
    > >

    >
    >
    Patrice Scribe, Feb 20, 2004
    #4
  5. Ariel Dolan

    Ariel Dolan Guest

    I now see why are experiences differ. I use the server side control
    (type="file" runat="server" i.e. HtmlInputFile) while you use the Html
    control. It is true that the Html control does not upload the file when it
    does not have a name attribute or when the enctype is set to default. The
    server side control, however, always uploads the file before anything else.

    My form is server side and contains several web controls. Can I place in
    this form a plain Html control of type="file" and still get the control
    value into server code?

    Thanks,
    Ariel
    --
    ===============================================================
    Ariel Dolan


    Artificial Life and other Experiments
    http://www.aridolan.com
    http://www.arieldolan.com
    ===============================================================
    "Patrice Scribe" <> wrote in message
    news:%23Jv%...
    > My first thought would be :
    > - don't include the "name" attribute. Controls without the name attribute
    > shouldn't post their values. This way the file shoudn't be uploaded

    either.
    > - on the onsubmit event, copy the value of the htmlInputFile to an hidden
    > text box so that the name is still posted...
    >
    > In the worst case you could try also to use this event to clear totally

    the
    > input type=file tag from the HTML form so that it is not posted (it should
    > hopefully really prevent the file from being uploaded)...
    >
    > Hope it helps....
    >
    > Actually I finally made quick client side test using ASP. My web browser

    is
    > IE 6:
    > - with the default enctype, the file is NOT posted (make sure you don't

    have
    > a browser cache problem or whatever).
    >
    > If I'm using enctype="multipart/form-data" the file is posted.
    >
    > I can still avoid to send its content by not using the name attribute on

    the
    > input type=file tag. My final code is (ASP). Note though that the file

    part
    > file is still here (Request.Files.count will still return a file) but

    there
    > is no content in beetween (no content sent, you'll seee an empty file

    server
    > side).
    >
    > The final HTML code is (you may want to test other browsers) :
    >
    > <%@ Language=VBScript %>
    > <HTML>
    > <HEAD>
    > <META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
    > </HEAD>
    > <BODY>
    > <%
    > Response.BinaryWrite Request.BinaryRead(Request.TotalBytes)
    > %>
    > <FORM action="tst.asp" method="post"
    > onSubmit="hiddenfilename.value=filename.value"
    > enctype="multipart/form-data">
    > <INPUT type="file" id="filename">
    > <INPUT type="textbox" id="hiddenfilename" name="hiddenfilename">
    > <INPUT Type="submit">
    > </FORM>
    > </BODY>
    > </HTML>
    >
    > --
    >
    > "Ariel Dolan" <> a écrit dans le message de
    > news:c134uq$4tr$...
    > > Thank you for your answer.
    > >
    > > I removed the enctype attribute but it did not help. The file is still

    > uploaded.
    > >
    > > Can you explain the second option you suggested. How do I prevent the

    > HtmlInputFile control from uploading the file? The file name is displayed

    in
    > the control's text box, but as soon as I activate any button, the file

    gets
    > uploaded. I can copy the file name to a textbox, but this can be carried

    out
    > only after uploading is complete. The uploading seems to be activated

    before
    > any action initiated by the code.
    > >
    > > Thanks again,
    > > Ariel
    > > --
    > > ===============================================================
    > > Ariel Dolan
    > >
    > >
    > > Artificial Life and other Experiments
    > > http://www.aridolan.com
    > > http://www.arieldolan.com
    > > ===============================================================
    > > "Patrice Scribe" <> wrote in message

    > news:...
    > > Never tried this but if you use the usual enctype instead
    > > multipart/form-data, I believe the file will not be uploaded....
    > >
    > > Another option would be to copy the file name into an hidden textbox and

    > to
    > > prevent posting of this particular field (by clearing this node for a
    > > radical solution to just clearing the name attribute or disabling the
    > > control).
    > >
    > > Let us know.
    > >
    > > Patrice
    > >
    > > --
    > >
    > > "Ariel Dolan" <> a écrit dans le message de
    > > news:%...
    > > > Can I use HtmlInputFile to only get the selected file name but not

    > > actually
    > > > upload the file?
    > > >
    > > > Clicking the control's Browse button let's the user select a file. All

    I
    > > > need is the HtmlInputFile Value property. However, any button clicked

    on
    > > the
    > > > Html page results in uploading the selected file. Is there a way to

    > avoid
    > > > the actual uploading?
    > > >
    > > > Alternatively, is there any other way to let a user select a file name

    > > from
    > > > his local disk?
    > > >
    > > > Thanks,
    > > > Ariel
    > > > --
    > > > ==================================================
    > > > Ariel Dolan
    > > >
    > > >
    > > > Artificial Life and other Experiments
    > > > http://www.aridolan.com
    > > > http://www.arieldolan.com
    > > > ==================================================
    > > >
    > > >

    > >
    > >

    >
    Ariel Dolan, Feb 20, 2004
    #5
  6. A "server control" is just a way to be able to easily control HTML
    generation. Does it creates the appropriate HTML code client side ?

    If the server control prevents generating the proper HTML code, you could
    anyway use just literal text for this input type="file" tag as it is to
    ignore anyway server side (you'll get the filename through an hidden
    textbox).

    Patrice

    --

    "Ariel Dolan" <> a écrit dans le message de
    news:c164p3$6lo$...
    > I now see why are experiences differ. I use the server side control
    > (type="file" runat="server" i.e. HtmlInputFile) while you use the Html
    > control. It is true that the Html control does not upload the file when it
    > does not have a name attribute or when the enctype is set to default. The
    > server side control, however, always uploads the file before anything

    else.
    >
    > My form is server side and contains several web controls. Can I place in
    > this form a plain Html control of type="file" and still get the control
    > value into server code?
    >
    > Thanks,
    > Ariel
    > --
    > ===============================================================
    > Ariel Dolan
    >
    >
    > Artificial Life and other Experiments
    > http://www.aridolan.com
    > http://www.arieldolan.com
    > ===============================================================
    > "Patrice Scribe" <> wrote in message
    > news:%23Jv%...
    > > My first thought would be :
    > > - don't include the "name" attribute. Controls without the name

    attribute
    > > shouldn't post their values. This way the file shoudn't be uploaded

    > either.
    > > - on the onsubmit event, copy the value of the htmlInputFile to an

    hidden
    > > text box so that the name is still posted...
    > >
    > > In the worst case you could try also to use this event to clear totally

    > the
    > > input type=file tag from the HTML form so that it is not posted (it

    should
    > > hopefully really prevent the file from being uploaded)...
    > >
    > > Hope it helps....
    > >
    > > Actually I finally made quick client side test using ASP. My web browser

    > is
    > > IE 6:
    > > - with the default enctype, the file is NOT posted (make sure you don't

    > have
    > > a browser cache problem or whatever).
    > >
    > > If I'm using enctype="multipart/form-data" the file is posted.
    > >
    > > I can still avoid to send its content by not using the name attribute on

    > the
    > > input type=file tag. My final code is (ASP). Note though that the file

    > part
    > > file is still here (Request.Files.count will still return a file) but

    > there
    > > is no content in beetween (no content sent, you'll seee an empty file

    > server
    > > side).
    > >
    > > The final HTML code is (you may want to test other browsers) :
    > >
    > > <%@ Language=VBScript %>
    > > <HTML>
    > > <HEAD>
    > > <META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
    > > </HEAD>
    > > <BODY>
    > > <%
    > > Response.BinaryWrite Request.BinaryRead(Request.TotalBytes)
    > > %>
    > > <FORM action="tst.asp" method="post"
    > > onSubmit="hiddenfilename.value=filename.value"
    > > enctype="multipart/form-data">
    > > <INPUT type="file" id="filename">
    > > <INPUT type="textbox" id="hiddenfilename" name="hiddenfilename">
    > > <INPUT Type="submit">
    > > </FORM>
    > > </BODY>
    > > </HTML>
    > >
    > > --
    > >
    > > "Ariel Dolan" <> a écrit dans le message de
    > > news:c134uq$4tr$...
    > > > Thank you for your answer.
    > > >
    > > > I removed the enctype attribute but it did not help. The file is still

    > > uploaded.
    > > >
    > > > Can you explain the second option you suggested. How do I prevent the

    > > HtmlInputFile control from uploading the file? The file name is

    displayed
    > in
    > > the control's text box, but as soon as I activate any button, the file

    > gets
    > > uploaded. I can copy the file name to a textbox, but this can be carried

    > out
    > > only after uploading is complete. The uploading seems to be activated

    > before
    > > any action initiated by the code.
    > > >
    > > > Thanks again,
    > > > Ariel
    > > > --
    > > > ===============================================================
    > > > Ariel Dolan
    > > >
    > > >
    > > > Artificial Life and other Experiments
    > > > http://www.aridolan.com
    > > > http://www.arieldolan.com
    > > > ===============================================================
    > > > "Patrice Scribe" <> wrote in message

    > > news:...
    > > > Never tried this but if you use the usual enctype instead
    > > > multipart/form-data, I believe the file will not be uploaded....
    > > >
    > > > Another option would be to copy the file name into an hidden textbox

    and
    > > to
    > > > prevent posting of this particular field (by clearing this node for a
    > > > radical solution to just clearing the name attribute or disabling the
    > > > control).
    > > >
    > > > Let us know.
    > > >
    > > > Patrice
    > > >
    > > > --
    > > >
    > > > "Ariel Dolan" <> a écrit dans le message de
    > > > news:%...
    > > > > Can I use HtmlInputFile to only get the selected file name but not
    > > > actually
    > > > > upload the file?
    > > > >
    > > > > Clicking the control's Browse button let's the user select a file.

    All
    > I
    > > > > need is the HtmlInputFile Value property. However, any button

    clicked
    > on
    > > > the
    > > > > Html page results in uploading the selected file. Is there a way to

    > > avoid
    > > > > the actual uploading?
    > > > >
    > > > > Alternatively, is there any other way to let a user select a file

    name
    > > > from
    > > > > his local disk?
    > > > >
    > > > > Thanks,
    > > > > Ariel
    > > > > --
    > > > > ==================================================
    > > > > Ariel Dolan
    > > > >
    > > > >
    > > > > Artificial Life and other Experiments
    > > > > http://www.aridolan.com
    > > > > http://www.arieldolan.com
    > > > > ==================================================
    > > > >
    > > > >
    > > >
    > > >

    > >

    >
    >
    Patrice Scribe, Feb 24, 2004
    #6
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Long Le
    Replies:
    3
    Views:
    1,156
    Long Le
    Aug 11, 2004
  2. =?Utf-8?B?UmVkZHk=?=
    Replies:
    5
    Views:
    2,172
    =?Utf-8?B?UmVkZHk=?=
    Dec 28, 2005
  3. Replies:
    1
    Views:
    1,417
    Roland de Ruiter
    Jun 15, 2006
  4. Replies:
    0
    Views:
    524
  5. Vaquar
    Replies:
    3
    Views:
    496
    Coskun SUNALI [MVP]
    Feb 5, 2008
Loading...

Share This Page