2013-08-23 2 views
0

이 코드에서 서버 쪽에서 값을 설정하려고합니다. 티켓 번호를 입력 할 수있는 텍스트 상자가 있고 티켓 유효성이 검사되고 활성화되면이 particulare 티켓의 used 속성을 true로 변경해야합니다. 어떻게 서버 측에서 데이터 값을 변경합니까?

는이 코드가 있습니다

 TicketBLL Tickets = new TicketBLL(); 
     ClientDeviceBLL Devices = new ClientDeviceBLL(); 


     if (String.IsNullOrEmpty(txtTicket.Text)) 
     { 
      CVUsed.Visible = false; 
      CVUsed.Enabled = false; 
      CVMember.Enabled = false; 
      CVMember.Visible = false; 
      CVInValid.Enabled = false; 
      CVInValid.Visible = false; 
      lblMessages.Text = MessageFormatter.GetFormattedErrorMessage("You can login using a Ticket Number."); 
      txtTicket.Focus(); 
     } 
     else 
     { 
      Ticket = Tickets.GetTicketByTicketNumber(txtTicket.Text); 
      ////// we must enter the value of the correct SN and the Client ID    
      Device = Devices.GetClientDeviceBySN(txtSN.Text , Convert.ToInt32(txtClientID.Text)); 

      if (Ticket != null) 
      { 
       //Correct Ticket number 
       CVInValid.Visible = false; 
       CVInValid.Enabled = false; 

       if (Ticket.Used == true) 
       { 
        //ticket was used, internet forbidden 
        CVUsed.Visible = true; 
        CVUsed.Enabled = true; 
        CVMember.Enabled = false; 
        CVMember.Visible = false; 
        CVUsed.IsValid = false; 
       } 
       else 
       { 
        //if exists but not used, Ticket accepted 
        //check if device is a member if client divices 
        if (Device != null) 
        { 
         //internet access garanteed 
         CVUsed.Visible = false; 
         CVUsed.Enabled = false; 
         CVMember.Enabled = false; 
         CVMember.Visible = false; 
         CVUsed.IsValid = true; 
         CVMember.IsValid = true; 

         //here is my error. 
         //ticket.used is not changing in the database so the next 
         //time he enters the same ticket number it would go through 
         //again. 

         Ticket.Used = true;        
         Response.Redirect("http://www.google.com"); 
        } 
        else 
        { 
         //device not member, internet access forbidden 
         CVMember.Enabled = true; 
         CVMember.Visible = true; 
         CVUsed.Visible = false; 
         CVUsed.Enabled = false; 
         CVUsed.IsValid = true; 
         CVMember.IsValid = false; 
        } 
       } 
      } 
      else 
      { 
       //Ticket Number is not valid 
       CVUsed.Visible = false; 
       CVUsed.Enabled = false; 
       CVMember.Enabled = false; 
       CVMember.Visible = false; 
       CVInValid.Enabled = true; 
       CVInValid.Visible = true; 
       CVInValid.IsValid = false;     
      } 
     } 

은 내가 어떻게 자동으로 데이터베이스에 ticket.used 값을 업데이트 할 수 있습니다!

+2

데이터베이스 호출로 티켓 정보를 업데이트 할 수있는 곳은 어디입니까? – oleksii

+1

"데이터베이스에 값을 삽입하는 방법은 무엇입니까?" – Dave

+0

자동으로 실행할 수 없습니다. 수동으로해야합니다. –

답변

0

데이터베이스에 연결하지 않고 ticket.used 값을 업데이트 할 수 없습니다. 데이터베이스에 연결하고 업데이트하는 방법을 알고 싶으면 직접 쿼리의 저장 프로 시저를 사용하여 작업하십시오. this을 살펴보십시오.

관련 문제