Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
ASP.NET 2.0 / 3.5 / 4.0
Controllo su gridview
giovedì 10 maggio 2007 - 13.13
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
tdj
Profilo
| Newbie
40
messaggi | Data Invio:
gio 10 mag 2007 - 13:13
ho una colonna hyperlink su una gridview. la uso per passare da "pagina master" a "pagina dettaglio". se però l'utente non è loggato vorrei farlo andare alla pagina di login. questo è quanto ho scritto e non funziona : anche se il campo login name è blank passa sempre sulla pagina "details".
cosa e dove sto sbagliando ?
grazie
Protected Sub GridView1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs)
If "LoginName1" = "" Then
Response.Redirect("Login.aspx")
Else
Response.Redirect("details.aspx")
End If
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
gio 10 mag 2007 - 13:23
Ciao!
>ho una colonna hyperlink su una gridview. la uso per passare
>da "pagina master" a "pagina dettaglio". se però l'utente non
>è loggato vorrei farlo andare alla pagina di login. questo è
>quanto ho scritto e non funziona : anche se il campo login name
>è blank passa sempre sulla pagina "details".
>cosa e dove sto sbagliando ?
>grazie
>
>Protected Sub GridView1_SelectedIndexChanged(ByVal sender As
>Object, ByVal e As System.EventArgs)
> If "LoginName1" = "" Then
> Response.Redirect("Login.aspx")
> Else
> Response.Redirect("details.aspx")
> End If
Non vorrei commettere errori sottolineandoti l'errore che fai, ma la condizione dell'if è proprio scritta così?
perchè in tal caso stai confrontando due stringhe costanti, sempre diverse..
è come se facessi
If "a" = "b" then
...
else
...
end if
siccome il test è sempre diverso, ci si ritroverà sempre nell'else..
Alx81 =)
http://blogs.dotnethell.it/suxstellino
tdj
Profilo
| Newbie
40
messaggi | Data Invio:
gio 10 mag 2007 - 13:40
>Protected Sub GridView1_SelectedIndexChanged(ByVal sender As
>Object, ByVal e As System.EventArgs)
If "A" = "A" Then
> Response.Redirect("Login.aspx")
> Else
> Response.Redirect("details.aspx")
> End If
ho provato in questo momento a fare proprio così e va sempre su "details". scusa ...
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
gio 10 mag 2007 - 13:50
>ho provato in questo momento a fare proprio così e va sempre
>su "details". scusa ...
Premesso il fatto che se utilizzi la forms authentication di aspnet, la redirect te la fa da solo, accorgendosi che l'utente non è loggato, ti chiedo di postare il tuo codice per intero. Perchè c'è da capire bene quello che succede.
Alx81 =)
http://blogs.dotnethell.it/suxstellino
tdj
Profilo
| Newbie
40
messaggi | Data Invio:
gio 10 mag 2007 - 14:56
mi hai aperto un nuovo orizzonte con "la forms authentication di ASP.net" e sto cercando informazioni e sopratutto esempi. mi piacerebbe usare quella perchè, come ci siamo detti fin dall'inizio, vorrei scrivere meno codice possibile (che conosco pochissimissimo) ed utilizzare, quanto più possibile, gli strumenti che mette a disposizione VWD (& co). hai qualche suggerimeto su dove e cosa leggere (sopratutto esempi) ? grazie !
tdj
Profilo
| Newbie
40
messaggi | Data Invio:
gio 10 mag 2007 - 15:35
però credo anche di stare facendo qualche errore madornale di impostazione e perciò ecco qui tutto il codice. ti prego : poche pernacchie !
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Protected Sub DataList1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs)
End Sub
Protected Sub GridView1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs)
If "A" = "A" Then
Response.Redirect("Login.aspx")
Else
Response.Redirect("details.aspx")
End If
End Sub
Protected Sub LoginStatus1_LoggingOut(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.LoginCancelEventArgs)
End Sub
</script>
<html xmlns="
http://www.w3.org/1999/xhtml"
>
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<br />
<br />
<br />
<br />
<asp:GridView ID="GridView1" runat="server" AllowPaging="True" AllowSorting="True"
AutoGenerateColumns="False" CellPadding="4" DataSourceID="SqlDataSource1" ForeColor="#333333"
GridLines="None" Style="z-index: 100; left: 12px; position: absolute; top: 161px" OnSelectedIndexChanged="GridView1_SelectedIndexChanged" Width="505px" Height="104px">
<FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
<Columns>
<asp:BoundField DataField="titolo" HeaderText="titolo" SortExpression="titolo" />
<asp:BoundField DataField="autore" HeaderText="autore" SortExpression="autore" />
<asp:BoundField DataField="genere" HeaderText="genere" SortExpression="genere" />
<asp:BoundField DataField="utente" HeaderText="utente" SortExpression="utente" />
<asp:BoundField DataField="cercooffro" HeaderText="cercooffro" SortExpression="cercooffro" />
<asp:HyperLinkField Text="Contatta Utente" DataNavigateUrlFields="chiave"
DataNavigateUrlFormatString="details.aspx?ID={0}" />
</Columns>
<RowStyle BackColor="#EFF3FB" />
<EditRowStyle BackColor="#2461BF" />
<SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
<PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
<HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
<AlternatingRowStyle BackColor="White" />
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
SelectCommand="SELECT * FROM [Table1] ORDER BY [utente], [genere], [autore]" ConflictDetection="CompareAllValues" DeleteCommand="DELETE FROM [Table1] WHERE [chiave] = @original_chiave AND [titolo] = @original_titolo AND [autore] = @original_autore AND [genere] = @original_genere AND [utente] = @original_utente AND [cercooffro] = @original_cercooffro" InsertCommand="INSERT INTO [Table1] ([titolo], [autore], [genere], [utente], [cercooffro]) VALUES (@titolo, @autore, @genere, @utente, @cercooffro)" OldValuesParameterFormatString="original_{0}" UpdateCommand="UPDATE [Table1] SET [titolo] = @titolo, [autore] = @autore, [genere] = @genere, [utente] = @utente, [cercooffro] = @cercooffro WHERE [chiave] = @original_chiave AND [titolo] = @original_titolo AND [autore] = @original_autore AND [genere] = @original_genere AND [utente] = @original_utente AND [cercooffro] = @original_cercooffro">
<DeleteParameters>
<asp:Parameter Name="original_chiave" Type="Int32" />
<asp:Parameter Name="original_titolo" Type="String" />
<asp:Parameter Name="original_autore" Type="String" />
<asp:Parameter Name="original_genere" Type="String" />
<asp:Parameter Name="original_utente" Type="String" />
<asp:Parameter Name="original_cercooffro" Type="String" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="titolo" Type="String" />
<asp:Parameter Name="autore" Type="String" />
<asp:Parameter Name="genere" Type="String" />
<asp:Parameter Name="utente" Type="String" />
<asp:Parameter Name="cercooffro" Type="String" />
<asp:Parameter Name="original_chiave" Type="Int32" />
<asp:Parameter Name="original_titolo" Type="String" />
<asp:Parameter Name="original_autore" Type="String" />
<asp:Parameter Name="original_genere" Type="String" />
<asp:Parameter Name="original_utente" Type="String" />
<asp:Parameter Name="original_cercooffro" Type="String" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="titolo" Type="String" />
<asp:Parameter Name="autore" Type="String" />
<asp:Parameter Name="genere" Type="String" />
<asp:Parameter Name="utente" Type="String" />
<asp:Parameter Name="cercooffro" Type="String" />
</InsertParameters>
</asp:SqlDataSource>
<asp:LoginName ID="LoginName1" runat="server" Style="z-index: 102; left: 436px; position: absolute;
top: 136px" />
</div>
</form>
</body>
</html>
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
gio 10 mag 2007 - 16:01
>però credo anche di stare facendo qualche errore madornale di
>impostazione e perciò ecco qui tutto il codice. ti prego : poche
>pernacchie !
>
>Protected Sub GridView1_SelectedIndexChanged(ByVal sender As
>Object, ByVal e As System.EventArgs)
> If "A" = "A" Then
> Response.Redirect("Login.aspx")
> Else
> Response.Redirect("details.aspx")
> End If
> End Sub
>
quell' "A" = "A", lo hai messo per prova in base al post che ti ho illustrato io prima?
utilizza un test utile, comunque sia.. così con "A" = "A" deve per forza andare alla login.aspx..
se va sulla details, è probabile che sulla login.aspx ci sia una ulteriore redirect verso la detail..
ma entra più in profondo con il test. Controlla se effettivamente entri nell'else o nell'if..
altrimenti non riesci a capire..
invece di una response.redirect, utilizza la response.write.. e vedi che succede..
per la FormsAuth.. cerca su msdn.. trovi tutti gli esempi che vuoi
Alx81 =)
http://blogs.dotnethell.it/suxstellino
tdj
Profilo
| Newbie
40
messaggi | Data Invio:
gio 10 mag 2007 - 16:25
non voglio rompere ulteriormente. continuo a studiare. ti assicuro prò che la mia pagina di login è "pura" : c'è solo quanto "scritto" via VWD. io non ci ho messo proprio le manine.
l'unica conferma che ti chiedo : quell'IF messo lì (Protected Sub GridView1_SelectedIndexChanged) è nel posto giusto ?
è quello "il momento" in cui io clicco sull'hyperlink ?
thanks !
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
gio 10 mag 2007 - 16:37
>non voglio rompere ulteriormente. continuo a studiare. ti assicuro
>prò che la mia pagina di login è "pura" : c'è solo quanto "scritto"
>via VWD. io non ci ho messo proprio le manine.
>
>l'unica conferma che ti chiedo : quell'IF messo lì (Protected
>Sub GridView1_SelectedIndexChanged) è nel posto giusto ?
>è quello "il momento" in cui io clicco sull'hyperlink ?
>
>thanks !
no, quello lo hai quando cambi l'indice selezionato sulla gridview..
per l'hyperlink column devi gestire l'evento rowcommand..
Alx81 =)
http://blogs.dotnethell.it/suxstellino
tdj
Profilo
| Newbie
40
messaggi | Data Invio:
lun 14 mag 2007 - 11:46
lo dovevo mettere qui !
Protected Sub GridView1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs)
If (Request.IsAuthenticated = False) Then
Server.Transfer("Login.aspx")
Else
Server.Transfer("details.aspx?original_chiave")
End If
End Sub
ora funziona ! adesso però come faccio a fagli leggere il parametro (original_chiave) nella pagina chiamata (details.aspx) ?
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !