将值发布到PHP文件并在处理完值后重新加载HTML页面?

时间:2013-01-31 09:40:08

标签: php html ajax post

我正在开发一个显示数据库记录的线图的应用程序。 用户在html页面中查看图形,并可以通过从选择框中选择它们来更改参数以查看他感兴趣的图表。 在html页面后面有一个php页面,它对数据库进行查询,并将结果转换为json格式,用于html页面中的图形。

现在我正试图将选择框中的值(用户选择的参数)发布到php页面,但我不希望以后看到php,而是希望刷新html页面显示带有所选值的新图形。

要将值发布到php我使用的是这样的东西:

<form action="index.php" target="_blank" method="post">
 <select name="Tasel" onchange="this.form.submit()">
 <option value="3">Tuloslaskelma</option>
 <option value="2">Tasevastattava</option>
 <option value="1">Tasevastaava</option>   
 </select>

它发布了值ok,但现在我不知道如何同时使用新图形重新加载html。关于什么是最好的方式,我会很感激。我已经阅读了几个关于使用Ajax的建议,但还没有找到让它工作的方法。在此先感谢!!!

2 个答案:

答案 0 :(得分:2)

使用 postirect-after-post 模式可以更清晰地解决您遇到的问题。

可以找到更高级的说明here

另一点是,您需要注意 webserver 发送的响应标头以及图像响应。如果涉及缓存等问题,可能会导致显示旧图片。

答案 1 :(得分:1)

如果你想使用Ajax,你需要学习更多关于JavaScript的信息(如果你愿意,还需要学习jQuery

否则,您可以在表单处理(在index.php中)完成后简单地重定向。

index.php

<?php

// Form processor here

// Make sure nothing is outputted to the browser

header( 'Location: ' . $_SERVER['HTTP_REFERER'] );
exit();