用户在文本框中输入一个数字,并根据使用 PHP 输入的数字重定向到另一个网页
User enters a number in a textbox and is redirected to another webpage based on the number entered using PHP
我正在尝试创建一个文本框,用户可以在其中输入数字,单击按钮并根据用户输入的数字使用PHP重定向到另一个网页。我不确定为什么这不起作用。您可以将以下代码保存在 PHP 文件中。如果您有任何想法,请告诉我。如果您有另一种使用javascript,jQuery或其他语言进行此类重定向的方法,请告诉我。多谢。有好的一天。五.
<?php
$textboxdata = $_POST['textboxdata'];
if (isset($_POST['$textboxdata'])) {
switch ($textboxdata)
{
case 1:
header("Location: one.php");
break;
case 2:
header("Location: two.php");
break;
case 5:
header("Location: five.php");
break;
default:
echo "Enter a number please.";
}
}
?>
</head>
<body>
<FORM NAME ="form" METHOD ="post" ACTION = "">
<INPUT TYPE = "TEXT" VALUE ="username" METHOD ="post" name="textboxdata" >
<INPUT TYPE = "Submit" Name = "submit" VALUE = "Login">
</FORM>
</body>
</html>
这里面有一个美元符号,不会计算为 true:
if (isset($_POST['$textboxdata'])) {
它应该是:
if (isset($_POST['textboxdata'])) {
您可能还需要$_POST
数据的整数值,因此请更改以下内容:
$textboxdata = $_POST['textboxdata'];
对此:
$textboxdata = intval( $_POST['textboxdata']);
因为请记住,用户可以在该框中键入任何内容,而不仅仅是数字。您可能希望在未来研究更多的投入卫生。
最后,您希望在所有这些header()
调用之后exit()
(Location
值应该是完整的 URL,而不是相对 URL)。您要exit()
的原因是您希望脚本停止处理。
header("Location: one.php");
exit();
我怀疑这是问题所在:
if (isset($_POST['$textboxdata'])) {
应该是:
if (isset($_POST['textboxdata'])) {
好吧,看到您将$_POST['textboxdata'];
分配给$textboxdata
我会做到
$textboxdata = $_POST['textboxdata'];
if (isset($textboxdata)) {
switch ($textboxdata)
如果未通过初始赋值设置$textboxdata
则不会命中 switch 语句。
如果你有另一种使用javascript,jQuery进行这种重定向的方法, 或其他语言,请告诉我。
j查询解决方案:
<input type="text" value="username" id="inpt" />
<input type="button" value="login" id="btn" />
<script type="text/javascript">
$(function() {
$("#btn").on('click', function() {
var value = $("#inpt").val();
if (value.length) {
switch (parseInt(value, 10)) {
case 1:
document.location.href = "one.php";
break;
case 2:
document.location.href = "two.php";
break;
case 5:
document.location.href = "five.php";
break;
default:
alert("Enter a number please.");
}
}
});
});
</script>
相关文章:
- 我想在AngularJS应用程序中创建一个输入数字框,用户不应该在该框上键入十进制数字.(一个整数输入框)
- 在javascript中确定输入数字是负数还是正数
- JQM simpledialog:如何提示输入数字
- 如何在jquery+javascript中只在输入框中输入数字(使用regex)
- 我的角度形式输入[数字]验证不起作用
- Angular2 Javascript 验证 输入数字而不是字符
- Javascript提示和警报输入一个数字,它将循环,您将输入数字以获得它的平均值
- 阻止在文本输入中输入数字
- 阻止在文本区域/文本框中输入数字
- javascript中的函数重载使两个函数名称相同,但输入数字不同
- 如何允许用户只输入数字和字母
- 接收输入数字,直到用户输入零.然后输出最高.JavaScript
- 限制输入数字小数点前后的数字
- 显示给定输入数字的数据集中字母表的所有可能组合
- 如何通过输入数字值动态添加文本区域输入?AngularJs.
- 如何在文本字段中输入数字时立即打印结果
- 在文本框中仅输入数字
- AngularJs ngModel 值在使用 IME 日语输入数字时重复Microsoft
- 使用输入数字值作为另一个字段的输入数字最大值
- 我如何在文本输入字段中输入数字,而无需在 JavaScript 或 jQuery 中输入模式