代码在Chrome中运行,但在Firefox中运行

时间:2012-11-24 09:22:31

标签: php

以下代码适用于Chrome。但在Firefox中,提交步骤无法正常工作

<?php
if(!isset($_POST['submit'])){


?>
<form action="" method="post">
<b>ID:</b>
<input name="std_no" type="text" />
<input type="image" width="100" value="submit" name="submit" id="submit" src="images/butup.gif" alt="submit Button">
</form>

<?php 
} 
else {
    $id=$_POST['std_no'];
    echo $id;
    }

?>

2 个答案:

答案 0 :(得分:4)

问题是图片提交没有发送名称“submit”,它发送“submit_x”和“submit_y”

所以你应该检查

if (isset($_POST['submit_x']))...
编辑:我已经对此进行了一些测试,它出现在Firefox(16)和IE(7,8,9)中,只有x和y被发送,而在Chrome(23)和Safari(5.1)中它也会将名称与x和y一起发送。

所以最安全的方法是检查值是:isset($_POST['name_x'])

答案 1 :(得分:0)

<?php
if(!isset($_POST['submit'])){
        $id=$_POST['std_no']; // put it here so whenever you click submit button
        echo $id; // $_POST is trigger

?>
<form action="/**input action**/" method="post">
<b>ID:</b>
<input name="std_no" type="text" />
<input type="image" width="100" value="submit" name="submit" id="submit" src="images/butup.gif" alt="submit Button">
</form>

您应该在action=""; // the php page of your code or the page where you want to get the data sample page.php

中输入

或试试这个

<?php echo htmlentities($_SERVER['PHP_SELF']); ?> // put in action