hallo,
habe hier ein seltsames problem mit meiner datenbank verbinding.
seltsam deshalb, weil es bis gestern noch problemlos lief und die
datenbankverbindung eigentlich auch in einer include steht die ich
nicht angefasst habe.
wenn ich jetzt meine seite aufrufe dann geht es zwar manchmal, aber
sobald mehrere abfragen pro seite stattfinden geht es nicht mehr:
Fehlertyp:
(0x80004005)
Unbekannter Fehler
er zeigt dann auf die zeile die die abfrage ausführen soll. der
sql-befehl ist auch korrekt, wenn ich ihn in access ausführe bekomme
ich das gewünscht ergebniss. kann mir einer sagen was ich falsch
mache?
hier das conn.objekt:
straccesspath=server.mappath("../db/test.mdb") 'absoluter pfad zur
mdb
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source="&straccesspath&";"
und hier der fragliche code:
'response.write vsvar&" - vsvar"
strzahlung="SELECT V.Versand_ID, V.Name, V.Versandkosten, V.Rabatt,
V.Beschreibung FROM Versand v INNER JOIN Laender l ON V.Zone = L.Zone
WHEREÂ l.Land_ID="&aland&"Â ANDÂ v.Min_Preis<"&warentotal&"Â AND
v.Max_Preis>"&warentotal&"Â ORDERÂ BYÂ v.versandkosten"
response.write strzahlung
SETÂ Zahlung=conn.EXECUTE(strzahlung)
'prüfen ob vid gültige zahlungsmöglichkeit für dieses land ist
(falscher wert wenn kunde land ändert)
validvid=false
strcheckvid="SELECT Versand_ID FROM AB_Versandlaender WHERE
Versand_ID="&vid&"Â ANDÂ LAND_ID="&aland
'response.write strcheckvid
SETÂ checkvid=conn.EXECUTE(strcheckvid)
DOÂ WHILEÂ NOTÂ checkvid.EOF
validvid=true
checkvid.MOVENEXT
LOOP
response.write "<tr>"
'Zahlungsmöglichkeiten ausgeben und ggf. erste ankreuzen
i=0
DOÂ WHILEÂ NOTÂ zahlung.EOF
IFÂ (vid+0=zahlung("Versand_id")+0)Â ORÂ (validvid=false)Â THEN
validvid=true
%>
<td class="katalog" style="border-right:1px solid #483628;"><input
type="Radio"Â name="vid"Â value="<%=zahlung("Versand_id")%>"
checked></td>
<%ELSE%>
<td class="katalog" style="border-right:1px solid #483628;"><input
type="Radio"Â name="vid"Â value="<%=zahlung("Versand_id")%>"></td>
<%ENDÂ IF%>
<td class="katalog" style="border-right:1px solid
#483628;"><%=zahlung("Name")%></td>
<td class="katalog-r" style="border-right:1px solid
#483628;"><%=REPLACE(FORMATCURRENCY(zahlung("Versandkosten")),"€",
"EUR")%></td>
<td class="katalog-r" style="border-right:1px solid
#483628;"><%=REPLACE((REPLACE(zahlung("Rabatt"), "0", "-")&" %"), "-
%", " - ")%></td>
<td class="katalog"><%=zahlung("Beschreibung")%></td>
</tr>
<%
i=i+1
zahlung.MOVENEXT
LOOP
zur erklärung: es geht darum, das immer ein punkt im formular
"checked" ist, sonst bekomme ich auf der nächsten seite ein problem.
"vid" ist die aktuelle versand-idnummer in der datenbank, darf muss
ebenfalls gültig sein.
vielen dank im vorraus!
habe hier ein seltsames problem mit meiner datenbank verbinding.
seltsam deshalb, weil es bis gestern noch problemlos lief und die
datenbankverbindung eigentlich auch in einer include steht die ich
nicht angefasst habe.
wenn ich jetzt meine seite aufrufe dann geht es zwar manchmal, aber
sobald mehrere abfragen pro seite stattfinden geht es nicht mehr:
Fehlertyp:
(0x80004005)
Unbekannter Fehler
er zeigt dann auf die zeile die die abfrage ausführen soll. der
sql-befehl ist auch korrekt, wenn ich ihn in access ausführe bekomme
ich das gewünscht ergebniss. kann mir einer sagen was ich falsch
mache?
hier das conn.objekt:
straccesspath=server.mappath("../db/test.mdb") 'absoluter pfad zur
mdb
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source="&straccesspath&";"
und hier der fragliche code:
'response.write vsvar&" - vsvar"
strzahlung="SELECT V.Versand_ID, V.Name, V.Versandkosten, V.Rabatt,
V.Beschreibung FROM Versand v INNER JOIN Laender l ON V.Zone = L.Zone
WHEREÂ l.Land_ID="&aland&"Â ANDÂ v.Min_Preis<"&warentotal&"Â AND
v.Max_Preis>"&warentotal&"Â ORDERÂ BYÂ v.versandkosten"
response.write strzahlung
SETÂ Zahlung=conn.EXECUTE(strzahlung)
'prüfen ob vid gültige zahlungsmöglichkeit für dieses land ist
(falscher wert wenn kunde land ändert)
validvid=false
strcheckvid="SELECT Versand_ID FROM AB_Versandlaender WHERE
Versand_ID="&vid&"Â ANDÂ LAND_ID="&aland
'response.write strcheckvid
SETÂ checkvid=conn.EXECUTE(strcheckvid)
DOÂ WHILEÂ NOTÂ checkvid.EOF
validvid=true
checkvid.MOVENEXT
LOOP
response.write "<tr>"
'Zahlungsmöglichkeiten ausgeben und ggf. erste ankreuzen
i=0
DOÂ WHILEÂ NOTÂ zahlung.EOF
IFÂ (vid+0=zahlung("Versand_id")+0)Â ORÂ (validvid=false)Â THEN
validvid=true
%>
<td class="katalog" style="border-right:1px solid #483628;"><input
type="Radio"Â name="vid"Â value="<%=zahlung("Versand_id")%>"
checked></td>
<%ELSE%>
<td class="katalog" style="border-right:1px solid #483628;"><input
type="Radio"Â name="vid"Â value="<%=zahlung("Versand_id")%>"></td>
<%ENDÂ IF%>
<td class="katalog" style="border-right:1px solid
#483628;"><%=zahlung("Name")%></td>
<td class="katalog-r" style="border-right:1px solid
#483628;"><%=REPLACE(FORMATCURRENCY(zahlung("Versandkosten")),"€",
"EUR")%></td>
<td class="katalog-r" style="border-right:1px solid
#483628;"><%=REPLACE((REPLACE(zahlung("Rabatt"), "0", "-")&" %"), "-
%", " - ")%></td>
<td class="katalog"><%=zahlung("Beschreibung")%></td>
</tr>
<%
i=i+1
zahlung.MOVENEXT
LOOP
zur erklärung: es geht darum, das immer ein punkt im formular
"checked" ist, sonst bekomme ich auf der nächsten seite ein problem.
"vid" ist die aktuelle versand-idnummer in der datenbank, darf muss
ebenfalls gültig sein.
vielen dank im vorraus!