Robert: 1 auf den Inhalt einer Variablen addieren

Beitrag lesen

Hallo Sascha,

  1. Der erste Fehler war nicht das Aufaddieren der Variablen, sondern der Zugriff auf ein leeres RecordSet-Objekt.
  1. Bei Verwendung von Integern ist eine Umschließung der Varibalen mit Hochkommata (') Unsinn. Das gilt für Strings.

ok

  1. Da dein RecordSet leer ist (und wir das ja abfangen) wird deine Variable Voting_gut_neu gar nicht gesetzt, existiert also gar nicht.

Also wird an die DB folgendes übergeben:
UPDATE Voting SET Voting_gut= WHERE Download='Lena'

soweit mir auch klar

Das erklärt die Fehlermeldung. Es wird ein Parameter erwartet und nicht übermittelt.

Also: den oberen Block erweitern
<%
if NOT RS3.BOF AND NOT RS3.EOF Then
if isNumeric(RS3("Voting_gut")) Then Voting_gut_neu = CInt(RS3("Voting_gut")) + 1
else
Voting_gut_neu = 0 ' oder irgendein Startwert
end if
%>

hmmm....

Du kannst auch vorher Voting_gut_neu = 0 setzen. Falls RS3 nicht leer ist aber auch nicht numerisch ist Voting_gut_neu auf jeden Fall mit 0 deklariert.

RS3 ist nicht leer ("123") in der DB ist genug numerischer Wert; selbst das was geschrieben werden soll ist ja numerisch.

Ansonsten kannst du folgendes ausprobieren:
gib den strSQL einfach mal mit Response.Write aus (ohne in auszuführen). Dann siehst du, was an die DB geschickt wird.
Oder schreib den sql-String mal händisch:

UPDATE Voting SET Voting_gut=1 WHERE Download='Lena'

Händisch gehts ja schon seit heute morgen 8:00 Uhr ;) aber ich will ja net, dass alle für gut voten müssen *g*

Robert