Avatar billede seals12345 Nybegynder
09. september 2007 - 14:55 Der er 9 kommentarer og
1 løsning

Værdi i select felt skal vises med det samme.

Hey, Hvordan kan jeg få værdien til at opdateret med det samme i en select form?

<select name="valgside">
<option <? if($_POST['valgside'] == "page1"){ echo "selected"; } ?> value="page1">Page1
<option <? if($_POST['valgside'] == "page2"){ echo "selected"; } ?> value="page2">Page2
</select>

Så værdien bliver vist med det samme, uden man man først skal trykke på en "post submit"
Avatar billede thesurfer Nybegynder
09. september 2007 - 15:08 #1
Det forstod jeg ikke.. :-)

Du mangler også at afslutte dine options med </option>..


Kan du give et eksempel på det du vil..?
Avatar billede michael_stim Ekspert
09. september 2007 - 15:14 #2
<select name="valgside" onChange="this.form.submit();">
Noget a lá det?
Avatar billede thesurfer Nybegynder
09. september 2007 - 15:16 #3
michael_stim> Ahh.. nu giver det mening.. :-)
Avatar billede seals12345 Nybegynder
09. september 2007 - 15:21 #4
:-)

Præcis det jeg tænkte på.

Smid du bare svar.
Avatar billede michael_stim Ekspert
09. september 2007 - 15:51 #5
Ellers tak, samler ikke på point ;o) Smid du bare et svar selv og accepter.
Avatar billede seals12345 Nybegynder
09. september 2007 - 17:54 #6
Mange tak michael :-) men der opstod lige et problem.

Har prøvet at sætte onChange="this.form.submit(); ind i denne kode, men der opstår et problem. Den går nemlig automatisk ind og sætter blank side i databasen, på den side man skifter til.

Ideen med koden, er at man skal kunne rette sider.

Og når man vælger en side (page1, page2 ...-> page 5) kommer sidens tekst direkte over i textarea feltet.

Men da onChange="this.form.submit(); går ind og sætter en blank side, kan jeg ikke hente noget tekst ud :)

############################

<?php
$page  =  $_POST["valgside"];
if ($_SERVER["REQUEST_METHOD"] == "POST") {
mysql_query("UPDATE `pages` SET `$page` = '$_POST[$page]'") or die(mysql_error());
}

$opdater = mysql_query("SELECT * FROM `pages` WHERE `id` = '1'") or die(mysql_error());
while ($row = mysql_fetch_array($opdater)) {

$side1 = $row[page1];
$side2 = $row[page2];
$side3 = $row[page3];
$side4 = $row[page4];
$side5 = $row[page5];
?>



<form method="post" enctype="multipart/form-data">
Vælg side:<br>
<select name="valgside" onChange="this.form.submit();">
<option <? if($_POST['valgside'] == "page1"){ echo "selected"; } ?> value="page1">Page1
<option <? if($_POST['valgside'] == "page2"){ echo "selected"; } ?> value="page2">Page2
<option <? if($_POST['valgside'] == "page3"){ echo "selected"; } ?> value="page3">Page3
<option <? if($_POST['valgside'] == "page4"){ echo "selected"; } ?> value="page4">Page4
<option <? if($_POST['valgside'] == "page5"){ echo "selected"; } ?> value="page5">Page5
</select><br><br>

Rediger siden:<br>
<textarea name="<?php echo $page ?>" class="textarea" rows="1" cols="20">
<?php 
if($_POST['valgside'] == "page1"){ echo $side1; } else
if($_POST['valgside'] == "page2"){ echo $side2; } else
if($_POST['valgside'] == "page3"){ echo $side3; } else
if($_POST['valgside'] == "page4"){ echo $side4; } else
if($_POST['valgside'] == "page5"){ echo $side5; } ?>
</textarea><br><br>
<input type="submit" name="gem" value="Opdater side" class="submit"><input type="reset" value="Fortryd" class="submit">

<?php
}
?>


Håber du kan hjælpe :)
Avatar billede michael_stim Ekspert
09. september 2007 - 22:17 #7
Måske noget med 2 forme.

Og så checke om der bliver klikket på "gem".

Altså 2 isset.

I toppen:
if(isset($_POST['gem'])){
Din kode
}

og i form 2:
if(isset($_POST['valgside'])){
din text area
}

Men det kan laves smartere med javascript. Så slipper du for at siden reloader hver gang du vælger side.
Avatar billede seals12345 Nybegynder
10. september 2007 - 14:52 #8
Det virkede sku :) mange tak for hjælpen.

syntes du skal smide et svar, så du kan få nogle velfortjente point.
Avatar billede michael_stim Ekspert
10. september 2007 - 14:55 #9
Som sagt, samler ikke på point. Bliver hverken mæt eller rig af dem ;o)
Avatar billede seals12345 Nybegynder
10. september 2007 - 16:23 #10
nej desvære :)..


Så lukker jeg her. tak
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