Avatar billede thomasmyg Nybegynder
25. november 2007 - 22:25 Der er 10 kommentarer og
1 løsning

select * from [tabel] WHERE

Jeg har en hjemmeside hvor der er et lille login system på, når man er logget ind på siden er der en række menupunkter. Alle menupunkterne er de samme for alle brugere, dog er et af den et punkt hvor man kan rette oplysninger, så som navn adresse osv. osv. osv.

Jeg har denne her stump kode som åbenbart ikke er rigtig, jeg får i hvert fald ikke noget frem på skærmen:

<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:oktobertermin07ConnectionString %>"
            SelectCommand="SELECT [UserName], [UserId] FROM [vw_aspnet_Users] WHERE ([UserId] = @UserId)">
            <SelectParameters>
                <asp:Parameter Name="UserId" Type="Object" />
            </SelectParameters>
        </asp:SqlDataSource>
Avatar billede torotune Nybegynder
25. november 2007 - 22:52 #1
Skal du ikke have et "@" foran UserId nede i dit Parameter Name?
Avatar billede thomasmyg Nybegynder
25. november 2007 - 23:09 #2
hvorfor ikke, Visual Web Developer forslår det selv?
Avatar billede thomasmyg Nybegynder
25. november 2007 - 23:11 #3
Og så virker det stdig ikke selvom jeg fjerner @
Avatar billede torotune Nybegynder
25. november 2007 - 23:52 #4
Okay, har du prøvet at udskrive parameteren for at tjekke om den indeholder et UserId eller om den af en eller anden grund er tom?
Avatar billede arne_v Ekspert
26. november 2007 - 01:22 #5
Forslaget var vel ikke at fjerne @ fra SQL men at tilføje det til Parameter tag'ets
Name attribut ??
Avatar billede thomasmyg Nybegynder
26. november 2007 - 08:59 #6
torotune >> Du bliver nød til at hjælpe mig lidt, hvor kontrollere jeg om der er et userid?

arne_v >> Jeg har kun @ et sted, så jeg kan ikke rigetig fjerne anrde steder.
Avatar billede torotune Nybegynder
26. november 2007 - 09:27 #7
Hej igen, nej @ skal ikke ikke fjernes men tilføjes nede i SelectParameters, det var fordi jeg mente om de parameternavnene ikke skal være identiske,
altså så den nede i SelectParameters skal hedde:

  <asp:Parameter Name="@UserId" Type="Object" />

Men jeg ved ikke om det gør nogen forskel. Men ellers, hvor får du UserId-parameteren fra? Den står til typen Object. Hvis du kan prøve at udskrive den og se om den er tom, for producerer din sql jo ikke noget.

Ellers, har du et GridView eller noget på din side hvor du udskriver dine data i, og har du husket at angive dens datasource som SqlDataSource1?
Avatar billede thomasmyg Nybegynder
26. november 2007 - 22:10 #8
det her er hvad jeg har i min form.

        <asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSource1" CellPadding="4" ForeColor="#333333" GridLines="None">
            <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
            <RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
            <EditRowStyle BackColor="#999999" />
            <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
            <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
            <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
            <AlternatingRowStyle BackColor="White" ForeColor="#284775" />
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:oktobertermin07ConnectionString %>"
            SelectCommand="SELECT [UserName], [UserId] FROM [vw_aspnet_Users] WHERE ([UserId] = UserId)">
            <SelectParameters>
                <asp:Parameter Name="@UserId" Type="Object" />
            </SelectParameters>
        </asp:SqlDataSource>
Avatar billede torotune Nybegynder
26. november 2007 - 23:03 #9
Yes, men nu har du jo fjernet @ igen fra din SQL-sætning, det var også det arne_v efterspurgte. De må hedde det samme, dvs.:

SelectCommand="SELECT [UserName], [UserId] FROM [vw_aspnet_Users] WHERE ([UserId] = @UserId)">
            <SelectParameters>
                <asp:Parameter Name="@UserId" Type="Object" />
            </SelectParameters>
        </asp:SqlDataSource>

Ellers hvis det ikke virker må du prøve at tjekke på de andre ting for at finde frem til fejlen eller manglen. Hvis der f.eks. ikke gemmer sig noget i parameteren UserId vil der jo ikke komme noget ud af forespørgslen, derfor prøv om du kan udskrive denne parameter.. Resten af din kode ser jo rigtig nok ud.
Avatar billede thomasmyg Nybegynder
27. november 2007 - 15:16 #10
hvordan kontrollere jeg om mine parametre indeholder noget?
Avatar billede thomasmyg Nybegynder
28. september 2008 - 21:42 #11
Har ikke hørt noget i meget lang tid, lukker spørgsmålet.
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