Avatar billede kane Juniormester
26. januar 2002 - 11:11 Der er 58 kommentarer og
1 løsning

skal lave en fejl besked

jeg har 4 checkboxe som jeg skal have en fejl besked på hvis man vælger mere en en af dem.

jeg har prøvet med if bla bla bla.form("asp20") & blabla.Form("asp40") = true then
response.write(du må kun bla bla bla)
men det virker ikke

nogle der lige kan fixe sådan en?
Avatar billede kane Juniormester
26. januar 2002 - 11:11 #1
<td class="font">ASP/Access 20MB</td>
                        <td>
                          <input type="checkbox" name="asp20" value="80">
                        </td>
                      <td>&nbsp;</td>
                    </tr>
                    <tr bgcolor="#000000">
                      <td colspan="3" height="1%"><img src="grafik/snyd_s.gif" width="1" height="1"></td>
                    </tr>
                    <tr>
                      <td class="font">ASP/Access 40MB</td>
                        <td>
                          <input type="checkbox" name="asp40" value="100">
                        </td>
                      <td>&nbsp;</td>
                    </tr>
                    <tr bgcolor="#000000">
                      <td colspan="3" height="1%"><img src="grafik/snyd_s.gif" width="1" height="1"></td>
                    </tr>
                    <tr>
                      <td class="font">PHP/MySql 20MB</td>
                        <td>
                          <input type="checkbox" name="php20" value="90">
                        </td>
                      <td>&nbsp;</td>
                    </tr>
                        <tr bgcolor="#000000">
                      <td colspan="3" height="1%"><img src="grafik/snyd_s.gif" width="1" height="1"></td>
                    </tr>
                    <tr>
                      <td class="font">PHP/MySql 40MB</td>
                        <td>
                          <input type="checkbox" name="php40" value="110">
                        </td>
Avatar billede erikjacobsen Ekspert
26. januar 2002 - 11:16 #2
Skulle du så ikke bruge en flok radioknapper i stedet for ?
Avatar billede kane Juniormester
26. januar 2002 - 11:29 #3
nej fordi en radio knap man man ikke fravælge igen, hvis man nu har et hotel og vil bestill extra emails men kommer til at trykke på en hotel knap, så det virker ikke.
http://www.micro-web.dk/order.asp
sådan ser bestillings siden ud.
og regnings siden har så hver sin række med hver sit hotel, så kommer der et beløb ud fra det hotel man vælger.
det kunne jeg ikke lige se hvordan jeg skulle klare med samme radio value.


den har 4
Avatar billede theill Nybegynder
26. januar 2002 - 11:33 #4
Jeg giver 'erikjacobsen' ret -- saa lav en ekstra knap der hedder 'Ingen valgt' eller lign. Det er klart det paeneste for brugeren da radiobox'e udstraaler 'pick one' hvor checkbox bare udstraaler 'pick any'

// Mvh Peter Theill -- http://www.filebasket.com/
Avatar billede theill Nybegynder
26. januar 2002 - 11:33 #5
med 'en ekstra knap' mener jeg 'en ekstra radiobutton' :-)
Avatar billede kane Juniormester
26. januar 2002 - 11:38 #6
hmmmmm må prøve
Avatar billede erikjacobsen Ekspert
26. januar 2002 - 11:50 #7
Men ellers er reglen for en checkbox at du på serversiden kan
teste sådan

  if request.form("knappensnavn")="on" then
    ' den er krydset af
  else
    ' den er ikke krydset af
  end if

man kan også bruge en

  <select...>
  <option>Vælg ....</option>
  ...flere options
  </select>
Avatar billede orca Nybegynder
26. januar 2002 - 12:27 #8
Hvad med et Javascript som tjekker for det?

Mvh Mark
--
www.gameshots.dk
www.profiled.org
Avatar billede kane Juniormester
26. januar 2002 - 12:29 #9
tænkte jeg også på men nu tror jeg den er der med radioknapper
Avatar billede coltau Juniormester
26. januar 2002 - 12:39 #10
Hvis du skal kontrollere om et CheckBox-felt er afkrydset i ASP så er det således:
if Request.Form("asp20") <> "" then
  ' Checked
else
  ' Unchecked
end if

Det fedeste er hvis du laver kontrollen inden brugeren forlader siden. Altså i JavaScript.

Husk denne html-kode:
<form method="POST" ACTION="???.asp" onsubmit="return FormValidator(this)">

og JavaScriptet:

<script language="JavaScript"><!--
function FormValidator(theForm)
{
  i = 0;
  if (theForm.asp20.checked) { i++ }
  if (theForm.asp40.checked) { i++ }
  if (theForm.php20.checked) { i++ }
  if (theForm.php40.checked) { i++ }
  if (i > 1)
  {
  alert("Du har afkrydset mere end en mulighed.");
    theForm.asp20.focus();
    return (false);
  } else { return (true)}

}
//--></script>
Avatar billede kane Juniormester
26. januar 2002 - 22:11 #11
kan du "coltau" fortælle mig hvordan man ganger i asp

denne her virker ikke
<% response.write ( int(Request.form("webspace")) + int(Request.form("mail"))  * int("0,175") ) %>
Avatar billede orca Nybegynder
26. januar 2002 - 22:13 #12
Du skal skrive tal således: 0.175 og ikke 0,175.

Mvh Mark
--
www.gameshots.dk
www.profiled.org
Avatar billede kane Juniormester
26. januar 2002 - 22:15 #13
altså i andre må også gerne ;)
Avatar billede orca Nybegynder
26. januar 2002 - 22:17 #14
hehe :)
Avatar billede kane Juniormester
26. januar 2002 - 22:23 #15
det hjalp ikke orca
<% response.write ( int(Request.form("webspace")) + int(Request.form("mail"))  * int("0.175") ) %> giver samme resultat som <% response.write ( int(Request.form("webspace")) + int(Request.form("mail")) ) %>
Avatar billede orca Nybegynder
26. januar 2002 - 22:36 #16
hvad med denne:

<%= int(Request.Form("webspace")) + int(Request.Form("mail")) * 0.175 %>

Dur den heller ikke? Hvad består fejlen i?
Avatar billede kane Juniormester
26. januar 2002 - 23:02 #17
den skulle regne % ud fra det beløb som webspace og mail bliver
Avatar billede kane Juniormester
26. januar 2002 - 23:04 #18
ok hmmmmmmm det er fordi når feks email feltet er tomt så virker den ikke
damm
Avatar billede orca Nybegynder
26. januar 2002 - 23:05 #19
Så skal du også lige have en parantes omkring plusstykkerne. Ifølge regnereglerne bliver gange udført før plus, altså får du et forkert resultat. Her er hvad der skal stå:

<%= (int(Request.Form("webspace")) + int(Request.Form("mail"))) * 0.175 %>

Mvh Mark
--
www.gameshots.dk
www.profiled.org
Avatar billede orca Nybegynder
26. januar 2002 - 23:06 #20
Giver den forkert resultat eller giver den fejl?
Avatar billede kane Juniormester
26. januar 2002 - 23:07 #21
det hjalp
Avatar billede kane Juniormester
26. januar 2002 - 23:59 #22
sådan nu virker det perfekt.
en sidste ting, nu er det lavet sådan at det ikke har gemt i en db endnu, så nu skal jeg havde gemt det så der skal være en ja og en nej knap ( Er din bestilling rigtigt )

men man kan vel ikke gemme fra en request.form i en db vel?
skal man lave en hidden form??
Avatar billede kane Juniormester
27. januar 2002 - 18:19 #23
orca
efter at have lavet en hidden form hvor jeg så skal gemme i en db får jeg denne fejl
Type mismatch: '[string: ""]'

/nyside/modtag.asp, line 263
linie 263 er <%= (int(Request.Form("webspace")) + int(Request.Form("mail"))) * 0.25 %>
hvad gør jeg ???? hjælppppppppppe
Avatar billede orca Nybegynder
27. januar 2002 - 18:26 #24
Dette kunne tyde på at der er skrevet bogstaver i nogle af felterne.

Indsæt denne funktion i dit ASP dokument:

Function Val(intNumber)
  If IsNumeric(intNumber)
    Val = Int(intNumber)
  Else
    Val = 0
  End If
End Function

Og så skal du i stedet for at skrive Int(Request.Form("blabla")) skrive Val(Request.Form("blabla")).

Mvh Mark
Avatar billede kane Juniormester
27. januar 2002 - 20:04 #25
orca nu når alt det du har skrevet har være tip top, kan du så fortælle mig hvorfor den ikke gemmer i en db.


</table><form action="modtag.asp?script=gem" method="POST">

<table width="100%" border="0" cellspacing="1" cellpadding="0">
<input type="hidden" name="webspace" value="<%=request.form("webspace")%>">
    <input type="hidden" name="mail" value="<%=request.form("mail")%>">
        <input type="hidden" name="domain" value="<%=request.form("domain")%>">
            <input type="hidden" name="name" value="<%=request.form("name")%>">
                <input type="hidden" name="lastname" value="<%=request.form("lastname")%>">
  <tr>
    <td width="40%">&nbsp;</td>
    <td width="33%">
      <input type="submit" name="Submit" value="Send Bestilling">
      &nbsp;&nbsp;
      <input type="submit" name="Submit2" value="Slet alt">
    </td>
    <td>&nbsp;</td>
  </tr>

  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</table>
</form>

<%
    If Request.QueryString("script") = "gem" Then
        Set Conn = Server.CreateObject("ADODB.Connection")
        Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("order.mdb")
        Set rs = Server.CreateObject("ADODB.RecordSet")
        strSQL = "SELECT * FROM billorder"
        rs.Open strSQL, Conn, 1, 3
   
                rs.addnew
               
               
                rs("webspace") = Request.Form ("webspace")
                rs("mail") = Request.Form ("mail")
                rs("name") = Request.Form ("name")
                rs("lastname") = Request.Form ("lastname")
                rs("company") = Request.Form ("company")
                rs("city") = Request.Form ("city")
                rs("street") = Request.Form ("street")
                rs("postcode") = Request.Form ("postcode")
                rs("phone") = Request.Form ("phone")
                rs("email") = Request.Form ("email")
                rs("password") = Request.Form ("password")
                rs("domainname") = Request.Form ("domainname")
                rs("domain") = Request.Form ("domain")
                rs.update
                Response.redirect"tak.asp"
                rs.Close
   
        Set rs = Nothing
        Conn.Close
        set Conn = Nothing
    End If
%>
Avatar billede orca Nybegynder
27. januar 2002 - 20:07 #26
Giver den nogen fejl eller hvad sker der?

Selve asp koden er vel i filen modtag.asp?

Mvh Mark
Avatar billede kane Juniormester
27. januar 2002 - 21:52 #27
den blinker bare engang også står der http://www.micropage.dk/nyside/modtag.asp?script=gem oppe i adress feltet på browseren
Avatar billede kane Juniormester
27. januar 2002 - 21:53 #28
nu har jeg ikke alle felter med endnu, kan det være derfor?
Avatar billede orca Nybegynder
27. januar 2002 - 21:55 #29
har du ikke alle felter med i databasen?
Avatar billede kane Juniormester
27. januar 2002 - 21:59 #30
jo i databasen men ikke i input type="hidden" name="webspace" value="<%=request.form("webspace")%>">
    <input type="hidden" name="mail" value="<%=request.form("mail")%>">
        <input type="hidden" name="domain" value="<%=request.form("domain")%>">
            <input type="hidden" name="name" value="<%=request.form("name")%>">
                <input type="hidden" name="lastname" value="<%=request.form
Avatar billede orca Nybegynder
27. januar 2002 - 22:04 #31
Det gør ikke gøre noget. Sker det intet i databasen? Eller er det forkerte værdier der bliver gemt? Eller lidt mere precist hvad består fejlen i?
Avatar billede kane Juniormester
27. januar 2002 - 22:16 #32
prøv selv http://www.micropage.dk/nyside/order.asp

tryk på et hotel
resten er ligemeget
og send så
tryk på send bestilling på næste side
det er der det ikke sker ;)
Avatar billede orca Nybegynder
27. januar 2002 - 22:20 #33
hvad er linie 370?
Avatar billede kane Juniormester
27. januar 2002 - 22:25 #34
rs.update
                Response.redirect"tak.asp"
                rs.Close
Avatar billede orca Nybegynder
27. januar 2002 - 22:27 #35
Svært at svare på hvad fejlen er.  Jeg tror det har med databasen at gøre. Prøver du evt at skrive "ingenting" til et felt som kræver en værdi?
Avatar billede kane Juniormester
27. januar 2002 - 22:51 #36
hmmmmmmm har sådan nogle her
<%         if Request.form("mail") = "150"  Then
            Response.write("50")
            else
            Response.Write("0")
        end if
Avatar billede orca Nybegynder
27. januar 2002 - 22:57 #37
Øhm... hvad har de med sagen at gøre? :).
Avatar billede kane Juniormester
27. januar 2002 - 23:01 #38
hmmm troede det var sådan noget du snakkede om
mail har en value på 150 men jeg siger den skal skrive 50 i stedet for.

hmmmmm ellers ved jeg det ikk
Avatar billede orca Nybegynder
27. januar 2002 - 23:20 #39
Hvilken database bruger du?
Avatar billede kane Juniormester
27. januar 2002 - 23:34 #40
access
Avatar billede kane Juniormester
28. januar 2002 - 23:32 #41
fandt ud af hvad det var

det var fordi at der alle felter skal udfyldes, så hvis man ikke valgte min extra email så ville den ikke gemme det ( ligesom du sagde )
det kommer lige en sidste ting ( du skal nok få lidt flere point ) noget med en aspMail form på samme side
Avatar billede kane Juniormester
30. januar 2002 - 17:12 #42
nå køre det hele, så nu er det email jeg skal have fat på.
hvordan sender jeg en mail til den email der er skrevet ind i formen?
Avatar billede kane Juniormester
30. januar 2002 - 17:13 #43
nå=nu
Avatar billede orca Nybegynder
30. januar 2002 - 18:13 #44
Hvilke komponenter har du til rådighed på serveren? aspEmail? aspMail? JMail?

Mvh Mark
Avatar billede kane Juniormester
30. januar 2002 - 18:24 #45
aspmail
Avatar billede orca Nybegynder
30. januar 2002 - 18:29 #46
Prøv at kig på denne side: http://www.serverobjects.com/comp/Aspmail4.htm

Der er bla. et simpelt eksempel.

Mvh Mark
--
www.gameshots.dk
Avatar billede kane Juniormester
30. januar 2002 - 19:09 #47
jaden virker også fint........alene
men samme med en knap til at gemme i en db , så går det galt.
Avatar billede orca Nybegynder
30. januar 2002 - 20:58 #48
kan du specificere det lidt?
Avatar billede kane Juniormester
30. januar 2002 - 21:53 #49
Din order bliver f&oslash;rst oprettet n&aring;r der er betalt.</td>
  </tr>
  <%
            If request.querystring("mode") = "send" Then
           
            Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
            Mailer.FromName = "Bestilling"
            Mailer.FromAddress= "xx@XXXXXX:xx"
            Mailer.RemoteHost = "xxx.xxx.xxx"
            Mailer.AddRecipient "xxxx", "xxxxxxxxx"
            Mailer.Subject = "Bestiling af Hotel"
            Mailer.BodyText = request.form ("webspace") & vbcrlf & request.form("mail")
            If Mailer.SendMail Then
             
            Else
               
            End If
            Set Mailer = Nothing
           
            End If
%>                             

</table><form action="modtag.asp?script=gem" method="POST">

<table width="100%" border="0" cellspacing="1" cellpadding="0">
    <input type="hidden" name="webspace" value="<%=request.form("webspace")%>">
    <input type="hidden" name="mail" value="<%=request.form("mail")%>">
    <input type="hidden" name="domain" value="<%=request.form("domain")%>">
        <input type="hidden" name="domainname" value="<%=request.form("domainname")%>">
        <input type="hidden" name="name" value="<%=request.form("name")%>">
            <input type="hidden" name="lastname" value="<%=request.form("lastname")%>">
            <input type="hidden" name="company" value="<%=request.form("company")%>">
                <input type="hidden" name="street" value="<%=request.form("street")%>">
                    <input type="hidden" name="postcode" value="<%=request.form("postcode")%>">
       
  <tr>

    <td width="40%">&nbsp;</td>
    <td width="33%">
      <input type="submit" name="Submit" value="Send Bestilling">
      &nbsp;&nbsp;
      <input type="submit" name="Submit2" value="Slet alt">
    </td>
    <td>&nbsp;</td>
  </tr>

  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</table>
</form>

<%
    If Request.QueryString("script") = "gem" Then
        Set Conn = Server.CreateObject("ADODB.Connection")
        Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("order.mdb")
        Set rs = Server.CreateObject("ADODB.RecordSet")
        strSQL = "SELECT * FROM billorder"
        rs.Open strSQL, Conn, 1, 3
   
                rs.addnew
               
               
                rs("webspace") = Request.Form ("webspace")
                rs("mail") = Request.Form ("mail")
                rs("name") = Request.Form ("name")
                rs("lastname") = Request.Form ("lastname")
                rs("company") = Request.Form ("company")
                rs("city") = Request.Form ("city")
                rs("street") = Request.Form ("street")
                rs("postcode") = Request.Form ("postcode")
                rs("phone") = Request.Form ("phone")
                rs("email") = Request.Form ("email")
                rs("password") = Request.Form ("password")
                rs("domainname") = Request.Form ("domainname")
                rs("domain") = Request.Form ("domain")
                rs.update
                Response.redirect"tak.asp"
                rs.Close
   
        Set rs = Nothing
        Conn.Close
        set Conn = Nothing
    End If
%>
</body>
</html>
Avatar billede orca Nybegynder
30. januar 2002 - 22:48 #50
øhm... kunne du ik forklare hvad fejlen er???
Avatar billede kane Juniormester
30. januar 2002 - 23:22 #51
jo den sender ikke en mail til mig, jeg ville også gerne sende en mail til den email der er skrever i formen, så han kan få et kopi af hans bestilling på email, med det samme
Avatar billede orca Nybegynder
30. januar 2002 - 23:34 #52
Alle de steder hvor der står x i mailscriptet, har du vel rettet til de rigtige værdier? Prøv at skrive dette i stedet:

<%
            If request.querystring("mode") = "send" Then
           
            Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
            Mailer.FromName = "Bestilling"
            Mailer.FromAddress= "xx@XXXXXX:xx"
            Mailer.RemoteHost = "xxx.xxx.xxx"
            Mailer.AddRecipient "xxxx", "xxxxxxxxx"
            Mailer.Subject = "Bestiling af Hotel"
            Mailer.BodyText = request.form ("webspace") & vbcrlf & request.form("mail")
            Mailer.SendMail
            Set Mailer = Nothing
           
            End If
%>   

Mvh Mark
Avatar billede kane Juniormester
31. januar 2002 - 16:11 #53
ja det var bare lige for at skjule dem ;)
men det hjalp ikke, jeg får ikke en mail fra den??
Avatar billede orca Nybegynder
31. januar 2002 - 17:54 #54
Og din mailhost virker?
Avatar billede kane Juniormester
31. januar 2002 - 18:08 #55
ja ja det er min egen
Avatar billede orca Nybegynder
31. januar 2002 - 18:13 #56
Og "mode" er = "send" i din querystring?

Ellers ved jeg ik hvad der kan være galt
Avatar billede kane Juniormester
31. januar 2002 - 19:55 #57
<form method="post" action="domain.asp?mode=send">
her er formen for min email form , som virker.


og her er <form action="modtag.asp?script=gem" method="POST"> for den der gemmer til data basen.
den ene hedder mode=send og den anden er method="POST">
er det ligemeget??
eller?
Avatar billede orca Nybegynder
31. januar 2002 - 20:00 #58
Øhm, jeg forstår ikke rigtig hvad du siger. Det er ligemeget hvilken rækkefølge FROM taggets properties kommer i. Men i den formen som fører til sendmail scriptet skal du huske at skrive ?mode=send

Mvh Mark
--
www.gameshots.dk
Avatar billede kane Juniormester
31. januar 2002 - 21:11 #59
hmmm men der er jo ingen form, jeg vil hente der for den side jeg kommer fra.
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