webForumDet fria alternativet

Undefined Variable

2 svar · 576 visningar · startad av SoulGod

SoulGodMedlem sedan aug. 20051 395 inlägg
#1

Jag får följande felmeddelanden (raden under visar koden som körs)
Är helt ny på PHP, så förstår ingenting av det tyvärr...

Undefined variable: _SESSION in *.php on line 48
$HTTP_COOKIE_VARS = $_SESSION;

Undefined index: HTTP_CLIENT_IP in *.php on line 1488
if (validip($HTTP_SERVER_VARS['HTTP_CLIENT_IP'])) return $HTTP_SERVER_VARS['HTTP_CLIENT_IP'];

Undefined index: HTTP_X_FORWARDED_FOR in *.php on line 1492
elseif ($HTTP_SERVER_VARS['HTTP_X_FORWARDED_FOR']!="")

Undefined variable: lang_uri in *.php on line 2718
if (!$lang_uri)

Vad brukar dessa bero på?

Säkert något enkelt fel, men jag hittar inget..
behöver ni se mer kod, skrik till

aasahMedlem sedan mars 20033 451 inlägg
#2

Vad försöker du göra egentligen?

Allt du använder är mycket speciella arrayer och variabler, avsedda för olika saker.
$HTTP_COOKIE_VARS är avsedd för att hantera cookies, $_SESSION är avsedd för att hantera sessioner (något helt annat). Att sätta dem lika med varann är rena rappakaljan.

I $HTTP_SERVER_VARS lagras diverse info om servern, och det är föga förvånande att uppgiften om klientens IP inte går att hitta i den...

Så alltså, vad är det meningen att skriptet ska göra?

effataMedlem sedan apr. 2008141 inlägg
#3

$HTTP_SERVER_VARS används inte längre i PHP5. Du bör uppdatera och använda $_SERVER istället. Vill du ha klientens IP använder du $_SERVER['REMOTE_ADDR'].

Vad gäller dina undefined varningar så betyder det precis vad det låter som. Variabeln du försöker accessa är inte definierad. I php4 var denna varning avstängd som default, vilket inte är helt bra. I princip ska man se till att alltid definiera sina variabler innan man försöker använda dom till någonting.

Genererad på 385 ms · cache AV · v20260730165559-full.f96bc7eb