webForumDet fria alternativet

Nu funkar det...men nåt annat strular....

ASP

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 →
Medlem sedan mars 2003970 inlägg
#61

Hur menar du, null? Att dom inte är någonting?

Medlem sedan jan. 20032 285 inlägg
#62

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. :)

Medlem sedan mars 2003970 inlägg
#63

Helt enkelt, inga tomma variabler?

Medlem sedan jan. 20032 285 inlägg
#64

BulletBoyCrime skrev:

Helt enkelt, inga tomma variabler?

Exakt! :D

Medlem sedan mars 2003970 inlägg
#65

Inga tomma variabler, samma felmeddelande.
Det syftar på raden

Connect.Execute (strSQL)

Har det något med saken att göra :q

Medlem sedan jan. 20032 285 inlägg
#66

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.

Medlem sedan nov. 20017 144 inlägg
#67

byt ut: Connect.Execute (strSQL)
mot
response.write strSQL
response.end

Vad står det då?

Medlem sedan mars 2003970 inlägg
#68

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.

Medlem sedan nov. 20017 144 inlägg
#69

Det ser väldigt tomt ut måste jag säga ;)

Medlem sedan mars 2003970 inlägg
#70

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?

Medlem sedan nov. 20017 144 inlägg
#71

Hur ser formulärsidan ut då?

Medlem sedan mars 2003970 inlägg
#72

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">&nbsp;&nbsp;
	<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.

Medlem sedan mars 20015 287 inlägg
#73

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?

Medlem sedan mars 20015 287 inlägg
#74

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?

Medlem sedan mars 2003970 inlägg
#75

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?

Medlem sedan mars 20015 287 inlägg
#76

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.

Medlem sedan mars 2003970 inlägg
#77

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.

Medlem sedan mars 2003970 inlägg
#78

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(

Medlem sedan mars 2003970 inlägg
#79

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

Medlem sedan dec. 19998 577 inlägg
#80

Det skall stå

Connect.Execute( strSQL )

Mvh, Vide

271 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
140 ms — hämta tråd, inlägg och bilagor (db)
118 ms — ändringar (db)