我是PHP的初学者,我想做以下几点,但我不知道如何做到这一点:
我有一个网页,我要求用户提交他的邮政编码。在他/她提交之后,页面重定向到另一个PHP页面,在该页面中我在数据库中搜索与邮政编码相对应的城市。然后我写道:“你是城市......”。 我想要的是只使用一个网页(用户没有可见的重定向)来实现这一点。我知道我们可以使用标题重定向到第一页但我不知道如何传输内容(城市)。
答案 0 :(得分:1)
您可以在查询参数中传递城市名称,例如
headers('Location: serachdatabase.php?city='.$cityname);
但这可能不是你想要的。您可以考虑使用Ajax来执行此操作。使用Ajax页面不会完全刷新,但只能刷新页面的一部分。如果您不了解它,Ajax被广泛使用。
答案 1 :(得分:0)
您可以使用标题重定向(“位置:...”);
或者您只需发布表单
即可 <form method="post" action="yourURL">
Postal code <input type='text' name='postal_code' /> <br/>
<input type="submit" value="submit form" name="submit" />
</form>
然后在php中做这样的事情:
<?php
$postal = $_POST["postal_code"];
// match against databse..
?>
请注意,将此代码放入mysql查询中并不“安全”!
答案 2 :(得分:0)
如果你不想要任何页面重定向,你需要使用iFrame或一些CSS-id'ds来加载你的内容到使用javascript的XMLHttpRequest或jQuery的axaj或类似于从另一个PHP页面加载信息并将其插入当前文档中。
答案 3 :(得分:0)
听起来你正在寻找一个AJAX帖子。对于初学者来说,这可能听起来像是一个高级主题,但如果你查看一个像jQuery(http://api.jquery.com/jQuery.post/)这样的框架,你会发现它非常简单。
尝试这样的事情:
$('#myform').submit(function() {
var url = 'databasequery.php';
var postcode = $('#postcode').val();
$.post( url, { postcode: postcode },
function( data ) {
$( "#result" ).empty().append( data );
}
);
return false;
});
在HTML中,您可以将表单标记为myform,并使用ID“result”创建一个空div。
你的'databasequery.php'文件应该接受一个名为postcode的POST变量,只输出你想在页面上显示的响应。
答案 4 :(得分:-1)
问题解决方案的关键是GET和POST参数。了解HTML表单。