从网址抓取变量

时间:2011-07-12 01:39:59

标签: php mysql ajax jquery

我是php的新手,但我正在尝试。我需要你们的帮助。 我在浏览器地址栏www.dome.com \ mypage.php中有以下网址?stu = 12234342 我试图将URL从主页传递到select case页面调用select.php 如果我应该回应网址我得到www.dome.com \ select.php。所以我决定回复$ _SERVER ['HTTP_REFERER'] 相反,这给了我正确的网址。我如何回应来自www.dome.com \ mypage.php的变量?stu = 12234342(12234342) 选择.php。 select.php包含需要$ var stu = 12234342的代码才能显示正确的消息。

$ request_url = $ _ SERVER ['HTTP_REFERER']; //从浏览器中获取网址 echo $ request_url;

$cOption = $_GET['id'];

switch($cOption) {
    case 1:
    echo ' some text';
        break;
    case 2:
    echo ' this page.php';
        break;

    case 3:
    echo 'got it'; 
        break;
    default:
        echo 'Whoops, didn\'t understand that option: <i>'.$cOption.'</i>';
}

&GT;

3 个答案:

答案 0 :(得分:2)

您可以使用parse_url()和parse_string()从url中获取变量:

<?php 

//assuming www.dome.com/mypage.php?stu=12234342;
  $url=$_SERVER['HTTP_REFERER'];

//parse the url to get the query_string-part
  $parsed_url=parse_url($url);

//create variables from the query_string
  parse_str($parsed_url['query'], $unsafe_vars);

//use the variables
  echo $unsafe_vars['stu'];//outputs 12234342
?>

但请注意:您不能依赖HTTP_REFERER的可用性。

答案 1 :(得分:1)

echo $_GET['stu'];

on select.php

答案 2 :(得分:1)

这就是你需要像这样调用select.php文件的原因: www.dome.com/select.php?stu=12234342

然后你可以添加:

echo $_GET['stu'];

顺便说一句,你需要研究XSS,因为这是一个巨大的漏洞。