webForumDet fria alternativet

Fel på formulär kanske?

ASP

12 svar · 279 visningar · startad av webbSAJTEN

Medlem sedan jan. 2002992 inlägg
Frågan#1
<form name="form1" method="post" action="index.asp?do=personalspara&meny=redaktionen">
          <select name="ansvar">
            <option value="Chefredakt&ouml;r">Chefredakt&ouml;r</option>
            <option value="Ansvarig Utgivare">Ansvarig Utgivare</option>
            <option value="Art Director">Art Director</option>
          </select>
          <input name="namn" type="text" value="Namn">
          <input name="efternamn" type="text" value="Efternamn">
          <input name="email" type="text" value="E-mail">
          <input name="tel" type="text" value="Telfon">
          <input type="submit" value="Submit">
        </form>
If Request.QueryString("do") = "add" Then 

  If request.QueryString("do") = "personalspara" Then

Function FixSql(str)
    str = Trim(str)
    str = Replace(str, "'", "''")
    FixSql = str
End Function

Ansvar = FixSql(Request.Form("ansvar"))
Namn = FixSql(Request.Form("namn"))
Efternamn = FixSql(Request.Form("efternamn"))
Email = FixSql(Request.Form("email"))
Tel = FixSql(Request.Form("tel"))

    If RS.EOF Then
strSQL = "INSERT INTO personal (Namn, Efternamn, Email, Tel, Ansvar ) VALUES " & "('" & Namn & "'," & Efternamn & "," & Email & "," & Tel & "," & Ansvar & ")"
  objConn.Execute(strSQL),,128
 
    Else

strSQL = "INSERT INTO personal (Namn, Efternamn, Email, Tel, Ansvar ) VALUES " & "('" & Namn & "'," & Efternamn & "," & Email & "," & Tel & "," & Ansvar & ")"
objConn.Execute(strSQL),,128

Response.Redirect("index.asp?meny=redaktionen")

    End If
  End If
%>

Det som händer är: Ingenting! Man kommer till sidan dir man ska komma men inget sparas i databasen..

Medlem sedan aug. 20021 752 inlägg
#2

Du har glömt enkel fnuttar ' på efternamn, email och telefon så du får troligtvis något fel när du kör din SQL och försöker lägga in datan.

/Viktor

Medlem sedan jan. 2002992 inlägg
#3
strSQL = "INSERT INTO personal (Namn, Efternamn, Email, Tel, Ansvar ) VALUES " & "('" & Namn & "','" & Efternamn & "','" & Email & "','" & Tel & "'," & Ansvar & ")"
  objConn.Execute(strSQL),,128

sådär är koden nu och de blev samma fel

Medlem sedan juni 2002256 inlägg
#4

Request.Form("Ansvar") != String ?

Medlem sedan jan. 2002992 inlägg
#5

Förstår inte )=

Medlem sedan aug. 20021 752 inlägg
#6

Är inte Ansvar också en sträng som behvöer ' i början och slutet?
Ett enkelt sätt att se om det är det som är fel är att skriva ut frågan och sedan köra den manuellt mot databasen och se vad man får för fel (om man nu inte får några bra fel medelanden i någon av alla loggar som borde skapas under körningen).

/Viktor

Medlem sedan jan. 2002992 inlägg
#7
strSQL = "INSERT INTO personal (Namn, Efternamn, Email, Tel, Ansvar ) VALUES " & "('" & Namn & "','" & Efternamn & "','" & Email & "','" & Tel & "'," & Ansvar & "')"
  objConn.Execute(strSQL),,128
 
    Else

strSQL = "INSERT INTO personal (Namn, Efternamn, Email, Tel, Ansvar ) VALUES " & "('" & Namn & "','" & Efternamn & "','" & Email & "','" & Tel & "','" & Ansvar & "')"
objConn.Execute(strSQL),,128

Sådär ser de ut!
Jag får inte ut något när jag skriver in:
response.write "SQL: " & strSQL
response.end

Medlem sedan okt. 2002257 inlägg
#8

Re: Fel på formulär kanske?

<form name="form1" method="post" action="index.asp?[b]do=personalspara[/b]&meny=redaktionen">
If Request.QueryString("do") = "add" Then 

  If request.QueryString("do") = "personalspara" Then

%>

Eftersom "do" innehåller bara "personalspara" så slår ju inte det första villkoret "add" in vilket gör att inget körs.

Medlem sedan jan. 2002992 inlägg
#9

Re: Re: Fel på formulär kanske?

Obbelix skrev:

<form name="form1" method="post" action="index.asp?[b]do=personalspara[/b]&meny=redaktionen">
If Request.QueryString("do") = "add" Then 

  If request.QueryString("do") = "personalspara" Then

%>

Eftersom "do" innehåller bara "personalspara" så slår ju inte det första villkoret "add" in vilket gör att inget körs.

Nu har jag skrivit:

   <form name="form1" method="post" action="index.asp?do=personalspara&do=add&meny=redaktionen">

och sen

If Request.QueryString("do") = "add" Then 

  If request.QueryString("do") = "personalspara" Then

Och de funkar inte fortfarande!

Medlem sedan juni 200032 967 inlägg
#10

Nej, det fungerar inte. Request.Querystring("do") kan ju inte vara endast "add" och endast "personalspara". Tänk om.

Medlem sedan jan. 2002992 inlägg
#11
If request.QueryString("do") = "add" & ("do") = "personalspara"   Then

Det funkar inte heller :(

Medlem sedan juni 200032 967 inlägg
#12

Nej, det funkar inte heller.

Varför måste du kalla de två querystrings för samma sak?

Medlem sedan jan. 2002992 inlägg
#13

Iof.. Rätt smart idé =) Testar!

260 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)