Include, og $_GET mellem mapper
Hej DennisHvordan går det hos dig?
Kan du hjælpe mig med et spørgsmål?
Jeg har nogle sider jeg vil lave noget statistik på og jeg har brugt følgende kode i bunden af de sider jeg ville se statistik fra:
<?php
define ("kundenr", "46927491");
define ("pageName", "Hjælp");
//define ("count", "statInsert.php");
include_once ("statInsert.php");
?>
Her indeholdt statInsert.php så:
<?PHP
include_once("cfig.php");
function WriteLog(){
if (isset($_GET['width']) AND isset($_GET['height'])) {
// output the geometry variables
$Display = $_GET['width'] ." x ". $_GET['height'];
} else {
// pass the geometry variables
// (preserve the original query string
// -- post variables will need to handled differently)
echo "<script language='javascript'>\n";
echo " location.href=\"${_SERVER['SCRIPT_NAME']}?${_SERVER['QUERY_STRING']}"
. "&width=\" + screen.width + \"&height=\" + screen.height;\n";
echo "</script>\n";
exit();
}
$kundeNr = kundenr;
$pageName= pageName;
$host = $_SERVER["HTTP_HOST"]; //outputs sitename.com etc
$remoteIP=$_SERVER["REMOTE_ADDR"];
$agent = $_SERVER["HTTP_USER_AGENT"];
$query="INSERT INTO Data SET Dato_ind=now(), Kundenr=\"$kundeNr\", Host=\"$host\", Display=\"$Display\", Side_vist=\"$pageName\", Browser=\"$agent\", Dato_ud=now(), Ip=\"$remoteIP\" ";
$results=mysql_query($query);
}
WriteLog();
$db->close;
?>
Dette satte alt men reloaded siden, og hvis filerne ikke var i samme mappe ville de også bare være tomme.
Så prøvede jeg i stedet med følgende:
<?php
$kundenr="46927491";
$pageName="Besøgenes Display";
include_once ("statInsert.php");
?>
<?PHP
include_once("cfig.php");
function WriteLog(){
if (!empty($_GET)) {
extract($_GET);
} else if (!empty($HTTP_GET_VARS)) {
extract($HTTP_GET_VARS);
}
if (isset($_SERVER['HTTP_REFERER']))
$referer = $_SERVER['HTTP_REFERER'];
else
$referer = "-";
if (isset($_SERVER['HTTP_USER_AGENT']))
$agent = $_SERVER['HTTP_USER_AGENT'];
else
$agent = "-";
if (isset($_REQUEST['pageName']))
$pageName = $_REQUEST['pageName'];
else
$pageName = "-";
if (isset($_REQUEST['kundenr']))
$kundenr = $_REQUEST['kundenr'];
else
$kundenr = "-";
if (isset($_REQUEST['users_resolution']))
$users_resolution = $_REQUEST['users_resolution'];
else
$users_resolution = "-";
$host = $_SERVER["HTTP_HOST"]; //outputs sitename.com etc
$remoteIP=$_SERVER["REMOTE_ADDR"];
$query="INSERT INTO Data SET Dato_ind=now(), Kundenr=\"$kundenr\", Host=\"$host\", Display=\"$users_resolution\", Refference=\"$referer\", Side_vist=\"$pageName\", Browser=\"$agent\", Dato_ud=now(), Ip=\"$remoteIP\" ";
$results=mysql_query($query);
}
WriteLog();
$db->close;
?>
Det er så forløbig uden skærm opløsning, men med de andre variabler. Dog tager det ikke $pageName, og $kundeNr med over.
Samtidig tager den ikke $_SERVER['HTTP_REFERER']; med ind hvis den fil hvor <?php
$kundenr="46927491";
$pageName="Besøgenes Display";
include_once ("statInsert.php");
?>
Ligger er i en anden mappe.
Har i en ide til hvorfor den ikke tager det med over?
Mads Jensen
