Avatar billede mho30 Nybegynder
01. maj 2006 - 14:22 Der er 5 kommentarer

Gem og udskriv værdierne i en selectbox

Jeg er ved at lave en simple kalenderfunktion ved hjælp af selectboxe. Der er 3 selectboxe, en for dag, en for måned og en for år. Ved siden af sidder en vælgknap, som skal registrere de valgte værdier og skrive dem ved siden af. Når siden så submittes til databasen, skal de skrevne værdier lagres som en tekststreng i databasen. Håber det giver mening for Jer?

Spørgsmålet er nu, om jeg kan lave det som en onClick på vælgknappen, og hvad skal der stå i den funktion?

Håber I kan hjælpe..
Avatar billede ffsoft Praktikant
01. maj 2006 - 14:37 #1
Når du submitter kan du aflæse værdierne i select boksene ved hjælp af request.form


strDag = request.form("cboDag")
strMaaned = request.form("cboMaaned")
strAar = request.form("cboAar")
datDato = cdate(strDag & -" & strMaaned & "-" & strAar)
response.write datDato

Det kræver at du har <form> tags og at du inden for disse form tags
har tre selsct bokse (cboDag, cboMaaned og cboAar) samt en submit
knap. Du skal bruge metoden POST og submitte til samme eller en anden
side.

Hvilket datoformat du skal bruge til databasen er afhængig af hvilken
database der er tale om. Access har formatet mm-dd-yyyy og mySQL har
formatet yyyy-mm-dd.

Du skal være opmærksom på at brugerne kan vælge en ikke eksiterende
dato som f. eks. 31-02-2006
Avatar billede mho30 Nybegynder
01. maj 2006 - 14:47 #2
Det hele ligger allerede i en form, jeg har omdøbt selctboksene til cbo...

Strengen skal ikke gemmes som datoformat, blot almindelig tekstformat.

Jeg har forsøgt at oprette en function saveDate()
Du kan se hele filen her..

<!--#include file ="../../opendb.asp"-->
<!--#include file ="../../LoginTest.asp"-->

<html>
<head>
<link rel="stylesheet" type="text/css" href="../../../style.css">

<script language="javascript">
function checkEmpty(thisElement)
{
if (document.getElementById(thisElement).value == "")
  return true;
else
  return false;
}

function formvalidation(thisform)
{
if (checkEmpty("Kamp"))
    {
    alert("Du mangler at skrive hvem der har spillet!");
    document.getElementById("Kamp").focus();
    return false;
    }
else if (checkEmpty("Score"))
    {
    alert("Du mangler at skrive en score for kampen!");
    document.getElementById("Score").focus();
    return false;
    }
else if (checkEmpty("Dato"))
    {
    alert("Du mangler at skrive en dato!");
    document.getElementById("Dato").focus();
    return false;
    }

else
  return true;
}

function saveDate()
{
strDag = request.form("cboDag")
strMaaned = request.form("cboMaaned")
strAar = request.form("cboAar")
datDato = cdate(strDag & -" & strMaaned & "-" & strAar)
response.write datDato



}

</script>
</head>

<body bgcolor="#999966">
<FORM method="POST" name="kampForm" ACTION="kampSubmit.asp" onsubmit="return formvalidation(this)">
    <table border="0" cellpadding="3" cellspacing="0" width="100%" height="100%"  align="center" valign="middle">
    <tr>
        <td valign="top">
            <table border="0" height="100%">
            <tr>
                <td width="200" align="left" valign="top">
                    <font face=Verdana size=2><b>Kampe spillet i [CoZe]</b><br>
                    <font face=Verdana size=1><p align="justify">
                    Herfra kan du oprette, redigere og slette kampe spillet i [CoZe]. </p>

                </td>
            </tr>
            <tr>
                <td height="" align="center" valign="top">
                    <A HREF="#"
                    onClick="java script:if (formvalidation(this)) document.kampForm.submit();">
                    <img border="0" src="../../Billeder/buttonOpret.gif" width="81" height="20" cursor="hand">
                    </A>
        <br><br>
                    <A HREF="kampeRed.asp">
                    <img border="0" src="../../Billeder/buttonRed.gif" width="81" height="20" cursor="hand">
                    </A>
        <br><br>
                    <A HREF="kampDel.asp">
                    <img border="0" src="../../Billeder/buttonSlet.gif" width="81" height="20" cursor="hand">
                    </A>

                </td>
            </tr>
            <tr>
                <td align="center">&nbsp;
                <% if request.queryString("update") ="true" THEN %>
                    <font face="Verdana" size="1"><b>Kampen er nu oprettet!</b>
                <% end if %>
                </td>
            </tr>

            </table>
        </td>
          <td width="150" align="center"valign="top">
          <table border="0" bordercolor="#D42222"  width="100%" height="100%" cellpadding="0" cellspacing="0">
          <tr><td colspan="2"><font face=Verdana size=1><b>Kamp: </b> &nbsp;&nbsp;&nbsp;Start med [CoZe] VS </font></td></tr>
          <tr><td colspan="2"><input type=text name="Kamp" value="<%=request.QUERYSTRING("Kamp") %>" size="60"></td></tr>

          <tr><td colspan="2"><font face=Verdana size=1><b>Score: </b></font></td></tr>
          <tr><td colspan="2"><input type=text name="Score" value="<%=request.QUERYSTRING("Score") %>" size="60"></td></tr>

          <tr><td colspan="2"><font face=Verdana size=1><b>Dato: </b></font></td></tr>
          <tr><td colspan="2">

          <table align="left" border="0" width="99%">
          <tr>
          <td valign="top" width="200">
                <select size="1" name="cboDag" style="font-family: Verdana; font-size: 10px">
                    <option selected>Dag</option>
                    <option>1</option>
                    <option>2</option>
                    <option>3</option>
                    <option>4</option>
                    <option>5</option>
                    <option>6</option>
                    <option>7</option>
                    <option>8</option>
                    <option>9</option>
                    <option>10</option>
                    <option>11</option>
                    <option>12</option>
                    <option>13</option>
                    <option>14</option>
                    <option>15</option>
                    <option>16</option>
                    <option>17</option>
                    <option>18</option>
                    <option>19</option>
                    <option>20</option>
                    <option>21</option>
                    <option>22</option>
                    <option>23</option>
                    <option>24</option>
                    <option>25</option>
                    <option>26</option>
                    <option>27</option>
                    <option>28</option>
                    <option>29</option>
                    <option>30</option>
                    <option>31</option>
                </select>

                <select size="1" name="cboMaaned" style="font-family: Verdana; font-size: 10px">
                    <option selected>Måned</option>
                    <option>Januar</option>
                    <option>Februar</option>
                    <option>Marts</option>
                    <option>April</option>
                    <option>Maj</option>
                    <option>Juni</option>
                    <option>Juli</option>
                    <option>August</option>
                    <option>September</option>
                    <option>Oktober</option>
                    <option>November</option>
                    <option>December</option>
                </select>

                <select size="1" name="cboAar" style="font-family: Verdana; font-size: 10px">
                    <option selected>År</option>
                    <option>2005</option>
                    <option>2006</option>
                    <option>2007</option>
                </select>
        </td>
        <td valign="bottom" align="center" width="90">
                <A HREF="#" onclick="saveDate()">
                <img border="0" src="../../Billeder/buttonVælg.gif" width="81" height="20" cursor="hand">
                </A>
        </td>
        <td valign="middle">
                <input type=hidden name="dato" value="" size="30">
        </td>
        </tr>
        </table>
          </td></tr>

          <tr><td colspan="2"><font face=Verdana size=1><b>Blev kampen spillet i SLAP.dk? </b>&nbsp;&nbsp;Sæt kryds for ja</font>&nbsp;&nbsp;&nbsp;&nbsp; <input type="checkbox" name="Slap" value="on"></td>
          </tr>
          </table>
          </td>
    </tr>
    </table>

</FORM>
</body>
</html>
Avatar billede ffsoft Praktikant
01. maj 2006 - 15:17 #3
Den funktion du laver, som du kalder savedate er jo en javascript ting.
Jeg tror ikke du kan arbejde mod en database med javascript. Du kan
godt lave datahøst og samle datoen i en variabel, som du så afleverer til
.asp koden, men når der skal skrives til database skal du bruge .asp.
Avatar billede mho30 Nybegynder
01. maj 2006 - 15:22 #4
jep, kan du hjælpe mig med hvordan?

Funktionen ser nu således ud:

function saveDate(thisform)
{
strDag = request.kampForm("Dag")
strMaaned = request.kampForm("Maaned")
strAar = request.kampForm("Aar")
datDato = cdate(strDag & "-" & strMaaned & "-" & strAar)
response.write (datDato);

}

Knappen ser således ud:

                <A HREF="#" onclick="saveDate(this)">
                <img border="0" src="../../Billeder/buttonVælg.gif" width="81" height="20" cursor="hand">
                </A>
Avatar billede ffsoft Praktikant
01. maj 2006 - 20:58 #5
Jeg må melde pas, har ingen ide om hvordan man submitter ved hjælp
af javascript, men det må blive noget som dette:

<%
if request.ServerVariables("CONTENT_LENGTH") > 0 then
'** Opsamling af data og skrivning til database
else
%>
<FORM onSubmit="validering()" method="post" action="#">

selectbokse og submitknap

</form>
<% end if %>
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