单击按钮时如何运行php?
我想在单击submit按钮时运行一个php页面,下面是我的代码:单击按钮时如何运行php?,php,html,Php,Html,我想在单击submit按钮时运行一个php页面,下面是我的代码: echo "<tr><td colspan=3> <form method='post'><table><tr><td> <h4>Quantity</h4></td><td><input type=text name='qnt' /></td><td>
echo "<tr><td colspan=3>
<form method='post'><table><tr><td>
<h4>Quantity</h4></td><td><input type=text name='qnt' /></td><td>
<input type='button' value='Add to card' name='buy' /></td></tr></table>
</form>
</td></tr>";
if(isset($_POST['buy'])){
echo "<script type='text/javascript'> alert('successful'); </script>";
include("addtocard.php");
}
echo”
量
";
如果(isset($_POST['buy'])){
回显“警报(‘成功’);”;
包括(“addtocard.php”);
}
更改
<input type='button' value='Add to card' name='buy' />
到
为了绝对安全,应该有两个更改:
<form method='post'>
应该有一个action属性,指向文件在服务器ie上的位置
<form method='post' action="/myfile.php">
此外:
<input type='button' value='Add to card' name='buy' />
应该是
<input type='submit' value='Add to card' name='buy' />
您可能需要将值从“按钮”更改为“提交”,这可能会起作用。祝你好运,下面是一个例子:
<input type="submit" value='Add to card' name="buy" action= "<?php echo htmlentities($_SERVER['PHP_SELF']); ?>"/>
似乎其他一些人也在尝试回答这个问题,但我认为他们忽略了您的代码的根本问题。PHP不在客户端运行,只在服务器端运行。您需要(正如其他人所说的)将表单提交给PHP服务,以检查用户在表单中输入的值
您可能想进一步了解PHP的工作原理,因为它输出HTML,但在用户看到的实际网页上根本不存在,所以可能会有点混乱。PHP文档可能会有所帮助。我使用前面提到的一些内容测试了您的代码,包括在a中所说的关于在表单输入中输入数量的内容
旁注:由于不知道addtocard.php
文件中有什么内容,我使用自己的基本代码生成(复制)了一个成功的测试。下文进一步包括注释
使用:
<?php
echo "<tr><td colspan=3>
<form method='post'><table><tr><td>
<h4>Quantity</h4></td><td><input type=text name='qnt' /></td><td>
<input type='submit' value='Add to card' name='buy' /></td></tr></table>
</form>
</td></tr>";
if(isset($_POST['buy'])){
echo "<script type='text/javascript'> alert('successful'); </script>";
include("addtocard.php");
}
并且在表单中输入数字100,事实上,它确实回显了100
,并且它也产生了一个成功
的弹出警报
您还可以使用添加的条件语句检查是否设置了“提交”按钮,以及是否输入了数量:
<?php
echo "<tr><td colspan=3>
<form method='post'><table><tr><td>
<h4>Quantity</h4></td><td><input type=text name='qnt' /></td><td>
<input type='submit' value='Add to card' name='buy' /></td></tr></table>
</form>
</td></tr>";
if(isset($_POST['buy']) && !empty($_POST['qnt'])){
echo "<script type='text/javascript'> alert('successful'); </script>";
include("addtocard.php");
}
else {
echo "Enter a quantity.";
}
我做了,但我仍然有同样的问题..不起作用这个答案没有错。我用Crispen的答案测试了你的代码,它成功了。另外,您发布的代码没有@Fred ii-是的,您是对的,我正在尝试将数量发布到addtocard.php
。顺便说一句,我在另一个页面上也采用了同样的方法,它成功地工作了,但在这段代码中,当我单击submit按钮时,页面将重新加载,而其他内容正在破坏您的代码。您是否可以发布该文件中的内容@USER3194430老实说,我本应该对此发表评论的,但我甚至没有意识到其中存在着误解。抢手货
<?php
$qnt = $_POST['qnt'];
echo "Quantity: " . $qnt;
<?php
echo "<tr><td colspan=3>
<form method='post'><table><tr><td>
<h4>Quantity</h4></td><td><input type=text name='qnt' /></td><td>
<input type='submit' value='Add to card' name='buy' /></td></tr></table>
</form>
</td></tr>";
if(isset($_POST['buy']) && !empty($_POST['qnt'])){
echo "<script type='text/javascript'> alert('successful'); </script>";
include("addtocard.php");
}
else {
echo "Enter a quantity.";
}