Avatar billede djthomas Nybegynder
19. september 2003 - 09:48 Der er 17 kommentarer og
1 løsning

form og function

Hej jeg har <form> som får sin action fra en funktion som jeg har includeret øverst i min index.php

men hvordan får jeg den til at bruge den function?

eks:

function update(){

.....

}

<form method="post" action="<? $PHP_SELF ?>">
<input type="text" name="noget"><br>
<input type="submit" onClic="update">
</form>

Jeg har lavet min function i mit script men spørgsmålet går simpelthen kun på hvordan for jeg min form til at bruge den funktion jeg har lavet?
Avatar billede sansalvador Nybegynder
19. september 2003 - 09:50 #1
Du skal I scriptet "update()" definere en ny action, så snart du trykker på submit ....

Finder eksempel ..
Avatar billede sansalvador Nybegynder
19. september 2003 - 09:52 #2
Brug dette til at ændre din forms action:

document.forms['dinform'].action = "enandenactionside.php"
Avatar billede sansalvador Nybegynder
19. september 2003 - 09:53 #3
Et svar that were =)
Avatar billede djthomas Nybegynder
19. september 2003 - 09:54 #4
Den er jeg altså ikke helt med på :-(
Avatar billede djthomas Nybegynder
19. september 2003 - 09:57 #5
Kan du forklare lidt bedere?
Avatar billede djthomas Nybegynder
19. september 2003 - 09:59 #6
Det skal lige siges at jeg har MANGE forms på min side, så der skal dælme laves mange forskellige actionfiler. Men har hørt at det smarteste er at lave 1 fil som eks hedder fuknktioner.php og includerer den i toppen af min index.php og bare kalde funktionerne derfra...
Avatar billede djthomas Nybegynder
19. september 2003 - 10:07 #7
Er du der stadig? Eller er der andre der kan hjælpe mig?
Avatar billede sukos Juniormester
19. september 2003 - 10:07 #8
Hvorfor bruge en funktion til at håndtere POST data?
Avatar billede sukos Juniormester
19. september 2003 - 10:07 #9
Og hvordan ser funktionen ud?
Avatar billede djthomas Nybegynder
19. september 2003 - 10:11 #10
function update_forside() {
include ($DOCUMENT_ROOT . "include/mysql.php");

$conn = mysql_connect("$server", "$bruger", "$kodeord");

    mysql_select_db("$database");
   
        mysql_query("UPDATE $table SET header = '$header', text = '$text' WHERE page = 'forsiden'");
   
    mysql_close($conn);
   
    header ("location:" . $DOCUMENT_ROOT . "/admin/");



}
Avatar billede sansalvador Nybegynder
19. september 2003 - 10:12 #11
Ja, det du siger med include er godt. Men det du kan gør, er at lave en funktion, der kan bruges til en masse forskellige forms:

function update(what) {
  if (what == "form1") {
    document.forms['dinform'].action = "side1.php"
  } elseif (what == "form2") {
    document.forms['dinform'].action = "side2.php"
  }
}

Så skriver du bare i din onclick: onclick="update(form1)", og du henvises til side1.php ..

Er du med? :)

 


}
Avatar billede sukos Juniormester
19. september 2003 - 10:13 #12
?
$DOCUMENT_ROOT, er jo den fulde sti, f.eks. c:/minside/public/
(går ud fra du mener $_SERVER["DOCUMENT_ROOT"] )
Avatar billede sansalvador Nybegynder
19. september 2003 - 10:13 #13
og forresten, så behøver du ikke DOCUMENT_ROOT, når du inkluderer filer...
Avatar billede sansalvador Nybegynder
19. september 2003 - 10:14 #14
sukos, men kan gøre begge dele med eller uden SERVER ...
Avatar billede djthomas Nybegynder
19. september 2003 - 10:14 #15
Jammen så skal jeg jo stadig lave en masse forskellige actionfiler skal jeg ikke?
Avatar billede djthomas Nybegynder
19. september 2003 - 10:16 #16
Grunden til at jeg bruger $DOCOMENT_ROOT er at jeg i i den fil som includeres i flere andre filer og har inkluderet filer i den, så den sti vil være meget forskellig hele tiden...
Avatar billede jakoba Nybegynder
19. september 2003 - 10:31 #17
his den form der skal have sin action redefineret er den samme som den submitknappen er i kan du sige:

function update( hvilkenForm ){
    hvilkenForm.action = "derhendu.php";
    .....

}

<form method="post" action="<? $PHP_SELF ?>">
<input type="text" name="noget"><br>
<input type="submit" onClic="update( this.form );return true;">
</form>

Jet har tilføjet 'return true' til din onclick handeler, det gør scriptet brugbart i flere af forskellige browsere.

mvh JakobA
Avatar billede djthomas Nybegynder
19. september 2003 - 10:44 #18
Ok Jacoba svar lige så du kan få dine point... Det virker godt nok stadig ikke, men jeg fandt på en anden løsning :-)
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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