
伪静态写法的问题,需要改造RewriteRule才行。
加上 &%{QUERY_STRING} 试一下
RewriteRule^zp(\w+)/(:diqu(\w+)/)(:(:g(\d+))(:x(\d+))(:n(\d+))(:d(\d+))/)(:p(\d+)/)$
zhaophpid=$1&diqu=$2&gongzi=$3&xueli=$4&nianxian=$5&dalei=$6&page=$7&%{QUERY_STRING} [L]
因为,PHP CURL库默认1024字节的长度不等待数据的返回,所以你那段代码需增加一项配置:
curl_setopt($ch, CURLOPT_:'));给你一个更全面的封装方法:
function req_curl($url, &$status = null, $options = array()){
$res = '';
$options = array_merge(array(
'follow_local' => true,
'timeout' => 30,
'max_redirects' => 4,
'binary_transfer' => false,
'include_header' => false,
'no_body' => false,
'cookie_location' => dirname(__FILE__) '/cookie',
'useragent' => 'Mozilla/40 (compatible; MSIE 60; Windows NT 51',
'post' => array() ,
'referer' => null,
'ssl_verifypeer' => 0,
'ssl_verifyhost' => 0,
'headers' => array(
'Expect:'
) ,
'auth_name' => '',
'auth_pass' => '',
'session' => false
) , $options);
$options['url'] = $url;
$s = curl_init();
if (!$s) return false;
curl_setopt($s, CURLOPT_URL, $options['url']);
curl_setopt($s, CURLOPT_>
if( $submit )改为if($_POST['submit'])
或者
在phpini中设置register_globals = On,在重启apache或者IIS就可以了
register_globals叫做自动全局变量,服务器会把$_GET,$_POST,$_COOKIE等中的值自动加到全局变量里,例如
URL是aphpc1=2&c2=3
$_GET是这样的数组 array('c1'=>2, 'c2'=>3)
自动加入全局变量:$c1和$c2他们的值分别是2和3
默认的顺序是GPC即$_GET,$_POST,$_COOKIE也就是$_POST里如果同时也有c1,$c1这个全局变量的值就不是$_GET里的2,而是$_POST里的值了
by the way
我猜你看的参考书应该是国产的,奉劝一句,还是看翻译过来的国外的教材吧,不然会耽误你的。
#后面的内容PHP无法获取,只有js可以获取,JS代码示例:
<script type="text/javascript">
documentwrite(locationhref);
</script>
首先要对GET传过来的值进行验证,比如基本的数值验证,判断是否为数字等;还有做为空判断,如果是空就unset 掉,否则会影响你最终的结果。
其次,GET不要直接引用,验证后赋值给一个变量后再进行 *** 作。
其他方面就没什么问题了吧。
以上就是关于php伪静态地址如何获取GET的值全部的内容,包括:php伪静态地址如何获取GET的值、php获取数据为什么curl获取不完整而用file_get_contents能获取完整、PHP 如何通过 GET 方式获取变量 自动上传指定文件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)