har lite problem med att få detta att funka, om datumet ligger framåt i tiden så kommer inga formulär fram som det ska men har ingen ändrat så står det 0000-00-00 i db och då ska man kunna ändra men det gör det inte
har man ändrat och datumet är satt 6 mån framåt så ska man kunna ändra
står det 0000-00-00 som datum så ska man kunna ändra
<%Set settings=objConn.Execute("Select * From tblUsers WHERE userID="& UserID)
if settings("usrChange") > Date() or settings("usrChange") = "0000-00-00" then%>
Nytt användarnamn:
<input type="text" name="txtUsername" value="" class="textbox">
<input class="button" type="submit" value="Byt användarnamn">
<%else%>
Nästa byte kan ske tidigast <%=settings("usrChange")%>
<%end if%>
1. Vad är usrChange för något en sträng eller datum? se till att du gemför rätt datatyp.
2. När en användare nu har sparat ett nytt användarnamn, kommer den alltid sparas med ett datum större än sig själv?
3. Vad är det som inte fungera?
usrchange är ett datum, när en användare byter namn så sparas ett datum som är 6 månader in i framtiden från dagens datum, det som inte fungerar är att formuläret inte kommer fram när en användare inte har genomfört nåt byte eller datumet redan är passerat och ett nytt byte är tillåtet
"0000-00-00" är inget datum, vad ger settings("usrChange") när du vill att det skall vara 0000-00-00? CStr() om du skall kolla datatypen sträng, datum är inte en sträng.
men fortfarande: ett datum är inte en sträng typkonvertera det till en sträng, ett datum är inte ett tal cINT är c = convert, gör om till tal, vilket du inte försöker gemföra, du försöker gemföra en sträng med ett datum.
"0000-00-00" är inget datum, vad ger settings("usrChange") när du vill att det skall vara 0000-00-00? CStr() om du skall kolla datatypen sträng, datum är inte en sträng.
menar du
if CStr(settings("usrChange")) > Date() or CStr(settings("usrChange")) = "0000-00-00" then%>
så får jag
Microsoft VBScript runtime error '800a005e'
Invalid use of Null: 'CStr'
/settings/change/personal.asp, line 148
och
if settings("usrChange") > CStr(Date()) or settings("usrChange") = CStr("0000-00-00") then%>
ger samma resultat som innan, ingenting