提交按钮不提交

时间:2012-05-24 18:27:15

标签: php html css submit

<div class = 'buttons'>
 <button type="submit" class="regular" name="save">
        <img src="elephant.png" alt=""/>
        Memory
 </button>
</div>

这是提交按钮的代码

然而,当我尝试使用php验证表单时,该按钮似乎没有提交

<?php if( isset($_POST['save']) && $_POST['save'])
{
$submit = $_POST['save'];
echo "lol";
}
else
{
echo "lola";

}

5 个答案:

答案 0 :(得分:2)

提交按钮仅适用于表单。尝试将整个内容包装在form标记中,然后重试。

答案 1 :(得分:1)

发布表单时,您的提交按钮没有任何值可以发送。 <button>元素将其元素的内容作为其提交值发送。您仍需要为元素添加value属性以便它拥有提交的值。因为你没有,它发送一个空字符串,导致你的条件语句失败:

if( isset($_POST['save']) && $_POST['save'])

由于$_POST['save']为空,因此第二部分返回false,因此会转到else块。

答案 2 :(得分:1)

以下是您想要的代码:

<form name="myForm" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<div class="buttons">
 <button type="submit" class="regular" name="save" value="Save">
        <img src="elephant.png" alt="Elephant" />
        Memory
 </button>
</div>
</form>

答案 3 :(得分:0)

正如已经写好的,你的代码缺乏包装。虽然提交按钮作为按钮可能在没有表单的情况下工作,但是捕获_POST数据肯定不会。

此外,您的图像按钮解决方案可能更好,可能是这样的:

<style type="text/css">
    input[type="submit"] {background: url('elephant.png') right no-repeat; padding: 10px; padding-left: 30px; font-size: 14px; font-weight: bold;} /* or call this .regular */
</style>
<?
if ($_POST['save']) { // the trigger
    echo '<h1>Cooking with fire now!</h1>';
}
?>
<form method="POST" action="">
    <div class="buttons">
        <input type="submit" name="save" value="Memory" class="regular" />
    </div>
</form>
  • 请注意class = "buttons"带有空格,语法不正确!

答案 4 :(得分:0)

  • 您应该将代码包含在<form method="post" action="path/to/your/php/processing/file"></form>代码
  • 将您的按钮代码替换为<input type="submit" class="regular" name="save" />
  • 从条件中移除isset($_POST['save']) &&部分,因为您没有为按钮设置value