【发布时间】:2012-11-20 16:21:21
【问题描述】:
可能重复:
How to have user submit text in form and AJAX it to enter to db and show up on same page?
我想做什么:
index.html -> 表单提交到 some.php -> 处理数据(来自 index.html)并将数据发送到 server.php -> 将结果返回到 index.html div。
我读过 ajax、jQuery,我在这个网站上看到了数百个问题,但我还想不通。
index.html:
<form action="some.php" method="post">
Start date: <br/> <input name="idate" id="firstdate" type="text" /><br />
End date: <br /> <input name="fdate" id="seconddate" type="text" /><br />
<br />
<input type="button" id="searchForm" onclick="SubmitForm();" value="Send" />
</form>
一些.php:
<?php
session_start();
$_SESSION['data1'] = $_POST['firstdate'];
$_SESSION['data2'] = $_POST['seconddate'];
?>
function drawChart() {
var jsonData = $.ajax({
url: "server.php",
dataType: "json",
async: false
}).responseText;
var obj = jQuery.parseJSON(jsonData);
var data = google.visualization.arrayToDataTable(obj);
(...)
server.php:
$SQLString = "SELECT
count(score) as counts,
DATE(date),
SUM(CASE WHEN gender = 1 then 1 ELSE 0 END) Male,
SUM(CASE WHEN gender = 2 then 1 ELSE 0 END) Female,
AVG(age) as age, score
FROM persons
WHERE date > '".$_SESSION['date1']."' AND date < '".$_SESSION['date2']."'
GROUP BY DATE(date)
ORDER BY DATE(date) asc";
(...)
$data[0] = array('day','counts','Male','Female','Age','Score');
(...)
echo json_encode($data);
【问题讨论】:
-
在这里了解 ajax:api.jquery.com/jQuery.ajax
-
通过 jQuery 学习使用 AJAX。然后只需在表单提交事件上挂起一个事件处理程序,同时使用 AJAX 将数据发布到 PHP 并接收将显示的响应。使用谷歌。这里没有人会为你写代码和JS...
-
您的代码对 SQL 注入开放!您不能信任用户输入,也不应该使用它来构建 SQL 查询之类的东西。 bobby-tables.com
标签: php jquery mysql ajax google-visualization