Avatar billede dank Nybegynder
02. juli 2003 - 17:38 Der er 12 kommentarer og
1 løsning

Forenkle noget kode

hey.. jeg har en lang liste i en form...

<select name=country class="form02">
<option value="">Vælg venligst</option>
<option value=1>Afghanistan</option>
<option value=2>Albania</option>
<option value=3>Algeria</option>
<option value=4>American Samoa</option>
<option value=5>Andorra</option>

Jeg har valget af land i $_POST[country] og søger nu en enkelt metode til at checke om dette er selected.

Jeg har tidligere i et andet script løst det med:

<option value="aaa"
<? if ($_GET[var]=="aaa") {
print "&nbsp;selected";
}
?>
>aaa.dk</option>

Men da jeg denne gang har 257 lande i listen, skal jeg bruge en lettere løsning.

Evt hvis nogen har en eller anden form for løkke, og en SQL database med alle navne.. eller noget tilsvarende smart.
Avatar billede Slettet bruger
02. juli 2003 - 17:45 #1
Brug:
http://www.reginscorner.dk/index.php/Scripts?Dropdowns+-+Selects#array
til at lave din dropdown.
Hvor følgende bruges:
$IdName = array(0=>"Vælg venligst",1=>"Afghanistan",2=>"Albania");
$selected = $_GET['country'];//Eller $_POST
$name='country';
echo DropDownArray($name, $IdName, $selected);
Avatar billede dank Nybegynder
02. juli 2003 - 17:48 #2
jeg er nok nød til at finde en country database mysql tingest.. har 257 lande!
Avatar billede Slettet bruger
02. juli 2003 - 17:50 #3
Avatar billede dank Nybegynder
02. juli 2003 - 17:54 #4
Avatar billede dank Nybegynder
02. juli 2003 - 17:58 #5
regin, kan du hjælpe med at tilpasse din kode til ovenstående database? Jeg kan dog godt selv sætte connect strings ind :)
Avatar billede Slettet bruger
02. juli 2003 - 18:03 #6
Så simpelt kan det gøre! :D

$sql = "SELECT id, name FROM country where 1";
echo DropDownSql('country', $sql, $_POST['country']);
Avatar billede dank Nybegynder
02. juli 2003 - 18:16 #7
gen!alt
Avatar billede dank Nybegynder
02. juli 2003 - 18:23 #8
(selvom jeg har lidt problemer med at få den til at vælge "selected")
Avatar billede Slettet bruger
02. juli 2003 - 18:26 #9
Prøvet at bytte $_POST med $_GET???
Avatar billede dank Nybegynder
02. juli 2003 - 18:29 #10
$sql = "SELECT id, name FROM country where 1";
echo DropDownSql('country', $sql, $_GET['country']);

Skal funktionen have $selected="" nultstiller det ikke hvad der står i $selected?
Avatar billede Slettet bruger
02. juli 2003 - 18:30 #11
Kun hvis du ikke udfylder det tredje parameter ($_GET['country'])...
Avatar billede dank Nybegynder
02. juli 2003 - 18:43 #12
ja.. ved at rode lidt frem og tilbage fik jeg det til at virke..

Mange tak for hjælpen :)
Avatar billede tipsen Nybegynder
02. juli 2003 - 18:55 #13
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