SoulGodMedlem sedan aug. 20051 200 inlägg Vet inte vad som är fel, men jag får en helt vit sida när jag försöker köra ett visst php script ( ej egenskrivet, utan var en färdig källkod ).
Sidan fungerar dock på en kompis linux-server.
Jag kör Windows XP, och har prövat följande servrerprogramvaror:
Wamp
Xamp
EasyPHP
PHPServer for Windows
Alla dessa 4 är färdiga paket med PHP5, MySQL, PHPMyAdmin & SQLiteManager
Jag får som sagt endast en vit sida när jag försöker köra denna site.
( Är en torrenttracker från TBDev kan tilläggas )
Vad är fel? Vad ska jag leta efter för att kunna hitta felet?
Har error_reporting E_ALL , så den ska ju visa alla fel, men inget visas.
Någon som varit med om liknande, eller kan tipsa om vad jag ska leta efter?
Danne VMedlem sedan aug. 20068 090 inlägg "vit sida"? Vad menar du? Genererar skriptet ingen källkod alls, eller finns det html-källkod som renderar i en "vit" sida i en viss webbläsare (i så fall, vilken?). Har du i så fall kört den skapade koden i W3C:s validator?
SoulGodMedlem sedan aug. 20051 200 inlägg Kollar jag källkoden så blir den helt tom.
Och vad jag hittar så finns det ingen HTML kod som någonsin ska generera en vit sida.
Har inte kört sidan i WC3-validator , ska testa det direkt.
W3C Validatorn funkar endast på HTML filer,
och detta är index.php & bittorrent.php ,
vilket gör att jag inte kan testa den där i.
Danne VMedlem sedan aug. 20068 090 inlägg
SoulGod skrev:
Kollar jag källkoden så blir den helt tom.
Och vad jag hittar så finns det ingen HTML kod som någonsin ska generera en vit sida.
Har inte kört sidan i WC3-validator , ska testa det direkt.
W3C Validatorn funkar endast på HTML filer,
och detta är index.php & bittorrent.php ,
vilket gör att jag inte kan testa den där i.
Med andra ord: skripten genererar ingen kod alls på den servern du använder?
(Jo, felaktig html kan i vissa webbläsare faktiskt generera helt vita sidor utan innehåll. Det var därför jag frågade om webbläsaren)
Vad är det för skillnad (php-version osv) i din polares server och den du försöker köra skriptet på?
Innehåller PHP koden mycker regexp?
Hade själv problem med ett skript som körde en massa regexp vilket resulterade i ett stack overflow i pcre enligt mina loggar och det genererade inget felmeddelande utan bara en blank sida.
Genom att flusha mina echos kunde jag se hur långt koden körde och problemet var värre på Windows servern.
Detta var några månader sedan, men då hittade jag ingen version av pcre som fixade problemet men lyckades modifiera koden så jag fick den att funka.
Hursomhelst...kolla din servers loggar och kör lite echo med flush så hittar du förmodligen var och varför skriptet dör.
SoulGodMedlem sedan aug. 20051 200 inlägg Okej - visste inte om att felaktig html kan göra det.
Sidan innehåller ca 5000 rader kod, och risken finns ju att det är ett kodfel någonstans. Men då borde det vara samma på hans server tycker jag:
Mina versioner:
Apache 2.2.8
PHP 5.2.6
MySQL 5.0.51b
Hans Versioner:
Apache 2.2.8
PHP 5.2.4
MySQL 5.0.51a
Kan det vara PHP Versionen som strular?
Hur går jag "bakåt" i min version isåfall? Med tanke på att jag installerade färdigt paket.
-----
Blixtsystems:
Nä - inte sett någon RegExp alls faktiskt.
jmeMedlem sedan maj 20012 237 inlägg Testa att lägga till:
ini_set('display_errors, true);
efter error_reporting()...
SoulGodMedlem sedan aug. 20051 200 inlägg Såhär står det nu i min PHP.ini fil:
error_reporting = E_ALL
ini_set('display_errors, true);
.. *testing* ..
Nu fick jag följande:
Notice: Undefined variable: HTTP_SESSION_VARS in <länk till fil> line 55..
Och line 55 är en längre kod.. rad 53>56:
if (isset($_COOKIE)) { #These are unconfirmed (?)
$_COOKIE = stripslashes_array($_COOKIE, '');
$HTTP_SESSION_VARS = stripslashes_array($HTTP_SESSION_VARS, '');
}
Något cookiefel??
fiddlerMedlem sedan juli 20023 617 inlägg Det är väl helt enkelt så att $HTTP_SESSION_VARS utgått till förmån för $_SESSION f.o.m PHP version 4.1.
SoulGodMedlem sedan aug. 20051 200 inlägg Samma kod fungerar på hans sida (Han kör 5.2.4 , jag kör 5.2.6)
Så varför skulle det inte funka?
Testar att ändra till $_Session istället då...
* RESULTAT *
Konstigt nog står det exakt samma:
(Notice: Undefined variable: HTTP_SESSION_VARS in <länk till fil> line 55
Fast jag ändrat till $_SESSION
* OffTopic Till Fiddler *
Gagnef är inte en flod i Indien, Gagnef är en liten kommun mellan Leksand Och Borlänge (ungefär) :P
Är själv från Flóa he he
metalboyMedlem sedan jan. 2005953 inlägg Ligger koden i någon funktion? $HTTP_SESSION_VARS är ju gammalt som gatan, använd $_SESSION istället. $HTTP_SESSION_VARS är inte superglobal.
Edit: Asch... lite för långsam...
SoulGodMedlem sedan aug. 20051 200 inlägg Nej , det enda som ligger över är:
set magic_quotes_runtime(FALSE);
if (get_magic_quotes_gpc()) {
och sen en hel massa $_*** = stripslashes_array ...
jmeMedlem sedan maj 20012 237 inlägg Ööh, du får samma fel även om du har ändrat till $_SESSION? Sitter du verkligen och pillar med RÄTT fil?
fiddlerMedlem sedan juli 20023 617 inlägg
SoulGod skrev:
Testar att ändra till $_Session istället då...
* RESULTAT *
Konstigt nog står det exakt samma:
(Notice: Undefined variable: HTTP_SESSION_VARS in <länk till fil> line 55
Bara för att stilla min nyfikenhet. :)
Ändrade du det första eller det sista $HTTP_SESSION_VARS, eller bägge?
fiddlerMedlem sedan juli 20023 617 inlägg Det finns lite inställningar i php.ini
; - register_long_arrays = Off [Performance]
; Disables registration of the older (and deprecated) long predefined array
; variables ($HTTP_*_VARS). Instead, use the superglobals that were
; introduced in PHP 4.1.0
SoulGodMedlem sedan aug. 20051 200 inlägg jme > Fick rensa cookies för att det skulle ändras :)
Har prövat att köra register_long både on & off . .samma fel =(
Och jag ändrade båda http_session_vars ..
set_magic_quotes_runtime(FALSE);
if (get_magic_quotes_gpc()) {
/*
All these global variables are slash-encoded by default,
because magic_quotes_gpc is set by default!
(And magic_quotes_gpc affects more than just $_GET, $_POST, and $_SESSION)
*/
$_SERVER = stripslashes_array($_SERVER);
$_GET = stripslashes_array($_GET);
$_POST = stripslashes_array($_POST);
$_COOKIE = stripslashes_array($_COOKIE);
$_FILES = stripslashes_array($_FILES);
$_ENV = stripslashes_array($_ENV);
$_REQUEST = stripslashes_array($_REQUEST);
$HTTP_SERVER_VARS = stripslashes_array($HTTP_SERVER_VARS);
$HTTP_GET_VARS = stripslashes_array($HTTP_GET_VARS);
$HTTP_POST_VARS = stripslashes_array($HTTP_POST_VARS);
$HTTP_COOKIE_VARS = stripslashes_array($HTTP_COOKIE_VARS);
$HTTP_POST_FILES = stripslashes_array($HTTP_POST_FILES);
$HTTP_ENV_VARS = stripslashes_array($HTTP_ENV_VARS);
if (isset($_COOKIE)) { #These are unconfirmed (?)
$_COOKIE = stripslashes_array($_COOKIE, '');
$_SESSION = stripslashes_array($_SESSION, '');
}
Där har ni koden just nu.
metalboyMedlem sedan jan. 2005953 inlägg Och du har startat om Apache efter ändringarna i php.ini?
SoulGodMedlem sedan aug. 20051 200 inlägg Ja. Både själva apachen, och även prövat starta om hela maskinen.
* EDIT *
Om jag kommenterar bort just den raden,
så blir sidan åter igen vit.
( testade bara som en nödlösning )