Som besökare på Hamsterpaj samtycker du till användandet av s.k. cookies för att förbättra din upplevelse hos oss. Jag förstår, ta bort denna ruta!
Annons

Php-hjälp, errors och headers

Skapad av Syndafloden, 2011-01-06 17:11 i Webbutveckling & Programmering

1 464
9 inlägg
0 poäng
Syndafloden
Visningsbild
P 33 Karlstad Hjälte 10 705 inlägg
0
Tjo, ar knåpat på en PHP-sida ett tag nu, och den fungerar fint på localhost (med undantag för vissa kända fel) och när jag nu laddar upp dne på dinkraftplats.se/beta så dör den lite.

Om man försöker logga in med "Webmaster" / "bajs" på dinkraftplats.se/beta/logga_in.php så får man tre errors, två som förklarar att man försöker mergea icke-array's och ett "headers already sent".

Array-felet misstänekr ajg beror på att jag försöker mergea en array med return från en funktion (som returnerar en array.) och headers uppstår när jag kör en funktionen:

function redirect_to($location) {
header("Location: " . $location);
exit;
}


Why oh why får jag dessa fel, och vad kan jag göra åt det?

HEH, TIME FOR A BIT OF A ROUGH AND TUMBLE

Är reklamen ivägen? Logga in eller registrera dig så försvinner den!

Klas-Kenny
Visningsbild
P 31 Växjö Hjälte 12 128 inlägg
0
Headers already sent kommer när du redan har skrivit någonting till klienten.

Alltså:
<?php
echo "Hejsan";
header("Location: index.php");
?>

Kommer att ge det felmeddelandet, men det skulle inte:
<?php
header("Location: index.php");
echo "Hejsan";
?>

göra.

Rätt verktyg till rätt arbete - Makaroner äts med sked.

Syndafloden
Visningsbild
P 33 Karlstad Hjälte 10 705 inlägg
Trådskapare
0

Svar till Klas-Kenny [Gå till post]:
Jo, och jag kan tänka mig att problemet uppstår för att jag försöker skicka header("Location: ensida.php"); mitt bland massa annan kod, men det funkar på loclahost, ch det måste ju gå att göra på något vänster.

HEH, TIME FOR A BIT OF A ROUGH AND TUMBLE

Klas-Kenny
Visningsbild
P 31 Växjö Hjälte 12 128 inlägg
0

Svar till Erotisk_Eruption [Gå till post]:
Jag har för mig att man kan konfigurera apache att inte bry sig om sådant, och om din apache är konfigurerad så kan det vara anledningen.

Rätt verktyg till rätt arbete - Makaroner äts med sked.

Syndafloden
Visningsbild
P 33 Karlstad Hjälte 10 705 inlägg
Trådskapare
0

Svar till Klas-Kenny [Gå till post]:
tror itne min localhost är konfigurerad till det. Men kan kolla in det hela : )

HEH, TIME FOR A BIT OF A ROUGH AND TUMBLE

CryptoN
Visningsbild
P 33 Hjälte 528 inlägg
0

Svar till Erotisk_Eruption [Gå till post]:
Alternativt är att köra ob_start(); högst upp i din fil.

Alltså:

<?php
ob_start();

//Resten av din kod
?>

stderr
Visningsbild
Hjälte 7 inlägg
0
du får inte ha skickat något annat innan header("location:")

dum grej som php-dev inte har löst än alternativt så kör du på en meta-refresh eller så lägger du till ett @ framför @header();

inte 100% att det fungerar dock
cower
Visningsbild
P 44 Lund Hjälte 1 042 inlägg
0
Svar till Erotisk_Eruption [Gå till post]:
Felet om headersarna behöver du inte bry dig om, det beror på att de två första felmeddelandena redan skickats. Om du fixar problemet med arrayerna så löser det sig.

cower
Visningsbild
P 44 Lund Hjälte 1 042 inlägg
0
Svar till stderr [Gå till post]:
"dum grej som php-dev inte har löst än" - Det har de visst, det är bara att använda buffrad output. Normalt vill man dock att svaret ska skickas till klienten så fort som möjligt och använda så lite resurser som möjligt, så därför är det inte default.


Forum » Datorer & IT » Webbutveckling & Programmering » Php-hjälp, errors och headers

Ansvariga ordningsvakter:

Användare som läser i den här tråden just nu

1 utloggad

Skriv ett nytt inlägg

Hej! Innan du skriver om ett potentiellt problem så vill vi påminna dig om att du faktiskt inte är ensam. Du är inte onormal och världen kommer inte att gå under, vi lovar! Så slappna av och gilla livet i några minuter - känns det fortfarande hemskt? Skriv gärna ner dina tankar och frågor, vi älskar att hjälpa just dig!

Den här tråden är äldre än Rojks drömtjej!

Det senaste inlägget i den här tråden skrevs för över tre månader sedan. Är du säker på att du vill återuppliva diskussionen? Har du något vettigt att tillföra eller passar din fråga i en ny tråd? Onödiga återupplivningar kommer att låsas så tänk efter en extra gång!

Hjälp

Det här är en hjälpruta

Här får du korta tips och förklaringar om forumet. Välj kapitel i rullningslisten här ovanför.

Rutan uppdateras automagiskt

När du använder funktioner i forumet så visas bra tips här.


Annons
Annons
Annons
Annons