Avatar billede Slettet bruger
14. maj 2001 - 10:33 Der er 30 kommentarer og
1 løsning

overføre variabler mellem 2 formularer....

hejsa!

hvordan kan man lave en formular, som enten kan vise en bruger eller slette en bruger, med kun et indtastningsfelt?
Avatar billede sbm Nybegynder
14. maj 2001 - 10:45 #1
Du bliver vist nød til at specificere lidt.

Du vil have ET indtastningfelt - f.eks. til at brugernavn - og så skal man både kunne vise eller slette...? Skal det være random om den gør det ene eller det andet? :-)

Du skal som minimum have en radio-button hvor man vælger om brugeren skal vises eller slettes, men jeg ved ikke om det netop var det du ville vide? At du kun vil have et INDTASTNINGS-felt, og så X antal andre input-typer til valg af hvad der skal gøres med det indtastede...?

<input type=text name=navn>
<input type=radio name=radiovalg value=vis selected>
<input type=radio name=radiovalg value=slet>

Smag på om variablen radiovalg er sat til vis eller slet, og tag så brugernavnet, og gør det med ham som brugeren har valgt.
Avatar billede Slettet bruger
14. maj 2001 - 10:51 #2
Det er meningen at man skal præsenteres for et skærmbillede hvor man har mulighed for at søge efter et brugernavn i en access db, og så skal der være TO knapper.

1. knap: vis bruger
2. knpa: slet bruger

Afhængigt om man trykker på den ene eller den anden knap skal den vis/slette  den bruger der er skrevet i inputfeltet. Men jeg vil kun have ET inputfelt, ikke et til hver knap.
Avatar billede hooh Nybegynder
14. maj 2001 - 10:55 #3
function slet()
{
//
}

function vis()
{
//
}

<input type=\"button\" name=\"Slet\" onclick=\"slet()\">
<input type=\"button\" name=\"vis\" onclick=\"vis()\">



Avatar billede hooh Nybegynder
14. maj 2001 - 10:59 #4
Der var lige et par fejl i den anden...denne her er bedre....


<form method=\"get\">
// alle dine inputfelter

<input type=\"submit\" name=\"valg\" value=\"Slet\">
<input type=\"submit\" name=\"valg\" Value=\"vis\">

</form>

///////////

If Request.querystring(\"valg\")=\"Slet\" Then
SQL = \"Delete from.....\"
else
SQL = \"Select * from.....\"
end if

Avatar billede Slettet bruger
14. maj 2001 - 10:59 #5
Formularen skal submittes til ***.asp og behandles der, så den løsning holder vist ikke, eller hva?
Avatar billede Slettet bruger
14. maj 2001 - 11:01 #6
den prøver jeg lige.... :)
Avatar billede tofte Juniormester
14. maj 2001 - 11:01 #7
Du laver bare en formular med to submit knapper. Den ene kalder du vis og den anden slet, eller hvad du nu syntes.
<input type=\"submit\" name=\"knap\" value=\"Vis\">
<input type=\"submit\" name=\"knap\" value=\"Slet\">

på side nr. 2, laver du følgende forspørgsel
action_knap=request.form(\"knap\") eller action_knap=request.querystring(\"knap\"), alt efter metoden.
Hvis action_knap er lig slet ja så giver det vist sig selv resten.....
Avatar billede hooh Nybegynder
14. maj 2001 - 11:04 #8
jo hvis du overfører den næste side så skal du bare skrive dette på næste side


If Request.querystring(\"valg\")=\"Slet\" Then
SQL = \"Delete from.....\"
else
SQL = \"Select * from.....\"
end if
Avatar billede hooh Nybegynder
14. maj 2001 - 11:05 #9
Du sender knappens værdi videre til næste side.. og udfører den handling som er valgt
Avatar billede Slettet bruger
14. maj 2001 - 11:45 #10
Jeg har prøvet dit forslag med følgende kode, men der opstår en syntax error ved \"else\"-delen, hvorfor??

bnavn = Request.form(\"navn\");
sql_kald = \"SELECT * FROM bruger WHERE brugernavn=\'\" + bnavn + \"\'\";
res = connection.Execute(sql_kald);
nv = res(\"brugernavn\");
em = res(\"email\");
pas = res(\"kode\");
res = connection.Execute(sql_kald);
If (Request.form(\"valg\")=\"vis\") 
  {   
    Response.Write(\"Følgende bruger er fundet:\");
    Response.Write(\"Brugernavn: \"+ nv);
    Response.Write(\"Email: \" + em);
    Response.Write(\"Kode: \" +pas);
  }
else
  {
    sql_kald = \"DELETE FROM bruger WHERE brugernavn=\'\" + bnavn + \"\'\";
    connection.Execute(sql_kald);
    Response.Write(\"Følgende bruger er slettet:\");
    Response.Write(\"Brugernavn: \"+ navn);
    Response.Write(\"Email: \" + em);
    Response.Write(\"Kode: \" +pas);
  }
Avatar billede tofte Juniormester
14. maj 2001 - 11:55 #11
Det er ikke så mærkeligt, du bruger den syntax man anvender i javascript.
bnavn = Request.form(\"navn\")
sql_kald = \"SELECT * FROM bruger WHERE brugernavn=\'\" + bnavn + \"\'\"
res = connection.Execute(sql_kald)
nv = res(\"brugernavn\")
em = res(\"email\")
pas = res(\"kode\")
res = connection.Execute(sql_kald)
If (Request.form(\"valg\")=\"vis\") then
     
    Response.Write(\"Følgende bruger er fundet:\")
    Response.Write(\"Brugernavn: \"+ nv)
    Response.Write(\"Email: \" + em)
    Response.Write(\"Kode: \" +pas)
 
else
 
    sql_kald = \"DELETE FROM bruger WHERE brugernavn=\'\" + bnavn + \"\'\"
    connection.Execute(sql_kald)
    Response.Write(\"Følgende bruger er slettet:\")
    Response.Write(\"Brugernavn: \"+ navn)
    Response.Write(\"Email: \" + em)
    Response.Write(\"Kode: \" +pas)
end if

Jeg er ikke sikker på at ovenstående virker, men det er i hvert fald tættere på det endelige resultat:-)
Avatar billede Slettet bruger
14. maj 2001 - 11:58 #12
Nu er det altså meningen at det skal laves i JavaScript :)

Hvad er der mon galt??
Avatar billede hooh Nybegynder
14. maj 2001 - 11:58 #13
ja eller ....
Jeg har prøvet dit forslag med følgende kode, men der opstår en syntax error ved \"else\"-delen, hvorfor??

bnavn = Request.form(\"navn\");
sql_kald = \"SELECT * FROM bruger WHERE brugernavn=\'\" + bnavn + \"\'\";
res = connection.Execute(sql_kald);
nv = res(\"brugernavn\");
em = res(\"email\");
pas = res(\"kode\");
res = connection.Execute(sql_kald);
If (Request.form(\"valg\")=\"vis\") 
  {   
    Response.Write(\"Følgende bruger er fundet:\");
    Response.Write(\"Brugernavn: \"+ nv);
    Response.Write(\"Email: \" + em);
    Response.Write(\"Kode: \" +pas);
  }
If (Request.form(\"valg\")=\"Slet\") 
  {
    sql_kald = \"DELETE FROM bruger WHERE brugernavn=\'\" + bnavn + \"\'\";
    connection.Execute(sql_kald);
    Response.Write(\"Følgende bruger er slettet:\");
    Response.Write(\"Brugernavn: \"+ navn);
    Response.Write(\"Email: \" + em);
    Response.Write(\"Kode: \" +pas);
  }
Avatar billede hooh Nybegynder
14. maj 2001 - 12:00 #14
hehe kom til at copy-paste en linie for meget :)
Avatar billede Slettet bruger
14. maj 2001 - 12:14 #15
nu brokker den sig over:
If (valg == \"vis\")

den forventer et objekt. er det ham fetter guf til bill gates der fucker mig nu, eller hvad faen sker der her???
Avatar billede Slettet bruger
14. maj 2001 - 12:17 #16
ovenstående var forkert!

Den viser følgende fejl:

Microsoft JScript runtime error \'800a01b6\'

Object doesn\'t support this property or method

/letcom/admin/vis1.asp, line 13
Avatar billede hooh Nybegynder
14. maj 2001 - 12:41 #17
If (Request.form(\"valg\")==\"vis\")
{
}

Avatar billede Slettet bruger
14. maj 2001 - 12:41 #18
var den for svær?? :)
Avatar billede Slettet bruger
14. maj 2001 - 12:44 #19
he he.......

Microsoft JScript runtime error \'800a138f\'

Object expected

/letcom/admin/vis1.asp, line 13
Avatar billede hooh Nybegynder
14. maj 2001 - 12:44 #20
den burde da være meget simpel....

virker den stadig ikke??
Avatar billede Slettet bruger
14. maj 2001 - 12:45 #21
nej, den kommer nu med denne fejl:

Microsoft JScript runtime error \'800a138f\'

Object expected

/letcom/admin/vis1.asp, line 13
Avatar billede hooh Nybegynder
14. maj 2001 - 12:45 #22
hvad står der på linie 13
Avatar billede Slettet bruger
14. maj 2001 - 12:54 #23
der står:

13 If (Request.QueryString(\"valg\")==\"Vis\") 
14  {   
15    Response.Write(\"Følgende bruger er fundet:\");
16    Response.Write(\"Brugernavn: \"+ nv);
17    Response.Write(\"Email: \" + em);
18    Response.Write(\"Kode: \" +pas);
19  }
Avatar billede hooh Nybegynder
14. maj 2001 - 13:02 #24
if (Request.querystring(\"valg\")==\"Vis\") 
{   
Response.Write(\"Følgende bruger er fundet:\");
Response.Write(\"Brugernavn: \"+ nv);
Response.Write(\"Email: \" + em);
Response.Write(\"Kode: \" +pas);
}

denne burde virke
Avatar billede hooh Nybegynder
14. maj 2001 - 13:03 #25
JavaScript er casesensitive

\"If\" skal være if

Request.querystring skal vist stå sådan
Avatar billede hooh Nybegynder
14. maj 2001 - 13:05 #26
og husk når du sender \"Vis\"- over så skal knappen også hedde Vis

altså med stort V
Avatar billede hooh Nybegynder
14. maj 2001 - 13:07 #27
denne her er testet

fil1.asp
****************************
<form method=\"get\" action=\"fil2.asp\">
<input type=\"submit\" name=\"valg\" value=\"Slet\">
<input type=\"submit\" name=\"valg\" Value=\"vis\">
</form>
*******************************

fil2.asp
*******************************
<% @language=\"JavaScript\" %>

<%
if (Request.querystring(\"valg\")==\"vis\") 
{   
    Response.Write(\"VIS\");
  }
if (Request.querystring(\"valg\")==\"Slet\") 
  {
    Response.Write(\"Slettet\");
  }
%>

**********************************
Avatar billede hooh Nybegynder
14. maj 2001 - 13:33 #28
virker det nu??
Avatar billede Slettet bruger
14. maj 2001 - 13:38 #29
Ja nu virker det! Det har det nok i virkeligheden gjort siden jeg rettede \"If\" til \"if\", men nogle gange bliver navnet ikke overført til .asp siden. Det gør det så næste gang man trykker \"Vis\"!!

Tak for hjælpen!
Avatar billede Slettet bruger
14. maj 2001 - 13:40 #30
hooh: Håber du fik dine points :)
Avatar billede hooh Nybegynder
14. maj 2001 - 13:45 #31
Tak for pointene..

Håber du kan klare det med navnet ikke bliver overført første gang...ellers må du lige forklare nærmere..så kan vi prøve at se på det
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