【发布时间】:2013-09-28 02:44:40
【问题描述】:
大家好,我是网络开发的新手。
用户点击提交按钮后,我有一个带有表单的页面,然后按钮会将表单内容提交到下一页执行并保存到数据库中。
这样,我的页面会转到另一个页面执行并返回到着陆页。
例如:index.php 和 exec.php
index.php:
<form name="g-form" action="gbtn-exec.php" method="post" class="goat-vote" onsubmit="return validategForm()">
<input type="text" name="g-product" placeholder="Brand / Product Name" style="-moz-border-radius: 5px; border-radius: 5px; padding-left:20px; opacity:.5; border:none; margin-left:110px; width:440px; height:38px; font-family:'Proxima Nova Rg';color:#000; font:1.6em;" />
<p class="g-question">Why you love it?</p>
<textarea name="g-reason" style="-moz-border-radius: 5px; border-radius: 5px; padding:5px; opacity:.5; border:none; margin-left:110px; width:450px; height:150px; font-family:'Proxima Nova Rg';color:#333; font-size:1em;"></textarea>
<input name="g-btn" class="vote-btn" type="submit" value="vote" style="margin-left:470px; cursor:pointer;"></form>
exec.php
if ($_POST["g-product"] && $_POST["g-reason"] != "" )
{
$gproduct = $_POST["g-product"];
$greason = $_POST["g-reason"];
$insert ="INSERT INTO jovine.vote (vote_id ,product_name ,reason ,type) VALUES (NULL, '$gproduct', '$greason', 'goat')";
$result = mysql_query($insert,$con);
echo "<script>";
echo "alert('Thank you. Your vote has been recorded.');";
echo "window.location.href='index.php';";
echo "</script>";
}
我的问题是,如何使用 ajax 在后台运行 exec.php? 谢谢!
【问题讨论】:
-
危险:您使用的是an obsolete database API,应该使用modern replacement。您也容易受到SQL injection attacks的影响,现代 API 可以让您更轻松地从 defend 中获得。
-
要求代码的问题必须表明对所解决问题的最低理解。包括尝试的解决方案、它们为什么不起作用以及预期的结果。另见:Stack Overflow question checklist — 不乏tutorials
-
在表单提交处理程序中,防止默认行为并使用 ajax 调用您的 PHP 脚本。 ajax 教程很容易找到,不是吗?!