Ich versuche, die Option mit PHP auszuwählen, aber mir sind die Ideen ausgegangen!
Unten ist der Code, den ich bis jetzt ausprobiert habe:
<select>
<option value="1">Yes</options>
<option value="2">No</options>
<option value="3">Fine</options>
</select>
<input type="text" value="" name="name">
<input type="submit" value="go" name="go">
Also, was muss ich tun?
Programmierer sind faul ... ähm ... effizient ... ich würde es gerne so machen:
<select><?php
$the_key = 1; // or whatever you want
foreach(array(
1 => 'Yes',
2 => 'No',
3 => 'Fine',
) as $key => $val){
?><option value="<?php echo $key; ?>"<?php
if($key==$the_key)echo ' selected="selected"';
?>><?php echo $val; ?></option><?php
}
?></select>
<input type="text" value="" name="name">
<input type="submit" value="go" name="go">
<select>
<option value="1" <?php if ($myVar==1) echo 'selected="selected"';?>>Yes</options>
<option value="2" <?php if ($myVar==2) echo 'selected="selected"';?>>No</options>
<option value="3" <?php if ($myVar==3) echo 'selected="selected"';?>>Fine</options>
</select>
<input type="text" value="" name="name">
<input type="submit" value="go" name="go">
Dies ist ein sehr einfacher und unkomplizierter Weg, wenn ich Ihre Frage richtig verstehe.
sie können dies verwenden ..
<select name="select_name">
<option value="1"<?php echo(isset($_POST['select_name'])&&($_POST['select_name']=='1')?' selected="selected"':'');?>>Yes</option>
<option value="2"<?php echo(isset($_POST['select_name'])&&($_POST['select_name']=='2')?' selected="selected"':'');?>>No</option>
<option value="3"<?php echo(isset($_POST['select_name'])&&($_POST['select_name']=='3')?' selected="selected"':'');?>>Fine</option>
</select>
Geben Sie Ihrer Auswahl zunächst einen Namen. Dann mach:
<select name="my_select">
<option value="1" <?= ($_POST['my_select'] == "1")? "selected":"";?>>Yes</options>
<option value="2" <?= ($_POST['my_select'] == "2")? "selected":"";?>>No</options>
<option value="3" <?= ($_POST['my_select'] == "3")? "selected":"";?>>Fine</options>
</select>
Was dies tut, ist zu überprüfen, ob das, was ausgewählt wurde, für jedes gleich ist und wann sein gefundenes Echo "ausgewählt" ist.
Ich nehme an, Sie verwenden ein Array, um Ihre select
-Formulareingabe zu erstellen. Verwenden Sie in diesem Fall ein Array:
<?php
$selected = array( $_REQUEST['yesnofine'] => 'selected="selected"' );
$fields = array(1 => 'Yes', 2 => 'No', 3 => 'Fine');
?>
<select name=‘yesnofine'>
<?php foreach ($fields as $k => $v): ?>
<option value="<?php echo $k;?>" <?php @print($selected[$k]);?>><?php echo $v;?></options>
<?php endforeach; ?>
</select>
Wenn nicht, können Sie die obige Schleife einfach abrollen und trotzdem ein Array verwenden.
<option value="1" <?php @print($selected[$k]);?>>Yes</options>
<option value="2" <?php @print($selected[$k]);?>>No</options>
<option value="3" <?php @print($selected[$k]);?>>Fine</options>
Hinweise, die ich nicht kenne:
$_REQUEST
verwendet, Sie müssen den Code gegebenenfalls an die Anforderungen des verwendeten Frameworks anpassen.
In vielen Frameworks ist es üblich, die alternative Syntax in der Ansicht dedizierter Skripts zu verwenden.
Ich benutze Inline-ifs
($_POST['category'] == $data['id'] ? 'selected="selected"' : false)
Ich habe 2 PHP-Dateien und ich habe das gemacht, und es funktioniert. (Dies ist ein Beispiel) Der erste Code stammt aus der einen Datei und der zweite Code aus zwei Dateien.
<form action="two.php" method="post">
<input type="submit" class="button" value="submit" name="one"/>
<select name="numbers">
<option value="1"> 1 </option>
<option value="2"> 2 </option>
<option value="3"> 3 </option>
</select>
</form>
if(isset ($_POST['one']))
{
if($_POST['numbers']=='1')
{
$a='1' ;
}
else if($_POST['numbers']=='2')
{
$a='2' ;
{
else if ($_POST['numbers']=='3')
{
$a='3' ;
}
}