我试图在PHP中做一些非常简单的事情,但不断收到错误消息。基本上,当有人选择" Cat"时,我想要" Miaow"出现。
我的想法是:
<select name="demo">
<option value="Dog">Dog</option>
<option value="Cat">Cat</option>
<option value="Fish">Fish</option>
</select>
<?php if ($_POST['demo'] == 'Cat') { echo 'Miaow'; } ?>
然而,在PHPFiddle中,
一旦代码运行,我得到了E_NOTICE:输入8 - 未定义的索引......&#39;
我错过了什么基本的东西?谢谢!
答案 0 :(得分:1)
您的表单可能是通过$ _GET而不是$ _POST传递数据。 你有没有指定方法?
<form method="post" action="index.php">
<select name="demo">
<option value="Dog">Dog</option>
<option value="Cat">Cat</option>
<option value="Fish">Fish</option>
</select>
<input type="submit" value="Submit">
</form>
您可以var_dump($_POST);
和var_dump($_GET);
查看这些变量在PHP文件中包含的内容。
或者你可以在这样的javascript中完成:
function animal(value) {
if(value == "Cat") {
document.getElementById("myAnimal").innerHTML = "Miaouw";
} else {
document.getElementById("myAnimal").innerHTML = "Rooooah";
}
}
<form action="#">
<select name="demo" onchange="animal(this.value)">
<option value="Dog">Dog</option>
<option value="Cat">Cat</option>
<option value="Fish">Fish</option>
</select>
</form>
<span id="myAnimal"></span>
答案 1 :(得分:0)
也许这会有所帮助,据我所知,我写了一些块......
$enc = "HyS7Nj+c3b3+1kaT6gLpK9kDQS3lIDtYUNQHtz/bLAw=";
echo preg_replace('/\W/', '', $enc);
答案 2 :(得分:0)
是否可以使用PHP执行此操作,以便“Miaow”自动选择,而不必提交表单?
您正在寻找JavaScript代码,而不是PHP。这是一个jQuery示例:
$(document).on('change', '.animals', function(){
$('.noise-target').html( $('option:selected', this).data('noise') );
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select class="animals">
<option>Select</option>
<option data-noise="Woof">Dog</option>
<option data-noise="Meow">Cat</option>
</select>
<div class="noise-target"></div>