$ _SERVER [' HTTP_REFERER'];尝试制作推荐脚本时返回.css文件

时间:2014-07-11 15:45:54

标签: php mysql

好的,所以我试图让它成为用户可以使用域名后跟他们的用户名推荐其他人。

我的网站使用iframe工作,因此index.php实际上会在iframe中加载home.php,新用户可以在其中输入详细信息,然后将其提交给数据库。

在index.php中我有:

<?php
    session_start();
    $ref = $_SERVER['HTTP_REFERER'];
    $_SESSION['abc'] = $ref;
?>

然后,用户输入他们的信息并提交,home.php将其添加到数据库中。 Home.php有以下代码:

session_start(); //at the top of the file followed by some other code

//如果他们是新用户。我们可以说他们点击了推介链接,其中包含了“推荐”链接。会显示domainname.com/referrerUserName

 if (isset($_SESSION['abc'])) {
                                    //insert new user
$run = mysql_query("INSERT INTO ".MYSQLTABLE."(id, address, ip, date, time, referredby) VALUES('','" . $_POST['address'] . "','" . $_SERVER['REMOTE_ADDR'] . "', '".date("Y-m-d")."', '".date("D")."', '".$_SESSION['abc']."')");

                            } 
    else {
        echo 'error';
    }  

他们被添加好了,但在“推荐”中被提及了。返回的列:http://domainname.com/screens.css 何时显示http://domainname.com/?r= ReferrersUserName

任何帮助都会很棒!是的我将改为SQLI

1 个答案:

答案 0 :(得分:0)

你应该改变:

<?php
    session_start();
    $ref = $_SERVER['HTTP_REFERER'];
    $_SESSION['abc'] = $ref;
?>

<?php
    session_start();
    if (!isset($_SESSION['abc']) && isset($_GET['r'])) {
      $ref = $_GET['r'];         
      $_SESSION['abc'] = $ref;
    }
?>