我有以下PHP代码
<?php
$q = rawurlencode($_POST["name"]); // input from textbox 1
$ft = $_POST["ftype"]; //input from textbox 2
当用户点击按钮时,我想在新标签页中打开http://www.example.com/$ft%20$q
。这可能吗?
我已经尝试curl_init
$h = curl_init("http://www.example.com/$ft%20$q");
curl_exec($h);
但是没有达到预期的效果。
有人可以解释在用户浏览器中打开新标签的正确方法吗?
答案 0 :(得分:0)
您必须使用_blank
值的锚标记上的target属性在HTML中执行此功能,例如
<a href="http://google.com" target="_blank">Click Me!</a>
答案 1 :(得分:0)
您无法在PHP中打开标签,因为PHP是服务器端代码,而不是客户端。
阅读此答案以解释差异:
答案 2 :(得分:0)
如果您有POST数据,那么您在网站上有一些表格,对吗?然后你可以在这样的新标签中打开它:
HTML
<form id="form1" action="http://www.example.com/$ft%20$q" method="post" target="_blank">
<input type="text" id="name" name="name" />
<input type="text" id="ftype" name="ftype" />
//submit
</form>
JQUERY
<script type="text/javascript">
var ft = "";
var q = "";
function createURL() {
$("#form1").attr("action", "http://www.example.com/" + ft + "%20" + q);
}
$(document).ready(function () {
$("#name").keyup(function () {
q = $("#name").val();
createURL();
});
$("#ftype").keyup(function () {
ft = $("#ftype").val();
createURL();
});
});
</script>
jsfiddle上的一个工作代码,显示了url更改。 http://jsfiddle.net/Driveash/7p6BN/
答案 3 :(得分:-1)
这可能不是最好的方法,但是如果你在一个严格使用PHP的页面上,你总是可以回显一些基本的JavaScipt并注入变量。
echo ("<script>window.open(\"" . $link . "\");</script");