ASP-FastBoard - Demo/Support-Forum
Forum anmelden / register Board
SearchSearch CalendarCalendar GalleryGalleryAuction-PortalAuctions GlobalGlobal Top-ListTopMembersMembers StatisticsStats
get your RSS-Feed
Language/Sprache:  Admin  
 Login: ChatChat (0) new User-MapUser-Mapsend Passwordsend Password RegisterRegister

Forum Overview » Homepagetools - Support » ASP-FastBoard (deutsch) » while funktioniert nur bedingt...
Pages: (1) [1] »
Registration necessaryRegistration necessary
while funktioniert nur bedingt...
torsten_156no Access no Access first Post cannot be deleted -> delete the whole Topic 
Group: User
Level: Neuling


Posts: 2
Joined: 4/4/2008
IP-Address: saved
offline


Hallo Leute,
ich bin recht neu in ASP und habe deshalb einige Verständnisprobleme.
Ich habe eine Site, auf der man in einem Textfeld eine ID und in einem anderen Textfeld ein Datum angibt. Auf dieser Seite gibt es auch eine Tabelle, die eine Spalte 'ID' hat. Der User soll eine ID angeben, die natürlich in der Tabelle steht und ein Datum. Mit einem klick auf einem Button wird das Datum auf Gültigkeit und die ID auf Vorhandensein in der Tabelle geprüft.
Jetzt zu meinem Problem:
Wenn ich eine falsche ID angebe und ein korrektes Datum, schreibt er das Datum in die DB (zu der angegebenen ID).Er mekkert NICHT!!!
Wenn ich eine korrekte ID und ein falsches Datum angebe, mekkert er über das falsche Datum (soll er ja auch).
Wenn ich jetzt aber eine falsche ID UND ein falsches Datum angebe, mekkert er über BEIDES (ist ja auch i.O.).

Er springt irgendwie nur dann in die Abfrage, wenn ein falsches Datum angegeben wurde??? Warum

Hier mein Codeauszug:
<%
If Request.Form("BTsenden") = "Senden" Then

'hier wird die ID auf Gültigkeit geprüft
Offene_Massnahmen.MoveFirst()
Dim id_vorhanden
id_vorhanden = 0
Dim id_Feld
Do While (NOT Offene_Massnahmen.EOF)
id_Feld = Offene_Massnahmen.Fields.Item("ID").Value
if id_Feld = Cint(Request.Form("id_text")) then
id_vorhanden = 1
end if
Offene_Massnahmen.MoveNext()
Loop
if id_vorhanden = 0 then
response.Write("<script type=""text/javascript"">id_prüfen();</script>")
end if


'Datum formatieren - Punkt wird zum Bindestrich
Dim vorher
vorher = Request.Form("tf_datum")
Dim arr
arr = split(vorher,".")
Dim nachher
nachher = arr(2) & "-" & arr(1) & "-" & arr(0)

If IsDate( nachher ) Then
'und nochmal formatieren: MMTTJJJJ mit /-Trennzeichen
Dim dat
dat = split(nachher,"-")
Dim datum
datum = dat(2) & "-" & dat (1) & "-" & dat(0)
Session("id_erledigt") = Request.Form("id_text")
Session("datum_erledigt") = datum
Response.Redirect("Erledigt_melden.asp")
Else
response.Write("<script type=""text/javascript"">datum_prüfen();</script>")
End if

End if
%>




4/4/2008 10:47:03 AM   
Cyberlordno Access no Access no Access 
Group: Administrator
Level: heavy Spammer


Posts: 3610
Joined: 3/11/2004
IP-Address: saved
offline


Hallo Torsten,

wie greifst du auf die Datenbank zu?
Ich würde das so lösen:

'Die Datenbank-Verbindung mit ADODB-Connection öffnen (hier ist es zB für MySQL):
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open = "DRIVER={MySQL ODBC 3.51 Driver}; Server=localhost; Database=testdb; User Id=root; Password=123;"

' wenn eine Eingabe erfolgte:
If Request.Form("BTsenden") = "Senden" Then
Set RS = conn.execute("SELECT * FROM Offene_Massnahmen WHERE id = '"& int(request.form("id")) &"'")
' wenn id nicht in der Datenbank vorhanden ist:
If RS.eof Then
response.write "ID nicht vorhanden!"
' wenn Datum falsch:
Elseif NOT IsDate(nachher) Then
response.write "falsches Datum!"
Else
response.write "Eingabe OK!"
End If
' wenn noch keine Eingabe erfolgte, Formular anzeigen
Else
...
End If


lg


Forum-Changelog || zu unseren Angeboten
4/7/2008 7:07:33 PM    
torsten_156no Access no Access no Access 
Group: User
Level: Neuling


Posts: 2
Joined: 4/4/2008
IP-Address: saved
offline


Hallo,
ich habe es nun wie folgt gemacht:
1. auf korrektes Datum prüfen --> var Datum = 1
2. auf korrekte ID prüfen --> var id = 1
3. dann beim 'senden' mittels if-then-Anweisung prüfen, ob datum =1 & id = 1

So funktioniert es jetzt auch...

Vielen Dank...


4/8/2008 1:44:08 PM   
Registration necessaryRegistration necessary
Pages: (1) [1] »
all Times are GMT +1:00
Thread-Info
AccessModerators
Reading: all
Writing: all
Group: general
Cyberlord
Forum Overview » Homepagetools - Support » ASP-FastBoard (deutsch) » while funktioniert nur bedingt...

.: Script-Time: 0.137 || SQL-Queries: 6 || Active-Users: 3,643 :.
Powered by ASP-FastBoard HE v0.8, hosted by cyberlord.at