Hur menar du, null? Att dom inte är någonting?
Nu funkar det...men nåt annat strular....
110 svar · 1 504 visningar · startad av BulletBoyCrime · sida 4 av 6
Frågan, av BulletBoyCrime
JA! Nu funkar min connection till databasen :e Skrev in {MySQL ODBC 3.51 Driver} i driver="" Tack! Men nu strular detta......... Set RecSet = Server.CreateObject("ABODB.Recordset") Borde inte detta funka? :q
Läs frågan i sin helhet →Jo, om det är av typen tal får den vara 0. Men det får inte vara null, om inte nullvärden tillåts. Null = ingenting kan man säga.
Null, "" och 0 är tre olika saker, bara så att du vet. :)
Helt enkelt, inga tomma variabler?
Inga tomma variabler, samma felmeddelande.
Det syftar på raden
Connect.Execute (strSQL)
Har det något med saken att göra :q
Om du får samma felmeddelande måste du ha tomma variablar, eftersom felmeddeandet innehåller ", , , , , , , ," som om det inte fanns något där.
Då står detta:
INSERT INTO players (name, password, title, perk, realname, phone, country, cash, health, curhealth, wepskill, expskill, protect, spyskill, ccskill, hokskill, driskill, druskill, lawskill, energymax, energycur, honor) VALUES ('', '', , , '', '', '', 15000, 100, 100, , , , , , , , , , , , )
Jag ska kolla, dubbelkolla och göra om det igen efter tomma variabler.
Det ser väldigt tomt ut måste jag säga ;)
Dom syftar på värdena name, password, title, perk, realname, phone, country som alla konstigt nog komemr ifrån request.form....
Är det något fel på mitt formulär eller hämtningsmetod kanske?
Hur ser formulärsidan ut då?
Här är den:
<form method="post" action="registered.asp">
PLAYER FACTS<BR><HR>
Criminal Alias:<BR>
<input type=text name="name" size=15><BR><BR>
Password:<BR>
<input type=text name="password" size=15><BR><BR>
Choose Title:<BR>
Hitman:<input type="radio" name="title" value="1"><BR>
Spy:<input type="radio" name="title" value="2"><BR>
Nailer:<input type="radio" name="title" value="3"><BR>
Pimp:<input type="radio" name="title" value="4"><BR>
Dealer:<input type="radio" name="title" value="5"><BR>
Survivor:<input type="radio" name="title" value="6"><BR>
Driver:<input type="radio" name="title" value="7"><BR>
Lawyer:<input type="radio" name="title" value="8"><BR>
Explosives Expert:<input type="radio" name="title" value="9"><BR><BR>
Choose Perks:<BR><BR>
<FONT FACE="Helvetica"><H6>A Natural (+1 in all skills):<input type="radio" name="perk" value="1"><BR>
Incredible Discipline (+3 weapon skills, +3 honor, +3 driving skill):
<input type="radio" name="perk" value="2"><BR>
Black Belt Karate (+6 close combat skill, +3 honor):<input type="radio" name="perk" value="3"><BR>
Energized (+25 energy):<input type="radio" name="perk" value="4"><BR>
Technical Genius (+5 explosive skill, +4 driving skill):<input type="radio" name="perk" value="5"><BR>
Experienced (+2 drugs skill, +2 weapon skills, +2 driving skills, +3 protect):
<input type="radio" name="perk" value="6"><BR>
Harvard Law Degree (+9 legal skill):<input type="radio" name="perk" value="7"><BR>
Low Bait (+5 hooker skills, +4 drug skills):<input type="radio" name="perk" value="8"><BR>
Agent (+9 spy skills):<input type="radio" name="perk" value="9"><BR></H6></FONT><HR>
PERSONAL INFO<BR><HR>
Full Name:<BR>
<input type=text name="persname" size=15><BR><BR>
Country:<BR>
<input type=text name="country" size=15><BR><BR>
Phone Number:<BR>
<input type=text name="phone" size=15><BR><BR>
<input type="reset" value="Erase" src="reset bttn.jpg">
<input type="submit" border=0 name="OK" src="submit bttn.jpg" value=Submit>
</form>
Hittar ni något fel?
Jag använder request.form på kodsidan.
Jag tycker nog att formulärsbiten ser rätt ut... nu kommer en dum fråga... när du testar, du har då verkligen laddat formulärssidan, fyllt i den och sen submittat den?
Vidare, dessa fält: title & perk (variablerna: SQLSafeTitle & SQLSafePerk) är de tal eller text?
De ska väl vara text, då måste du ändra i din SQL-fråga och sätta dit '
VALUES ('" & SQLSafeName & "', '" & SQLSafePassword & "', '" & SQLSafeTitle & "', '" & SQLSafePerk & "',
osv
Du har full koll att det är rätt typ i db?
Em....nej eftersom title och perk kommer ifrån radiobuttons så tyckte jag att det var enklare att ge dom en talvalue.......är detta fel på något sätt?
Jag har testat både att submitta och att inte göra det, osv.
Men hur menar du full koll att det är rätt typ i db?
Du kan helt klart ge dom ett talvalue, inget fel i det.
Med full koll att det är rätt typ i db menar jag att här vet du ju vilka variabler som är text resp. tal, är du HELT säker på att de motsvarande fälten i din databas har rätt typ?
Nu använder du ju inte Access, jag vet inte riktigt hur det går till då, men jag antar att det är som i Access där du bestämmer typ av fält samt om tex null-värden är tillåtna samt om fältet måste vara ifyllt eller ej.
Hmmm....jag får väl fråga någon som också använder mySQL, jag visste faktiskt inte att man var tvungen att göra dem till text respektive tal :r
Det var någon som använde mySQLFront, jag kan fråga honom han har hjälpt mig förut.
Nu har jag fixat de fälten som skall vara text till text men det funkar inte........
Jag har testat att fylla i men det vill inte usch vad man blir sur x(
De säger att fälten är tomma men vad är det som är fel.....blä jag blir galen på detta ju x(
Okaj....nu får nån ta och hjälpa mig här så jag får färdigt registreringen detta årtusendet.... ;)
Uppdatering av koden:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> Now you are registered! -- Crimea Bay </TITLE>
</HEAD>
<%
Function SQLSafe(strText)
SQLSafe = Replace (strText, "'", "''")
End function
Dim Name, Password, Title, Perk, Realname, Phone, Country, Cash, Health, Curhealth, wski, eski, pski, sski, cski, hski, dski, duski, lski, enmax, encur, honor
Name = Request.Form("name")
Password = Request.Form("password")
Title = Request.Form("title")
Perk = Request.Form("perk")
Realname = Request.Form("persname")
Phone = Request.Form("phone")
Country = Request.Form("country")
Cash = 15000
Health = 100
Curhealth = 100
If Request.Form("perk") = 1 Then
wski = 1
eski = 1
pski = 1
sski = 1
cski = 1
hski = 1
dski = 1
duski = 1
lski = 1
enmax = 100
encur = 75
honor = 20
Elseif Request.Form("perk") = 2 Then
wski = 3
eski = 0
pski = 0
sski = 0
cski = 0
hski = 0
dski = 3
duski = 0
lski = 0
enmax = 100
encur = 75
honor = 23
Elseif Request.Form("perk") = 3 Then
wski = 0
eski = 0
pski = 0
sski = 0
cski = 6
hski = 0
dski = 0
duski = 0
lski = 0
enmax = 100
encur = 75
honor = 23
Elseif Request.Form("perk") = 4 Then
wski = 0
eski = 0
pski = 0
sski = 0
cski = 0
hski = 0
dski = 0
duski = 0
lski = 0
enmax = 125
encur = 100
honor = 20
Elseif Request.Form("perk") = 5 Then
wski = 0
eski = 5
pski = 0
sski = 0
cski = 0
hski = 0
dski = 4
duski = 0
lski = 0
enmax = 100
encur = 75
honor = 20
Elseif Request.Form("perk") = 6 Then
wski = 2
eski = 0
pski = 3
sski = 0
cski = 0
hski = 0
dski = 2
duski = 2
lski = 0
enmax = 100
encur = 75
honor = 20
Elseif Request.Form("perk") = 7 Then
wski = 0
eski = 0
pski = 0
sski = 0
cski = 0
hski = 0
dski = 0
duski = 0
lski = 9
enmax = 100
encur = 75
honor = 20
Elseif Request.Form("perk") = 8 Then
wski = 0
eski = 0
pski = 0
sski = 0
cski = 0
hski = 5
dski = 0
duski = 4
lski = 0
enmax = 100
encur = 75
honor = 20
Elseif Request.Form("perk") = 9 Then
wski = 0
eski = 0
pski = 0
sski = 9
cski = 0
hski = 0
dski = 0
duski = 0
lski = 0
enmax = 100
encur = 75
honor = 20
End If
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={MySQL ODBC 3.51 Driver}; server=localhost; uid=root; password= ; database=crimea"
strSQL = "INSERT INTO players (name, password, title, perk, realname, phone, country, cash, health, curhealth, wepskill, expskill, protect, spyskill, ccskill, hokskill, driskill, druskill, lawskill, energymax, energycur, honor) VALUES ('" & SQLSafeName & "', '" & SQLSafePassword & "', " & SQLSafeTitle & ", " & SQLSafePerk & ", '" & SQLSafeRealname & "', '" & SQLSafePhone & "', '" & SQLSafeCountry & "', " & Cash & ", " & Health & ", " & Curhealth & ", " & wski & ", " & eski & ", " & pski & ", " & sski & ", " & cski & ", " & hski & ", " & dski & ", " & duski & ", " & lski & ", " & enmax & ", " & encur & ", " & honor & ")"
Connect.Execute(strSQL)
Connect.Close
%>
<BODY bgcolor=#000000 text=#FFFFFF Link=#FFFFFF Alink=#FFFFFF VLINK=#FFFFFF>
<TABLE>
<TR>
<TD width=333 height=100></TD>
<TD width=333 height=100></TD>
<TD width=333 height=100></TD>
</TR>
<TR>
<TD></TD>
<TD valign=top align=center><FONT SIZE="" COLOR=""><H1>Done!</H1></FONT><BR><BR>
Your Criminal Alias is:<% =Request.Form("name") %><BR><BR>
Your password is:<% =Request.Form("password") %><BR><BR>
<%
If Request.Form("title") = 1 Then
Response.Write "Your Title is: Hitman"
ElseIf Request.Form("title") = 2 Then
Response.Write "Your Title is: Spy"
ElseIf Request.Form("title") = 3 Then
Response.Write "Your Title is: Nailer"
ElseIf Request.Form("title") = 4 Then
Response.Write "Your Title is: Pimp"
ElseIf Request.Form("title") = 5 Then
Response.Write "Your Title is: Dealer"
ElseIf Request.Form("title") = 6 Then
Response.Write "Your Title is: Survivor"
ElseIf Request.Form("title") = 7 Then
Response.Write "Your Title is: Driver"
ElseIf Request.Form("title") = 8 Then
Response.Write "Your Title is: Lawyer"
ElseIf Request.Form("title") = 9 Then
Response.Write "Your Title is: Explosives Expert"
Else
Response.Write "You didn´t pick a title."
End If
%>
<P>Log in <A HREF="crimea.asp">HERE</A></P>
</TD>
<TD></TD>
</TR>
<TR>
<TD></TD>
<TD></TD>
<TD></TD>
</TR>
</TABLE>
</BODY>
</HTML>
Får felmesset:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[MySQL][ODBC 3.51 Driver][mysqld-4.0.12]You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near ' , '', '', '', 15000, 100, 100, , , , , , , , , , , , )' at lin
/crimea bay/registered.asp, line 147
solbulle föreslog att jag skule köra denna koden på en sida:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>
<BODY>
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={MySQL ODBC 3.51 Driver}; server=localhost; uid=root; password= ; database=crimea"
strSQL = "INSERT INTO players (name, password, title, perk, realname, phone, country, cash, health, curhealth, wepskill, expskill, protect, spyskill, ccskill, hokskill, driskill, druskill, lawskill, energymax, energycur, honor) VALUES ('SQLSafeName', 'SQLSafePassword', 3, 4, 'SQLSafeRealname', 'SQLSafePhone', 'SQLSafeCountry', 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)"
Connect.Execute
Connect.Close
%>
</BODY>
</HTML>
Då får jag felmesset:
Körningsfel i Microsoft VBScript error '800a01c2'
Fel antal argument eller felaktig egenskapstilldelning.: 'Execute'
/crimea bay/testaren.asp, line 17
Kan nån hjälpa nu då :q

