PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   Listboxen und Variablen (http://www.selfphp.de/forum/showthread.php?t=1500)

EoN 30.05.2002 16:41:58

Listboxen und Variablen
 
Hi,


mit fogendem Code erhalte ich ja ein Textfeld welches den Inhalt der Variable $asdf enthält:

<textarea name="asdf"><? echo $asdf; ?></textarea>

Ich bäuchte das ganze jetzt nur noch mit einer Listbox.

Gibts da was ähnliches?

mfg
EoN

|Coding 30.05.2002 17:59:06

hi EoN,

willkommen in SELFPHP forum.


bei einer listbox gehst du genau so vor.

PHP-Code:

<?
$var1 = "eintrag1";
$var2 = "eintrag2";
?>

<select name="name">
    <option><?= $var1; ?></option>
    <option><?= $var2; ?></option>
</select>


EoN 30.05.2002 18:17:25

hm..

Danke aber das löst mein Problem noch nicht wirklich*g*


Ich habe die Listbox schon fertig,
mit den options,
ich möchte jetzt nur standardmäßig eine option ausgewählt haben.

also quasi so:

<select name="name">
<option>option 1</option>
<option>option 2</option>
</select>


eine variable $x, die je nachdem den text option 1 oder option 2 enthält, soll nun auswählen.
so dass wenn der user die seite präsentiert bekommt schon eine vorauswahl getroffen ist.



hoffe so was ist auch möglich ;)
EoN

|Coding 30.05.2002 18:41:38

hi,

ach du willst nur ein vorauswahl?

dann sag das doch :-)

Code:

<select name="name">
    <option selected>option 1</option>
    <option>option 2</option>
</select>

du musst einfach das html attribut "selected" in die option schreiben die standartgemäß ausgewählt sein soll.

und mehr ist da nicht.

EoN 30.05.2002 20:59:32

gut danke :)

daraus resultiert aber noch ein kleines problem

ich hab 22 optionen

und je nachdem was in einer variable drinnensteht soll eine unterschiedliche option gewählt werden. also das selected bei einer option da stehen.
nur wie bekomme ich das ohne umständliche if then else verschachtelungen, möglichst schnell und kurz, hin?!?

mfg
EoN

|Coding 30.05.2002 22:53:55

hi,

also du hast 22 optionen und möchtest variabel eine der optionen gewählt haben?

dafür musst du aber noch noch eine angabe haben und zwar wann, welche option, die standart option sein soll.

könntest du das vielleicht noch etwas deutlicher ausführen?

EoN 30.05.2002 23:19:07

genau

da hab eich noch eine variable in der der text der der option drinnensteht.

|Coding 31.05.2002 01:13:08

hi,

also ich würde es so machen.

Code:

<?
$id = 6; // id 0 = keine auswahl
        // id 1 bis 22 = auswahl der jeweiligen option

if($id == 1)
{
    $var1 = " selected";
}
if($id == 2)
{
    $var2 = " selected";
}
if($id == 3)
{
    $var3 = " selected";
}
if($id == 4)
{
    $var4 = " selected";
}
if($id == 5)
{
    $var5 = " selected";
}
if($id == 6)
{
    $var6 = " selected";
}
if($id == 7)
{
    $var7 = " selected";
}
if($id == 8)
{
    $var8 = " selected";
}
if($id == 9)
{
    $var9 = " selected";
}
if($id == 10)
{
    $var10 = " selected";
}
if($id == 11)
{
    $var11 = " selected";
}
if($id == 12)
{
    $var12 = " selected";
}
if($id == 13)
{
    $var13 = " selected";
}
if($id == 14)
{
    $var14 = " selected";
}
if($id == 15)
{
    $var15 = " selected";
}
if($id == 16)
{
    $var16 = " selected";
}
if($id == 17)
{
    $var17 = " selected";
}
if($id == 18)
{
    $var18 = " selected";
}
if($id == 19)
{
    $var19 = " selected";
}
if($id == 20)
{
    $var20 = " selected";
}
if($id == 21)
{
    $var21 = " selected";
}
if($id == 22)
{
    $var22 = " selected";
}

echo "<select name="name">
    <option value="vari0">bitte auswahl treffen...</option>
    <option value="vari1"$var1>option 1</option>
    <option value="vari2"$var2>option 2</option>
    <option value="vari3"$var3>option 3</option>
    <option value="vari4"$var4>option 4</option>
    <option value="vari5"$var5>option 5</option>
    <option value="vari6"$var6>option 6</option>
    <option value="vari7"$var7>option 7</option>
    <option value="vari8"$var8>option 8</option>
    <option value="vari9"$var9>option 9</option>
    <option value="vari10"$var10>option 10</option>
    <option value="vari11"$var11>option 11</option>
    <option value="vari12"$var12>option 12</option>
    <option value="vari13"$var13>option 13</option>
    <option value="vari14"$var14>option 14</option>
    <option value="vari15"$var15>option 15</option>
    <option value="vari16"$var16>option 16</option>
    <option value="vari17"$var17>option 17</option>
    <option value="vari18"$var18>option 18</option>
    <option value="vari19"$var19>option 19</option>
    <option value="vari20"$var20>option 20</option>
    <option value="vari21"$var21>option 21</option>
    <option value="vari22"$var22>option 22</option>
</select>";
?>

mit $id kannst du die einzelnen optionen ansteuern. wenn es probleme gibt, einfach posten. es geht auch noch einfacher, aber ich habe im moment nicht die zeit das anders zu zeigen.

pInky 31.05.2002 02:18:17

hi EoN

ich hab das bei mir so gelöst

$aTage = array("Tag", "01", "02","03","04","05","06","07","08","09","10","11","12","13","14","15", "16","17","18","19","20","21","22","23","24","25","26","27","28","29", "30","31");
for($i=0; $i<=31; $i++)
{
if($tag == $aTage[$t])
echo "<option selected>$aTage[$t]</option>";
else echo "<option>$aTage[$t]</option>";
}
echo "</select>";

den ganzen text welchen die variable annehmen kann in einem array gespeichert, dann mit for überprüft welche identisch ist und bei der identischen selected eingefügt!

hoffe ich kann dir da mit helfen :)

cu

Limbi 31.05.2002 22:29:20

Da kann ich helfen
 
Ich denke da kann ich helfen!

Nicht immer die längsten Methoden sind die hilfreichsten ;)

<select name="irgendwas" size="10">
<option>irgendwas</option>
<option>irgendwas</option>
<option>irgendwas</option>
<option>irgendwas</option>
<option>irgendwas</option>
<option>irgendwas</option>
</select>

Vergiss das size="" nicht!!

Das bewirkt, dass das ein Listenfeld wird. Also das size bedeutet soviel wie height...

Hoffe das wars...

Limbi


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:53:02 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.