Toon posts:

[ASP+SQL]Insert into wil niet (meer?)

Pagina: 1
Acties:

Verwijderd

Topicstarter
Dit is heel raar...
Ik gebruik dezelfde webspace: brinkster
Ik gebruikt dezelfde database: office 2000 access .mdb 's
En ook dezelfde sql code...
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<!--#include file="md5.asp" -->
<%
pwd=Request.Form("password")
password = md5(pwd)
%>
<%

username=Request.Form("username")

set conn=Server.CreateObject("ADODB.Connection")
conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.mappath("db/XXX.mdb")
conn.Open

sql="INSERT INTO users (username,password) VALUES "
sql=sql & "('" & username & "','" & password & "')"

conn.Execute sql,recordsaffected
if err <> 0 then
    Response.Write("You do not have permission to update this database")
else 
    Response.Write("Kip " & Recordsaffected & " record added")
end if

conn.close
%>

Maar hij blijft een http 500 error geven, het encrypen van het password lukt gewoon goed!!
Maar bij de INSERT INTO string loopt ie vast :'(

database ziet er als volgt uit:
code:
1
2
3
4
5
6
Tabel: users
+------+---------+-----------+
| Id   |username | password  |
+------+---------+-----------+
| 1    |iets     | encrypted |  
+------+---------+-----------+

Bij mijn andere scripts die ik op brinkster heb staan gaat alles met dezelfde code dus gewoon WEL goed!

En het form is ook goed, want het encrypen van het password in md5 gaat gewoon, en de username wordt ook gelezen, alleen het in de database zetten gaat Fout :'(

  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 24-07 10:48
Zet even bij tools->options->advanced nogwat de friendly http error messages uit..dan kan je lezen wat de fout is.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


Verwijderd

Topicstarter
Op vrijdag 28 juni 2002 10:49 schreef Nutcaze het volgende:
Zet even bij tools->options->advanced nogwat de friendly http error messages uit..dan kan je lezen wat de fout is.
Wat ik al dacht:
code:
1
2
3
4
5
Microsoft JET Database Engine error '80040e14' 

Syntax error in INSERT INTO statement. 

/sebl/new.asp, line 16

Het script ziet er nu zo uit
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<!--#include file="md5.asp" -->
<%
password = md5(Request.Form("password"))
username = Request.Form("username")

'Response.Write username
'Response.Write password

set conn=Server.CreateObject("ADODB.Connection")
conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.mappath("db/XXX.mdb")
conn.Open

sql="INSERT INTO users (username,password) VALUES "
sql=sql & "('" & username & "','" & password & "')"

conn.Execute sql,recordsaffected
if err <> 0 then
    Response.Write("You do not have permission to update this database")
else 
    Response.Write("Kip " & Recordsaffected & " record added")
end if

conn.close
%>

Kan het zijn dat de vorm van het password niet ge accepteerd wordt?
De vorm is ongeveer zo:
c669aa76916ed580e4d2b712396ee606

  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 24-07 10:48
Zet de conn.execute even onder commentaar en schrijf daarvoor in de plaats de var sql eens weg naar het scherm.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 15:22

TeeDee

CQB 241

misschien de lengte van je veld?

Heart..pumps blood.Has nothing to do with emotion! Bored


Verwijderd

Topicstarter
Op vrijdag 28 juni 2002 10:58 schreef Nutcaze het volgende:
Zet de conn.execute even onder commentaar en schrijf daarvoor in de plaats de var sql eens weg naar het scherm.
Hoe schrijf je de sql naar het scherm
Response.Write sql?

  • j_du_pee
  • Registratie: Maart 2000
  • Laatst online: 23-09-2024

j_du_pee

du pain, du vin, du pee

probeer eens de quotes in de sql-string af te vangen:
replace(password,"'","''") (b.v.)

kaart != map && bottel != fles
Wacht op antwoord


  • whoami
  • Registratie: December 2000
  • Laatst online: 04-09 22:16
Op vrijdag 28 juni 2002 10:56 schreef slindenau het volgende:

Kan het zijn dat de vorm van het password niet ge accepteerd wordt?
De vorm is ongeveer zo:
c669aa76916ed580e4d2b712396ee606
Ik denk het niet. Hij aanziet het als een string, hij mag niet vallen over wat de inhoud van die string is.
Misschien kan het wel te maken hebben dat die string te groot is om in uw databank-veld te plaatsen.

Print anders eens uw SQL statement naar het scherm, en kijk of er geen komma's, aanhalingstekens etc teveel of te weinig in staan. Controleer ook of uw tabelnaam en velden goed geschreven zijn.

https://fgheysels.github.io/


Verwijderd

Topicstarter
Op vrijdag 28 juni 2002 10:59 schreef TeeDee het volgende:
misschien de lengte van je veld?
Nee, want in de database staat al een naam + password, met dezelfde lengte, dus dat is niet het probleem...helaas :)

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 15:22

TeeDee

CQB 241

dan nog kan ie te lang zijn voor je veld natuurlijk. (of lees ik nu totaal niet begrijpend ;))

Die md5 string is / kan toch langer zijn dan de eigenlijke waardes!

Heart..pumps blood.Has nothing to do with emotion! Bored


  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 24-07 10:48
Post de uitkomst van Response.Write sql eens.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


Verwijderd

Topicstarter
Op vrijdag 28 juni 2002 11:03 schreef Nutcaze het volgende:
Post de uitkomst van Response.Write sql eens.
Zonder execute:
code:
1
INSERT INTO users (username,password) VALUES('sebastiaan','5f6f2aad30f8c9a822ce86c45cb28233')

Met sql execute:
code:
1
2
3
4
5
6
INSERT INTO users (username,password) VALUES('sebastiaan','5f6f2aad30f8c9a822ce86c45cb28233') 
Microsoft JET Database Engine error '80040e14' 

Syntax error in INSERT INTO statement. 

/sebl/new.asp, line 18

  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 24-07 10:48
Hmmm ik heb ineens een vermoeden wat het is: verander password eens in wachtwoord zowel in de query als in de db....zal je zien dat het wel werkt.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 15:22

TeeDee

CQB 241

hehehe...

geregistreerde naam.. ;) zou kunnen idd

Heart..pumps blood.Has nothing to do with emotion! Bored


Verwijderd

Topicstarter
Op vrijdag 28 juni 2002 11:04 schreef Nutcaze het volgende:
Hmmm ik heb ineens een vermoeden wat het is: verander password eens in wachtwoord zowel in de query als in de db....zal je zien dat het wel werkt.
Mkay, dat duurt wel ff iets langer :)
Ik meld het zo!

Mja, dat doet ie idd nu wel...alleen gaat het inloggen nu fout met de nieuw aangemaakt naam, en nog wel met oude die er al stond... :?

  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 24-07 10:48
Ik zou zeggen: post het script maar weer :). Ik vermoed trouwens dat daar de query nog op password staat?

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


Verwijderd

Topicstarter
Op vrijdag 28 juni 2002 11:10 schreef Nutcaze het volgende:
Ik zou zeggen: post het script maar weer :)
Ik denk dat ik weet hoe het komt :)
Hij leest alleen de eerste waarde, en als die niet overeen komt dan zegt ie fout...ik moet em eerst door de database laten lopen, maar daar mogen jullie iets op verzinnen want da word aardig ingewikkeld:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
...
<!--#include file="md5.asp" -->
<%
if (Request.Form("username")) = "" or (Request.Form("password")) = "" then
Response.Write "Velden niet volledig ingevuld, klik <a href='Javascript:history.go(-1)'>hier</a> om terug te gaan."
else
if (Request.Form("username")) = (Rsusers("username").value) and (md5(Request.Form("password"))) = (Rsusers("wachtwoord").value) then
Response.Write "Welkom " & Request.Form("username") & "<br>Je bent nu ingelogd!"
else
Response.Write "Woei helaas...foute data!, klik <a href='Javascript:history.go(-1)'>hier</a> om terug te gaan."
end if
end if
...

Edit:
Nee die staat al op wachtwoord :)

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 15:22

TeeDee

CQB 241

als ik je goed begrijp wil je dit:
code:
1
2
3
4
5
6
7
8
9
10
11
<%
Dim wachtwoord
wachtwoord = (md5(request.form("wachtwoord"))
set rs_select = "SELECT * FROM database WHERE wachtwoord = "'&wachtwoord&'"

if rs_select.eof or rs_select.bof then
response.write " Fout... lullo! ;))" 
else
response.write "goed zo, ga verder"
end if
%>

Zomaar ff gauw uit de losse pols hoor ;)

Heart..pumps blood.Has nothing to do with emotion! Bored


  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 24-07 10:48
Sowieso even password wijzigen in wachtwoord :) Dan even een query draaien als: SELECT username FROM users WHERE username = '" & Request("username") & "' AND wachtwoord = '" & md5(Request("password")) & "'.

Hoe dat md5 bij jou werkte weet ik ff niet meer uit hoofd maar je begrijpt de bedoeling hoop ik.

Als deze .eof true geeft is het geen goede inlog.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


Verwijderd

Topicstarter
Op vrijdag 28 juni 2002 11:16 schreef TeeDee het volgende:
als ik je goed begrijp wil je dit:
code:
1
2
3
4
5
6
7
8
9
10
11
<%
Dim wachtwoord
wachtwoord = (md5(request.form("wachtwoord"))
set rs_select = "SELECT * FROM database WHERE wachtwoord = "'&wachtwoord&'"

if rs_select.eof or rs_select.bof then
response.write " Fout... lullo! ;))" 
else
response.write "goed zo, ga verder"
end if
%>

Zomaar ff gauw uit de losse pols hoor ;)
Mja, en dan ook nog met username :)
Dat zal ik er zelf wel ff tussen frotten, moet wel lukken denk ik :)

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 15:22

TeeDee

CQB 241

Op vrijdag 28 juni 2002 11:16 schreef Nutcaze het volgende:
Hoe dat md5 bij jou werkte weet ik ff niet meer uit hoofd maar je begrijpt de bedoeling hoop ik.
dat md5 heeft ie gevraagd in een ander topic.
Wat mij overigens niet goed gelukt is...(of in ieder geval niet lekker! :(
Dat is nu rc4 geworden ;)

Heart..pumps blood.Has nothing to do with emotion! Bored


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 15:22

TeeDee

CQB 241

Op vrijdag 28 juni 2002 11:17 schreef slindenau het volgende:

[..]

Mja, en dan ook nog met username :)
Dat zal ik er zelf wel ff tussen frotten, moet wel lukken denk ik :)
belangrijkste is dat .eof en .bof verhaal...

de select kan je zo gek maken als je zelf wilt.

Desnoods donder je het nog in een session oid!

Heart..pumps blood.Has nothing to do with emotion! Bored


Verwijderd

Topicstarter
Waaah!

Hij blijft roepen:
code:
1
2
3
4
5
Microsoft VBScript runtime error '800a01a8' 

Object required: 'SELECT username FROM' 

/sebl/pwdc.asp, line 23

String:
code:
1
Sqlusers = "SELECT username FROM users WHERE username = '" & (Request.Form("username")) & "' AND wachtwoord = '" & (md5(Request.Form("password"))) & "'"

Verwijderd

Topicstarter
Op vrijdag 28 juni 2002 11:34 schreef slindenau het volgende:
Waaah!

Hij blijft roepen:
code:
1
2
3
4
5
Microsoft VBScript runtime error '800a01a8' 

Object required: 'SELECT username FROM' 

/sebl/pwdc.asp, line 23

String:
code:
1
Sqlusers = "SELECT username FROM users WHERE username = '" & (Request.Form("username")) & "' AND wachtwoord = '" & (md5(Request.Form("password"))) & "'"
Woei laatmaar, ik heb em al :)
Er moesten wat ( en ) bij en dan doet ie het
THXS voor alle moeite iig!

Verwijderd

Topicstarter
Nu doet ie het goed...denk ik :+
Check het resultaat:
http://www26.brinkster.com/sebl/pwd.html

  • j_du_pee
  • Registratie: Maart 2000
  • Laatst online: 23-09-2024

j_du_pee

du pain, du vin, du pee

Tip: je kunt dit soort monologen voorkomen door gebruik te maken van de edit knop ;)

kaart != map && bottel != fles
Wacht op antwoord


Verwijderd

Topicstarter
Op vrijdag 28 juni 2002 12:00 schreef j_du_pee het volgende:
Tip: je kunt dit soort monologen voorkomen door gebruik te maken van de edit knop ;)
Ok... :)
Dat weet ik ook wel, maar ik wil kicken ; )
Pagina: 1