Php 如果是,那怎么办?
这是我的PHP代码 我在代码部分的注释中提到的问题点Php 如果是,那怎么办?,php,Php,这是我的PHP代码 我在代码部分的注释中提到的问题点 if(isset($_POST['submit'])) { if(isset($_POST['rdoption1'])) { $var1 = $_POST["rdoption1"]; } if(isset($_POST['rdoption2'])) { $var2 = $_POST["rdoption2"]; } if(!isset($_POST['rdo
if(isset($_POST['submit']))
{
if(isset($_POST['rdoption1']))
{
$var1 = $_POST["rdoption1"];
}
if(isset($_POST['rdoption2']))
{
$var2 = $_POST["rdoption2"];
}
if(!isset($_POST['rdoption1']))
{
$message = "Please select Option1";
}
elseif(!isset($_POST['rdoption2']))
{
$message = "Please select Option2";
}
elseif($_POST['rdoption2'] == "checkSetXY")
{
if($_POST["valXLocation"] == "")
{
$message = "You forget to enter X value.";
}
elseif($_POST["valYLocation"] == "")
{
$message = "You forget to enter Y value.";
}
} // till here all is good. I get all error messages if anything is left vacant or not clicked on radio button
elseif(empty($_POST['txtoption3'])) //this is not working //the issue is if i select rdoption1 any option and rdoption2 checkDefault next code logic work.. but next code logic does not work when i click on the radio of checkSetXY and enter x and y values.. It simply does not execute code further..
{
$message = "Please enter your name.";
}
else
{
//insert into db
}
}
这是带有PHP echos的html表单
在这里,我得到的消息应该在哪里,但当我选择checkSetXY
value时就没有了
<?php if(!empty($message)){ echo $message; } ?>
<form id="form1" name="form1" method="post" action="form1.php">
Space portion:
<input type="radio" name="rdoption1" value="RJ"/>space 1
<input type="radio" name="rdoption1" value="SM" />space 2
Pixel Location
<div class="formText">
<input type="radio" name="rdoption2" value="checkSetXY"/> Specify Location
X: <input type="text" id="locField" name="valXLocation">
Y: <input type="text" id="locField" name="valYLocation">
<input type="radio" name="rdoption2" value="checkDefault"/>Default
<input type="text" class="input" name="txtoption3">
<input type="submit" name="submit" value="Submit">
</form>
空间部分:
空间1
空间2
像素位置
指定位置
X:
Y:
违约
现在我很困惑,为什么它不使用txtoption3
有什么帮助吗?提前感谢这不起作用,因为它总是被设置好的。因此,使用
empty()代码>
解释
您正在发布表单input
。当您发送它而不填充任何内容时,它只发送此值<代码>“”
空字符串不等于null
或未设置
另外,如前所述,请查看。这是的else
如果($_POST['rdoption2']==“checkSetXY”)
我猜这是真的,所以它不会进入到其他文本字段设置,如果它们是空的。你必须检查
empty($\u POST['txtoption3'])
试着在这个IF/IF-ELSE/ELSE序列上做一个图表,因为它可能会让人头晕!问题是如果我选择rdoption1任意选项,rdoption2检查默认下一个代码逻辑工作。。但是,当我单击checkSetXY的单选键并输入x和y值时,下一个代码逻辑不起作用。。它只是不进一步执行代码。@PeterSzymkowski添加了您的引用。:)@PeterSzymkowski问题在于,如果我选择rdoption1任意选项,并且rdoption2选中默认下一个代码逻辑工作。。但是,当我单击checkSetXY的单选键并输入x和y值时,下一个代码逻辑不起作用。。它只是不进一步执行代码。@user2057047为什么不删除elseif
和if(empty($message)){/*addtodb*/}或者{echo$message}
。基本上,$message
将作为一个错误flag@user2057047什么是“下一个代码逻辑”,我在你的问题中看不到更多的代码逻辑,fiddle可以很好地工作…问题是如果我选择rdoption1 any选项和rdoption2 checkDefault next code logic work。。但是,当我单击checkSetXY的单选键并输入x和y值时,下一个代码逻辑不起作用。。它只是不进一步执行代码。empty
仍然返回true时,文本字段也可以包含真实数据(数字0)。问题是如果我选择rdoption1 any选项和rdoption2 checkDefault next code logic work。。但是,当我单击checkSetXY的单选键并输入x和y值时,下一个代码逻辑不起作用。。它只是不进一步执行代码。。
elseif(empty($_POST['txtoption3'])) //this is not working