PHP-从当前页面获取节点值后重定向到另一个页面
从当前页面获取节点值并将其传递到URL参数后,我想将用户重定向到另一个页面,下面是我的代码:PHP-从当前页面获取节点值后重定向到另一个页面,php,wordpress,redirect,dom,Php,Wordpress,Redirect,Dom,从当前页面获取节点值并将其传递到URL参数后,我想将用户重定向到另一个页面,下面是我的代码: <?php $dom = new DOMDocument; $html = file_get_contents(home_url(). $_SERVER['REQUEST_URI']); $dom->loadHTML($html); $addresses = $dom->getElementsByTagName('address');
<?php
$dom = new DOMDocument;
$html = file_get_contents(home_url(). $_SERVER['REQUEST_URI']);
$dom->loadHTML($html);
$addresses = $dom->getElementsByTagName('address');
foreach ($addresses as $key => $address) {
$add[$key] = $address->nodeValue;
}
$fields['address'] = urlencode($add[0]);
$qry = http_build_query($fields);
if(!empty($qry)){
header( 'Location: http://example.com/subscription-form/?' . $qry) ;
}
?>
它确实成功重定向,但
http\u build\u query
值为空。下面是一个重定向示例:http://example.com/subscription-form/?address=
,URL没有值$\u GET['address']
PHP重定向不起作用,所以我用JavaScript尝试了一下,它成功了:
$redir = '<script type="text/javascript">';
$redir.= 'window.location.href="http://example.com/subscription-form/?';
$redir.= $qry .'"';
$redir.= '</script>';
echo $redir;
$redir='';
$redir.='window.location.href='http://example.com/subscription-form/?';
$redir.=$qry.“;
$redir.='';
echo$redir;
是的,不需要
urlencode
,因为http\u build\u query
已经完成了这项工作,可能$add[0]
没有设置。尝试使用var\u dump($add)进行一点调试;模具()代码>在foreach之后loop@d79$add[0]已设置,还有一些变量我没有包含在此代码中,以避免冗长的代码;也已设置。请尝试添加exit代码>重定向后()