Php 我无法将选择框中的值保存到变量
目前,我有以下联系人表单验证代码,问题是当我按下提交按钮进行表单验证时,它只保存文本字段的值,而不保存我当前选择的“下拉列表”字段值。我希望它在表单出错时保存所有字段,而不是重置它们 我对选择框使用的方法与对文本字段使用的方法相同 对如何实现这一目标有何建议 PHPPhp 我无法将选择框中的值保存到变量,php,html,forms,validation,Php,Html,Forms,Validation,目前,我有以下联系人表单验证代码,问题是当我按下提交按钮进行表单验证时,它只保存文本字段的值,而不保存我当前选择的“下拉列表”字段值。我希望它在表单出错时保存所有字段,而不是重置它们 我对选择框使用的方法与对文本字段使用的方法相同 对如何实现这一目标有何建议 PHP $error = ''; // error message $name = ''; // sender's name $email = ''; // sender's email address $subject
$error = ''; // error message
$name = ''; // sender's name
$email = ''; // sender's email address
$subject = ''; // subject
$message = ''; // the message itself
$spamcheck = ''; // Spam check
$test = ''; // test
$telefon = ""; // telefon
if(isset($_POST['send']))
{
$name = $_POST['name'];
$email = $_POST['email'];
$subject = $_POST['subject'];
$message = $_POST['message'];
$spamcheck = $_POST['spamcheck'];
$test = $_POST['test'];
$telefon = $_POST['telefon'];
}
HTML
<input name="test" type="text" class="detail" id="test" value="<?=$test;?> />
<-- dropdownlist that isn't working --->
<select name="telefon" type="text" class="scroll" id="telefon" value="<?=$telefon;?>>
<option value="-"> </option>
<option value="Epost">E-post </option>
<option value="Telefon">Telefon </option>
</select>
您需要将selected=“selected”
属性应用于选择选项,而不是选择输入本身
由于用户可能已经发布了表单,“选定”值将位于$\u POST['telefon']
中
这看起来有点混乱,但应该可以:
<select name="telefon" type="text" class="scroll" id="telefon">
<option value="-"> Please Choose…</option>
<option value="Epost"<?php echo ($telefon == 'Epost') ? ' selected="selected"' : ''; ?>>E-post</option>
<option value="Telefon"<?php echo ($telefon == 'Telefon') ? ' selected="selected"' : ''; ?>>Telefon</option>
</select>
请选择&hellip;
>电传
这将选择用户以前发布的值。不应该这样做
value="<?=$telefon;?>"
value=“”
但例如
<option value="Epost" <? if($telefon = 'Epost') echo 'selected'; ?>>
替换您的
$telefon = $_POST['telefon'];
为此:
if ($_POST['telefon']) {
if (isset($_POST['telefon'])) {
//echo '1 Row Inserted';
$telefon = $_POST['telefon'];
}
}
=$telefon应该是echo$telefon@tinyByte您可以像这样使用速记回音
(尽管需要打开short_tags
ini设置),感谢您的快速回复。各位朋友,请更具体地说明我需要更改的内容;)=$telefon应该是echo$telefon,您的意思是表单代码应该是“echo$telefon”,而不是值=“?@KurtBertil使用
是一种简写方式,表示您目前拥有它的方式很好。这确实没有解释或回答任何问题。加上链接到a不会为你赢得任何+1'节目,我会这么做吗^ ^?我第一次使用这个网站;P@KurtBertil这就是你的想法