2016-09-11 35 views
0

我是新来的编码和对不起,如果它是我失踪的一件愚蠢的事情。我已经通过论坛搜索&没有找到适合我需要的答案。我有2个文件:jobs.php & jobprocess.php将隐藏值传递给输入标签中的php变量

Jobs.php竟把

<?php session_start(); 
include('dbConnect.php'); 
$q1="abc"; 
$q2="pqr"; 
$q3="xyz"; 
$opportunity=29;  
echo "Opportunity is". $opportunity; 
?> 

<html> 
<head> 
<div align="center"> 

<form method="post" method="post" action="jobprocess.php"> 


<input type="text" name="q1" placeholder="<?php echo $q1;?>"><br> 
<input type="text" name="q2" placeholder="<?php echo $q2;?>"><br> 
<input type="text" name="q3" placeholder="<?php echo $q3;?>"><br> 
<input type="hidden" name="opportunity" value="<?php echo $opportunity;?>"> 


<ul class="actions"> 
<li><input type="submit" name="submit" value="I would like to join!! "></li> 
</ul>       
</form>         
</div> 
</head> 
<body> 
</body> 
</html> 

jobprocess.php去与代码

<?php session_start(); 
include('dbConnect.php'); 


$opportunity = $_GET['opportunity']; 
echo "opportunity is " . $opportunity; 
?> 

不幸的是,上面的代码没有定义价值=“29”在第二页的机会。在此先感谢

+0

你的html无效 – RamRaider

回答

1

如果您在html标记之前回应任何内容,它将实际上使html无效。此外,该文件的head不能有表象的HTML元素,如formsdivs

<?php 
    session_start(); 
    include('dbConnect.php'); 
    $q1="abc"; 
    $q2="pqr"; 
    $q3="xyz"; 
    $opportunity=29;  

?> 

<html> 
    <head> 
     <title>must have a title</title> 
    </head> 
    <body> 
     <?php 
      echo "Opportunity is". $opportunity; 
     ?> 
     <div align="center"> 
      <form method="post" method="post" action="jobprocess.php"> 
       <input type="text" name="q1" placeholder="<?php echo $q1;?>"><br> 
       <input type="text" name="q2" placeholder="<?php echo $q2;?>"><br> 
       <input type="text" name="q3" placeholder="<?php echo $q3;?>"><br> 
       <input type="hidden" name="opportunity" value="<?php echo $opportunity;?>"> 
       <ul class="actions"> 
        <li><input type="submit" name="submit" value="I would like to join!! "></li> 
       </ul>       
      </form>         
     </div> 
    </body> 
</html> 

而且因为形式设置为POST你应该检查,并使用所张贴的变量,而不是一个GET变量

<?php 
    session_start(); 
    include('dbConnect.php'); 


    $opportunity = $_POST['opportunity']; 
    echo "opportunity is " . $opportunity; 
?> 
+0

谢谢@Ramraider 已解决:) –

0

令人惊讶的是,我的答案建议使用会话变量而不是隐藏的表单域被删除?!我猜会话变量现在是非法的吗?

答案被选为最佳答案。