Avatar billede bbmcrack Nybegynder
02. oktober 2001 - 11:54 Der er 6 kommentarer

Form fejl når alle felter ikke er udfyldt

Hejsa jeg har et problem med min form. Det er lavet sådan at når folk har ufdfyldt min form kommer det ned i en database. Men hvis ikke at alle felterne er udfyldt kommer den med at \" siden kan ikke vises\" Hvis alt er udfyldt virker det fint.

Hvordan laver jeg sådan at selvom ikke alle felter er udfyldte, kommer de felter som er udfyldt ned i databasen.


Min ASP :
<%

Const adOpenKeyset = 1
Const adLockOptimistic = 3

strMode = Request.QueryString(\"mode\")
tempConn = \"PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"database.mdb\") & \";UID=admin;PWD=;\"

If Request.Form(\"Gem\") <> \"\" Then
    strfirma = Trim(Request.Form(\"firma\"))
    strperson = Trim(Request.Form(\"person\"))
    stradresse = Trim(Request.Form(\"adresse\"))
    strby = Trim(Request.Form(\"by\"))
    strpost = Trim(Request.Form(\"post\"))
    strtelefon = Trim(Request.Form(\"telefon\"))
    strfax = Trim(Request.Form(\"fax\"))
    stremail = Trim(Request.Form(\"email\"))
    strdomain = Trim(Request.Form(\"domain\"))
    strpege = Trim(Request.Form(\"pege\"))
    strpassword = Trim(Request.Form(\"password\"))
    strKommentar = Trim(Request.Form(\"Kommentar\"))
    Set rs = Server.CreateObject(\"ADODB.RecordSet\")
    strSQL = \"SELECT  * FROM news WHERE (ID = 0)\"
    rs.Open strSQL, tempConn, adOpenKeyset, adLockOptimistic
    If (rs.BOF Or rs.EOF) Then
        rs.AddNew
        rs(\"firma\") = strfirma
        rs(\"person\") = strperson
        rs(\"adresse\") = stradresse
        rs(\"by\") = strby
        rs(\"post\") = strpost
        rs(\"telefon\") = strtelefon
        rs(\"fax\") = strfax
        rs(\"email\") = stremail
        rs(\"domain\") = strdomain
        rs(\"pege\") = strpege
        rs(\"password\") = strpassword
        rs(\"Kommentar\") = strKommentar
        rs(\"Dato\") =Date()
        rs(\"chekck\") = request.form(\"checkbox\")
        rs.Update
    End If
    rs.Close
    Set rs = Nothing
End If
%>
<html>

<head>
<title>Nyheder</title>
</head>

<body>

  <div align=\"center\"><center>
    <table width=\"488\" border=\"0\" cellspacing=\"0\" cellpadding=\"3\">
      <tr>
        <td>
          <form method=\"POST\" action=\"indlaeg.asp\">
            <table border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"2\">
              <tr>
                <td valign=\"middle\" align=\"left\" colspan=\"2\"><font face=\"arial\" size=\"2\"><B><br>
                  </B>Indtast venligst oplysningerne i følgende felter:<B><br>
                  &nbsp; </B></font></td>
              </tr>
              <tr>
                <td valign=\"middle\" align=\"left\"><div align=\"right\">
                  <p><B><font face=\"arial\" size=\"2\">Firma</font></B>
                </td>
                <td valign=\"middle\" align=\"left\">
                  <input type=\"text\" name=\"firma\" size=\"40\">
                </td>
              </tr>
              <tr>
                <td valign=\"middle\" align=\"left\"><div align=\"right\">
                  <p><B><font face=\"arial\" size=\"2\">Person</font></B>
                </td>
                <td valign=\"middle\" align=\"left\">
                  <input type=\"text\" name=\"person\" size=\"40\">
                </td>
              </tr>
              <tr>
                <td valign=\"middle\" align=\"left\"><div align=\"right\">
                  <p><B><font face=\"arial\" size=\"2\">Adresse</font></B>
                </td>
                <td valign=\"middle\" align=\"left\">
                  <input type=\"text\" name=\"adresse\" size=\"40\">
                </td>
              </tr>
              <tr>
                <td valign=\"middle\" align=\"left\"><div align=\"right\">
                  <p><B><font face=\"arial\" size=\"2\">By / Post nr.</font></B>
                </td>
                <td valign=\"middle\" align=\"left\"> <font color=\"#FFFFFF\">
                  <input type=\"text\" name=\"by\" size=\"24\">
                  ,</font>
                  <input type=\"text\" name=\"post\" size=\"10\">
                </td>
              </tr>
              <tr>
                <td valign=\"middle\" align=\"left\"><div align=\"right\">
                  <p><B><font face=\"arial\" size=\"2\">Telefon</font></B>
                </td>
                <td valign=\"middle\" align=\"left\">
                  <input type=\"text\" name=\"telefon\" size=\"40\">
                </td>
              </tr>
              <tr>
                <td valign=\"middle\" align=\"left\"><div align=\"right\">
                  <p><B><font face=\"arial\" size=\"2\">Fax</font></B>
                </td>
                <td valign=\"middle\" align=\"left\">
                  <input type=\"text\" name=\"fax\" size=\"40\">
                </td>
              </tr>
              <tr>
                <td valign=\"middle\" align=\"left\"><div align=\"right\">
                  <p><B><font face=\"arial\" size=\"2\">Email</font></B>
                </td>
                <td valign=\"middle\" align=\"left\">
                  <input type=\"text\" name=\"email\" size=\"40\">
                </td>
              </tr>
              <tr>
                <td valign=\"middle\" align=\"left\"><div align=\"right\">
                  <p><B><font face=\"arial\" size=\"2\">Domain navn</font></B>
                </td>
                <td valign=\"middle\" align=\"left\">
                  <input type=\"text\" name=\"domain\" size=\"40\">
                </td>
              </tr>
              <tr>
                <td valign=\"middle\" align=\"left\"><div align=\"right\">
                  <p><B><font face=\"arial\" size=\"2\">Pege</font></B>
                </td>
                <td valign=\"middle\" align=\"left\">
                  <input type=\"text\" name=\"pege\" size=\"40\">
                </td>
              </tr>
              <tr>
                <td valign=\"middle\" align=\"left\"><div align=\"right\">
                  <p><B><font face=\"arial\" size=\"2\">Password</font></B>
                </td>
                <td valign=\"middle\" align=\"left\">
                  <input type=\"text\" name=\"password\" size=\"40\">
                </td>
              </tr>
              <tr>
                <td valign=\"middle\" align=\"left\"><div align=\"right\">
                  <p><B><font face=\"arial\" size=\"2\">test</font></B>
                </td>
                <td valign=\"middle\" align=\"left\">
                  <input type=\"checkbox\" name=\"checkbox\" value=\"true\">
                </td>
              </tr>
              <tr>
                <td valign=\"top\" align=\"left\"><div align=\"right\">
                  <p><B><font face=\"arial\" size=\"2\">Kommentar</font></B>
                </td>
                <td valign=\"middle\" align=\"left\">
                  <textarea rows=\"3\" name=\"Kommentar\" cols=\"40\"></textarea>
                </td>
              </tr>
              <tr>
                <td valign=\"middle\" align=\"left\" colspan=\"2\"><br>
                  <input type=\"submit\" value=\"Gem\" name=\"Gem\">
                  <input type=\"button\" value=\"Annuller\" name=\"Annuller\" onClick=\"java script:history.back();\">
                </td>
              </tr>
            </table>
          </form>
        </td>
      </tr>
    </table>
    <form name=\"form1\" method=\"post\" action=\"\">
    </form>
    <p>&nbsp; </p>
  </center></div>
</body>
</html>
Avatar billede Søren Bech Morsing Praktikant
02. oktober 2001 - 12:03 #1
du skal i design view i din database, og så tillade ingen indtastning i dine tekstfelter/notatfelter

Så skal du i din indtastning kontrollere at tal felter skal ha en værdi, fx 0
Avatar billede mao Nybegynder
02. oktober 2001 - 12:08 #2
Jeg kender ikke så meget til ASP, men  du kan vel lave en validering af dine formfelter før du smider i db.
If Request.Form(\"Gem\") == \"\" Then \"Gem\" = \"&nbsp;\"
Det skulle erstatte dit NULL med askekoden for et mellemrum.
good luck
mao   
Avatar billede bbmcrack Nybegynder
02. oktober 2001 - 12:15 #3
Kanoon SBK..

Nu virker det i mine Teskst felter...

men hvad siger du, jeg skal sætte mine :
Tal / Ja/Nej (afkrydsningfelter) felter til i databasen. Så de også gerne må være \"tomme\" ? :-)
Avatar billede Søren Bech Morsing Praktikant
02. oktober 2001 - 12:31 #4
dine tal skal du kontrollere på

if Request.Form(\"talfeltet\") = \"\" then

talfeltet = 0;

end if

ja/nej felter hvor value er = true på dine checkbox felter

if (Request.Form(\"checkbox\")<> \"true\" then

checkbox = false

end if
Avatar billede kasper_14 Nybegynder
02. oktober 2001 - 13:32 #5
if strfirma <> \"\" AND stradresse <> \"\" AND osv... then
\' udfør handling
else
Response.write \"ikke alle felter er udfyldt\"
end if
Avatar billede kasper_14 Nybegynder
02. oktober 2001 - 13:32 #6
glemte ( og )
if (strfirma <> \"\" AND stradresse <> \"\" AND osv...) then
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester