Kezdőoldal » Számítástechnika » Weblapkészítés » Hogyan javítsam ki ezt a hibát?

Robesz2012 kérdése:

Hogyan javítsam ki ezt a hibát?

Figyelt kérdés

Van egy fájl az oldalamon felhasz.php ezt csak felhasználók láthatják, tehát akik regisztrálnak, ezért beraktam az alábbi kódot:


<?php if($_SESSION["user_username"] ==""){

//hiba: nincs bejelentkezve

header('Location: index.php');

}

?>


Ez jó, megnéztem és ha csak simán rá akarok menni a felhasz.php-ra akkor visszadob az index.php-ra. De ha belépek (regisztrálva) akkor ezt írja ki:

Warning: Cannot modify header information - headers already sent by (output started at /index.php:6) in /felhasz.php on line 3



2017. ápr. 29. 19:31
1 2
 1/18 anonim ***** válasza:

if (!$_SESSION["user_username"]) {

// hiba

header('');

return;

}


Esetleg?

2017. ápr. 29. 20:02
Hasznos számodra ez a válasz?
 2/18 A kérdező kommentje:
Sajnos nem jó, így eltűnik az oldal is , és ugyanúgy kiírja a hibát, de köszi a segítséget
2017. ápr. 29. 20:06
 3/18 anonim ***** válasza:

Wááá,


"output started at /index.php:6"


Indexnél hamarabb küldesz valamit.

2017. ápr. 29. 20:11
Hasznos számodra ez a válasz?
 4/18 A kérdező kommentje:
Hát nemtudom sajnos :( Olyat nem lehet megoldani, hogy ha viszont megegyezik a felhasználó, akkor maradjon a felhasz.php-n ebbe beleépítve?
2017. ápr. 29. 20:17
 5/18 anonim ***** válasza:

Üres karakterek is számítanak,amik nem látszanak nézd meg úgy a kódot, illetve utf-8 boom nélkülre legyen átkódolva.

Én kiszedném a // komment részt

?> után se legyen szóköz

2017. ápr. 29. 20:56
Hasznos számodra ez a válasz?
 6/18 anonim ***** válasza:

<?php if($_SESSION["user_username"] =="" || !isset($_SESSION['user_username'])){

//hiba: nincs bejelentkezve

header('Location: index.php');

}

?>

2017. ápr. 29. 22:24
Hasznos számodra ez a válasz?
 7/18 Drone007 ***** válasza:

A hibaüzenet szerint az index.php 6. sorában valamit a kimenetre küldesz, ez pedig automatikusan header infót is küld, ezért lesz hibás minden header utasítás amit ez után próbálsz végrehajtatni.

Talán nézd meg az index.php 6. sorát (vagy a 7.-et, hátha átcsúszik valami), mert ott lesz valami print/echo/var_dump/export...

2017. ápr. 30. 07:47
Hasznos számodra ez a válasz?
 8/18 anonim ***** válasza:

Ha betöltöd notepad++ -be a kódot

1,beállítások->stílusok ... válaszd bespin stílust

2,nézet->segédjelek megjelenítése->sorközök és tabulátorok

kis .-okat rak a szőközök helyére, de fehér háttérnél nehéz észrevenni,ezért kellet az 1,pont.

Ha a <?php előtt vagy ?>után látsz ilyesmit,az tuti rossz.

2017. ápr. 30. 11:45
Hasznos számodra ez a válasz?
 9/18 anonim ***** válasza:
illetve UTF8-BOM mentes fájl legyen
2017. ápr. 30. 12:44
Hasznos számodra ez a válasz?
 10/18 Djjjozsiiiii ***** válasza:

Olyan változót, ami nem létezik nem illik használni.

Előtte nézd meg a létezését.

Így szokás:

if(!isset( $_SESSION["user_username"] )){

header("Location: login.php");

die();

}


Továbbá a header függvény kiadása után állítsd meg a programot, mert bár az átirányítás megtörténik, a program további része lefut! HEader előtt viszont semmilyen HTML kimenet nem javasolt, echo, esetleg utf-8 BOM karakterek, az a "headers already sent" figyelmeztetéssel járhat.

2017. ápr. 30. 19:38
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!