Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с авторизацией на Forms 
V
    Опции темы
Sergusha
Дата 31.10.2007, 16:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 14.6.2006

Репутация: нет
Всего: нет



В приложении реализована авторизация и аутентификация с помощью Forms. На одной из страниц данные выводятся в GridView, в нем есть столбец с кнопками. При нажатии на кнопку с помощью javascript открывается модальное окно в котором пользователь может корректировать данные и две кнопки, одна для сохранения изменений, а другая для выхода без изменений. При нажатии на любую кнопку открывается браузер с окном аутентификации, действия предусмотренные в обработчике не отрабатываются. Подскажите пожалуйста каким образом выполнить при нажатии на одну кнопку  закрытие формы, а на другую выполнять действия для фиксации изменений.

PM MAIL   Вверх
Servena
Дата 31.10.2007, 19:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 251
Регистрация: 24.7.2007
Где: Днепропетровск

Репутация: 4
Всего: 14



Код давай, тогда кто нибудь и поможет. А так, можно сказать, например, что ты где-то допустил ошибку? Но где? Никто не знает, потому что нет кода!
PM MAIL   Вверх
Sergusha
Дата 1.11.2007, 11:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 14.6.2006

Репутация: нет
Всего: нет



Вот разделы web.config посвященные аутентификации и авторизации:

Код

<authentication mode="Forms">
        <forms name=".ASPXAUTH" loginUrl="login.aspx" defaultUrl="MainForm.aspx"></forms>
</authentication>

<authorization>
        <deny users="?"/>
        <allow users="*"/>
</authorization>


Вот метод где вызывается модальное окно:

Код


protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
        string i = GridView1.Rows[e.NewEditIndex].Cells[2].Text;

        string script = "<script language =JavaScript>";
        script += "window.showModalDialog('parkTypes.aspx?id=" + i + "', 'Типы маршрутов', 'dialogHeight: 200px;" +
        "dialogWidth: 400px; dialogTop: 150px; dialogLeft: 150px; edge: Raised; center: Yes; status: Yes;')";
        script += "</script>";
        
        ClientScript.RegisterStartupScript(this.GetType(), "OpenEdit", script);       
}



Старница модального окна:

HTML
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="parkTypes.aspx.cs" Inherits="Ref_parkTypes" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server" style=" text-align:center">
    <div>
    <asp:Label ID="lblpageName" runat="server" Text="Подробная информация о маршрутах" Font-Bold="True"></asp:Label>
    </div>
    <br />
    <div>
        <asp:Label ID="lblID" runat="server" Text="ID:  "></asp:Label>
        &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;
        &nbsp;<asp:TextBox ID="TextBox1" runat="server" Enabled="False" Width="100px"></asp:TextBox><br />
        <asp:Label ID="lblName" runat="server" Text="Название: "></asp:Label>
        &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
        <asp:TextBox ID="TextBox2" runat="server" Width="100px"></asp:TextBox><br />
        <asp:Label ID="lblshortName" runat="server" Text="Краткое название: "></asp:Label>
        <asp:TextBox ID="TextBox3" runat="server" Width="100px"></asp:TextBox>
        <br />
        <br />
        <asp:Button ID="btnSave" runat="server" Text="Сохранить" />
        &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
        <asp:Button ID="btnExit" runat="server" Text="Выйти" /></div>
    </form>
</body>
</html>


Файл поддержки:

Код


using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

using DataAccessService;

public partial class Ref_parkTypes : System.Web.UI.Page
{
    Dataaccessservice proxy;
    DataSet ds;
    
    protected void Page_Load(object sender, EventArgs e)
    {
        proxy = new Dataaccessservice();

        if (Request.QueryString.Count > 0)
        {
            ds = proxy.GetParkTypeWithParam("id=" + Request.QueryString["id"]);
            TextBox1.Text = ds.Tables[0].Rows[0][0].ToString();
            TextBox2.Text = ds.Tables[0].Rows[0][1].ToString();
            TextBox3.Text = ds.Tables[0].Rows[0][2].ToString();
        }       
        
    }   
    
    protected void btnSave_Click(object sender, EventArgs e)
    {
        proxy.UpdateParkType(int.Parse(TextBox1.Text), TextBox2.Text, TextBox3.Text);
    }
    protected void btnExit_Click(object sender, EventArgs e)
    {

    }
}


При нажатии на кнопки btnExit или btnSave открывается новый экземпляр браузера со страницей аутентификации.


Это сообщение отредактировал(а) Sergusha - 1.11.2007, 11:21
PM MAIL   Вверх
Servena
Дата 1.11.2007, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 251
Регистрация: 24.7.2007
Где: Днепропетровск

Репутация: 4
Всего: 14



У тебя вроде к кнопкам не привязаны события.
Код

<asp:Button ID="btnSave" runat="server" Text="Сохранить" />


Впиши туда OnClick="btnSave_Click"
PM MAIL   Вверх
Sergusha
Дата 1.11.2007, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 14.6.2006

Репутация: нет
Всего: нет



Цитата(Servena @ 1.11.2007,  17:16)
У тебя вроде к кнопкам не привязаны события.
Код

<asp:Button ID="btnSave" runat="server" Text="Сохранить" />


Впиши туда OnClick="btnSave_Click"

На самом деле привязаны, я просто когда на форум постил правил эту страницу, видимо запостил не доконца исправленный вариант smile 

Кнопки выглядят вот так:

HTML
<asp:Button ID="btnSave" runat="server" Text="Сохранить" OnClick="btnSave_Click" />
<asp:Button ID="btnExit" runat="server" Text="Выйти" OnClick="btnExit_Click" />



Это сообщение отредактировал(а) Sergusha - 1.11.2007, 17:28
PM MAIL   Вверх
Sergusha
Дата 1.11.2007, 18:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 14.6.2006

Репутация: нет
Всего: нет



Проблема была в следующем: Окно модальное открывалось на клиенте, кнопки в окне серверные, при нажатие происходил postback и эта форма открывалась еще раз в отдельном окне, почему открывалось окно для аутентификации пользователя мне правда так и непонятно. Я заменил кнопки на html и все действия стал выполнять на клиенте. Проблема решилась. Всем спасибо за помощь и участие.
PM MAIL   Вверх
Servena
Дата 1.11.2007, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 251
Регистрация: 24.7.2007
Где: Днепропетровск

Репутация: 4
Всего: 14



Ага.
Тогда у меня вызывает большое подозрение код:
Код

 string script = "<script language =JavaScript>";
        script += "window.showModalDialog('parkTypes.aspx?id=" + i + "', 'Типы маршрутов', 'dialogHeight: 200px;" +
        "dialogWidth: 400px; dialogTop: 150px; dialogLeft: 150px; edge: Raised; center: Yes; status: Yes;')";
        script += "</script>";


Создается впечатление, что ИИС не знает о вызове этой странички.
Сделай это "модальное окно" на той же страничке, с которой ты его вызываешь в виде Дива, только не видимого.
А при нажатии - в Джаваскрипте сделай его видимым. 

Попробуй так.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Любитель
Mymik
mr.DUDA

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Любитель, Mymik, mr.DUDA.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка под ASP.NET | Следующая тема »


 




[ Время генерации скрипта: 0.0756 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.