Avatar billede Slettet bruger
15. august 2007 - 13:04 Der er 4 kommentarer og
2 løsninger

Hvordan validerer man om et felt af typen "file" er tomt?

Min "opret en ny kategori" side indeholder muligheden for at indsætte en i forvejen kendt sti som vises i en DropDownListe, eller at tilføje en ny via en <indput type "file"> modul. Jeg har forsøgt mig med en if/else sætning i en string da det er det mest simple, men den sætter konsekvent kun ind i databasen hvis jeg henter en fil via indput-knappan.

string strNy;
if (fbFileBox.PostedFile != null )
{
    strNy = TheFile.Substring(TheFile.LastIndexOf("\\")+1);
}
else
{
    strNy = ddlPage.SelectedValue;
}

Har forsøgt mig både med -og uden !-tegn. ~:[
Avatar billede jps6kb Novice
15. august 2007 - 14:04 #1
Bruger du en FileUpload? Den har en FileUpload1.HasFile attribut du kan bruge.
Avatar billede Slettet bruger
15. august 2007 - 15:43 #2
Jeg bruger <input type="file" id="fbFileBox" size="22" runat="server">
Avatar billede testpilot_dk Nybegynder
17. august 2007 - 14:43 #3
I din code behind fil, kan du bruge følgende:

C#
if(fbFileBox.PostedFile.FileName.Length == 0)

vb.net
if fbFileBox.PostedFile.Filename.Length = 0 then
Avatar billede Slettet bruger
21. august 2007 - 15:17 #4
Det lader til at være det rigtige stykke kode - men ligemeget hvad jeg gør vil den ikke hente dropdownlistens værdi ("ddlPage.SelectedValue"). Scriptet som jeg henter data ind i dropdownen ser således ud:

void VisPage(){           
OleDbConnection OurConnection;
OleDbCommand OurCommand;
OleDbDataReader OurDataReader;       
OurConnection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath("db/sideindhold.mdb")+";");           
OurConnection.Open();       
OurCommand = new OleDbCommand("SELECT DISTINCT page FROM sider", OurConnection);
ddlPage.DataTextField = "page";   
ddlPage.DataSource = OurCommand.ExecuteReader(CommandBehavior.CloseConnection);
ddlPage.DataBind();
OurConnection.Close();
}
Avatar billede Slettet bruger
29. august 2007 - 13:25 #5
Ingen der har et bud?!?
Avatar billede Slettet bruger
30. august 2007 - 14:37 #6
Løste problemet selv! I stedet for at opfinde den dybe tallerken startede jeg forfra og fandt denne RET simple løsning som virkede...

void OpretNy(object sender, EventArgs e) {
    string strNy;
    if (fbFileBox.HasFile)
    {
        fbFileBox.SaveAs(Server.MapPath(@"..\\template/" + fbFileBox.FileName));
        strNy = fbFileBox.FileName;
    }
    else
        {
        strNy = ddlPage.SelectedValue;
    }

Og det var forresten også hvad jps6kb startede med at sige, så jeg deler pointene med ham ~:]
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester