我有以下代码:
<form action='' method='POST' id='form1'>
imdbcode : <input type='text' id='imdbcode' name='imdbcode' /><br/>
<input type='submit' name='submit' value='Get'/>
</form>
<?php
if(isset($_POST['submit'])){
.
.
.
$title = ... ;
echo "
<form action='' method='POST' id='form2'>
<input type='submit' name='Send' value='Send'/>
</form>";
}
if(isset($_POST['Send'])){
//I WANT TO USE $Title from condition1
} ?>
我想在第二个条件下使用$ title。
在第一个条件下打印$ title!但是在关闭条件后不打印!
我该怎么做?
答案 0 :(得分:0)
由于两个表单不同,除非您明确提供,否则它们之间没有任何联系。
简单的解决方案可以将您的$title
作为隐藏字段回显为:
if(isset($_POST['submit'])){
$title = ... ;
echo "
<form action='' method='POST' id='form2'>
<input type='hidden' name='title' value='" . $title . "'/>
<input type='submit' name='Send' value='Send'/>
</form>";
}
if(isset($_POST['Send'])){
echo $_POST['title'];
// do other stuff
}
另一种解决方案是使用会话:
if(isset($_POST['submit'])){
$title = ... ;
$_SESSION['title'] = $title;
echo "
<form action='' method='POST' id='form2'>
<input type='submit' name='Send' value='Send'/>
</form>";
}
if(isset($_POST['Send'])){
echo $_SESSION['title'];
// do other stuff
}
如果使用会话,请勿忘记使用session_start
,并可能在第二次提交结束时取消设置$_SESSION['title']
。
答案 1 :(得分:0)
你不能。
在您输入if(isset($_POST['Send']))
之前
你需要提交这个:
echo "
<form action='' method='POST' id='form2'>
<input type='submit' name='Send' value='Send'/>
</form>";
但是当您提交此页面时,该页面将被刷新并且$_POST['submit']
将被删除,如果没有此变量,则$title
将不存在。
修复此问题或使$title
值保持活动状态,直到下次刷新页面为止。您必须包含$title
值以及form2
。
echo "
<form action='' method='POST' id='form2'>
<input type='hidden' name='title' value="$title"/>
<input type='submit' name='Send' value='Send'/>
</form>";
当用户发送该表单2时,您可以使用
访问该标题$_POST['title']
答案 2 :(得分:0)
<form action='' method='POST' id='form2'>
<input type='hidden' name='text' value='<?php echo $title; ?>
<input type='submit' name='Send' value='Send'/>
</form>
尝试在“发送”按钮之前添加隐藏的输入。