我试图解决这个问题,但我无法,我需要一些帮助:我正在处理一个表单,有两个输入类型提交:一个增加+1,另一个减少-1,从零开始(这是下限)到5(这是上限)。
所以,首先,值是零,我应该不能减少它,只是增加它。一旦我到了5岁,我也就不能再增加了,只是把它减少了。
显然,限制范围5是一个例子,我需要这个值是一个变量。此表单对于显示文件夹中的文件之类的项目非常有用。任何帮助都是非常感谢的。
<style>
.big_form{
position: relative;
width: 500px;
margin: 0 auto;
}
.select_less{
float: left;
}
.select_more{
float: right;
}
.center{
margin: 0 auto;
position: relative;
text-align: center;
}
</style>
<?php
if(isset($_POST['freak'])){
if(isset($_POST['more'])){
$current_value=$_POST['freak']+1;
}else{
$current_value=$_POST['freak']-1;
}
}else{
$current_value=0;
}
echo("<div class='center'>". $current_value ."</div>");
echo("<br/>");
?>
<div class="big_form">
<form method="post">
<input type="hidden" name="freak" value="<?php echo($current_value);?>"/>
<input class="select_less" type="submit" name="less" value="less"/>
<input class="select_more" type="submit" name="more" value="more"/>
</form>
</div>警局。在我这里所做的这种形式中,0到5之间没有限制范围。
发布于 2014-11-10 02:45:51
只需通过当前使用的$_POST值读取该值,然后添加一个检查值是否小于0或大于5:
<?php
// simple initialization
$freak = 0;
// if action is submitted
if(isset($_POST['submit'])) {
$freak = $_POST['freak'];
$action = $_POST['submit'];
if($action == 'less') {
$freak = ($freak - 1 < 0) ? 0 : $freak - 1;
} elseif($action == 'more') {
$freak = ($freak + 1 > 5) ? 5 : $freak + 1;
}
}
?>
<div class="big_form">
<form method="post">
<input type="text" name="freak" value="<?php echo $freak; ?>" /><br/>
<button type="submit" name="submit" value="less">Less</button>
<button type="submit" name="submit" value="more">More</button>
</form>
</div>或者,您也可以使用会话,以便您的值将保持不变。然后你可以做负数和正数。简单的例子:
<?php
session_start();
// simple initialization
if(!isset($_SESSION['freak'])) {
$_SESSION['freak'] = 0;
}
// if action is submitted
if(isset($_POST['submit'])) {
$action = $_POST['submit'];
if($action == 'less') {
$_SESSION['freak'] = ($_SESSION['freak'] - 1 < 0) ? 0 : $_SESSION['freak'] - 1;
} elseif($action == 'more') {
$_SESSION['freak'] = ($_SESSION['freak'] + 1 > 5) ? 5 : $_SESSION['freak'] + 1;
}
}
?>
<div class="big_form">
<form method="post">
<input type="text" name="freak" value="<?php echo $_SESSION['freak']; ?>" /><br/>
<button type="submit" name="submit" value="less">Less</button>
<button type="submit" name="submit" value="more">More</button>
</form>
</div>样本输出
https://stackoverflow.com/questions/26835709
复制相似问题