Avatar billede dj_uncas Nybegynder
21. marts 2005 - 13:34 Der er 5 kommentarer og
1 løsning

Vælge fremtidige/tidligere begivenheder fra db

Hej alle

Jeg er i gang med at lave en kalender i tabelformat, hvor man via en
fropdownlist skal kunne vælge at ville se fremtidige, tidligere eller alle
begivenheder. Det virker dog ikke!
Min kode ser således ud:

public string strWhere;

void getEvents(string strWhere)
{
  if (Page.IsPostBack)
  {
switch(view.SelectedItem.Value)
{
  case "fremtidige":
    strWhere = "dato > Now()";
    break;
  case "tidligere":
    strWhere = "dato < Now()";
    break;
  case "alle":
    strWhere = "dato < Now() Or dato > Now()";
    break;
  default:
    strWhere = "dato > Now()";
    break;
  getEvents(strWhere);
}
  }
  else
  {
strWhere = "dato > Now()";
  }
  MySQL DBconn = new MySQL();
  RecordSet rs = DBconn.Execute("Select id,overskrift,dato From kalender
Where " + strWhere + " Order By dato asc");
  kalender.DataSource = rs.dr;
  kalender.DataBind();
  rs.Close();
  DBconn.Close();
}

void Page_Load()
{
if (!(Page.IsPostBack))
{
  strWhere = "dato > Now()";
}
getEvents(strWhere);
}

Jeg får ikke nogen fejlmeddelser, men siden ser ud som før postbacket.. Hvad
kan der mon være galt?
Avatar billede jpvj Nybegynder
21. marts 2005 - 14:09 #1
strWhere = "dato < Now() Or dato > Now()";

Er ikke helt korrekt...

strWhere = "dato <= Now() Or dato > Now()";

Men det ville nok være lidt pænere at sætte den til den tomme streng, og så teste på strWhere før du genererer din select. Hvis strWhere er tom, så skal der slet ikke være en WHERE clause i dit SELECT kald...

Vedr. din fejl -
Avatar billede jpvj Nybegynder
21. marts 2005 - 14:11 #2
nu er jeg ikke ekspert i .NET programmering, men bliver din strWhere "kørt med rundt"?

... eller sagt på en anden måde: Test for værdien af strWhere lige inden
getEvents(strWhere);
Avatar billede dj_uncas Nybegynder
22. marts 2005 - 19:55 #3
Jeg tror faktisk, efter jeg har prøvet en masse ting, at mit problem ligger i min dropdownlist control. Den har en AutoPostBack="True", og det kan da godt være det er det der ikke giver den forventede virkning?
Avatar billede jpvj Nybegynder
23. marts 2005 - 08:58 #4
PostBack var udtrykket... har været væk fra .NET kodning i ca. 2 år nu, så det ruster desværre hurtigt... :-(

Prøv at udskrive view.SelectedItem.Value og kontroller samtidig at du kommer ind i din postback del af koden...
Avatar billede dj_uncas Nybegynder
23. marts 2005 - 19:29 #5
Så fik jeg den til at virke! Point?
Avatar billede dj_uncas Nybegynder
15. april 2005 - 14:01 #6
Hmm, det virker, men det var egentlig min egen løsning der fik det til at virke.. Jeg lukker her..
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