Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z wejsciem do panela admina
Forum PHP.pl > Forum > PHP
Blochu1
Kod
<html>
<head>
</head>
<body>
<?php
ob_start();
require_once ('include/mysql_connect.php');
if (isset($_POST['submit'])) {
    if (empty($_POST['username'])) {
        $u = FALSE;
    }
    else {
        $u = escape_data($_POST['username']);
    }
    if (empty($_POST['password'])) {
        $p = FALSE;
    }
    else {
        $p = escape_data($_POST['password']);
    }
    if ($u && $p) {
        $query = "SELECT id_osoby, login, haslo FROM osoby WHERE login='$u' AND haslo='$p'";
        $result = mysql_query ($query);
        $row = @mysql_fetch_array ($result, MYSQL_NUM);
        if ($row) {
            session_start();
            $_SESSION['login'] = $row[1];
            $_SESSION['id_osoby'] = $row[0];
            ob_end_clean(); //kasowanie bufora
            header ("Location: http://" . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . "/admin/start_admin.php");
            exit();
        }
        else {
            echo '<p><font color="red" size="+1">Login i hasło nie występujš w naszej bazie danych</font></p>';
        }
        mysql_close(); // zamykanie polaczenia z baza dancyh
    }
    else { //jezeli wszystko poszlo zle
        echo '<p><font color="red" size="+1">Bład administracyjny sprobuj ponownie</font></p>';
    }
}
ob_end_flush();
?>
....


czy potrafi mi ktos pomoc questionmark.gif wyrzuca mi znany chyba wszystkim blad
Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /var/www/web18/html/otk/header.htm:5) in /var/www/web18/html/otk/header.htm on line 26

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /var/www/web18/html/otk/header.htm:5) in /var/www/web18/html/otk/header.htm on line 26

Warning: Cannot modify header information - headers already sent by (output started at /var/www/web18/html/otk/header.htm:5) in /var/www/web18/html/otk/header.htm on line 29

Nie mam pojecia dlaczego nie dziala. Sprawdzalem nigdzie nie ma ani echo, ani spacji przed <?php i po ?> ani pustych linijek a stronka juz jest na serwerze wiec bardzo prosze o pomoc (na serwerze lokalnym wszystko działało OK). Słyszalem ze moze to byc wina wersji php ale administrator serwera powiedzial ze zmiana wersji php nie wchodzi w gre. Pomozcie jesli wiecie w czym moze tkwic bład bo sprawdzalem chyba wszystki opcje jakie sa podane na tym forum i nic
dr_bonzo
No chyba zartujesz:

  1. </head>
  2. <body> // <<<< i tu nie ma nic przed <?php
  3. <?php


PS. uzyj iinego bbcode
Blochu1
no wlasnie nie ma nic przed tym. wrzucilem tresc pliku od samego poczatku. koncowki nie wrzucalem bo plik ma 170 linijem wiec byloby to wszystko nieczytelne.
erix
Cytat
no wlasnie nie ma nic przed tym.

dr_bonzo napisał, według mnie, wyraźnie. Przed "tym" <?php nie ma prawa być jakikolwiek kod HTML, bo będą sypały się takie błędy. Masz jeszcze inne wyjście, a domyślam się, że takiego chciałeś użyć - mianowicie ob_start" title="Zobacz w manualu php" target="_manual. Jest tylko jeden malutki problem: za późno używasz tej funkcji.
jarrod
Wersja 1:

  1. <?php
  2. $html = '<html><head></head><body>';
  3. require_once ('include/mysql_connect.php');
  4. // (...)
  5. $html .= '<p><font color="red" size="+1">Login i hasło nie występują w naszej bazie danych</font></p>';
  6. // (...)
  7. echo $html;
  8. ?>

Chyba najlepiej strzymać sting w zmiennej bo później jak będziesz chciał zmienić ten kod to będziesz miał trudności...

Wersja 2:
  1. session_start();
  2. ob_start();
  3. ?>
  4. <html><head></head><body>
  5. <?
  6. // kod
  7. // (..)

Wersja 3:
smarty.php.net

Moim zdanie wersja nr 3 jest najlepsza...
thornag
Ale po kiego grzyba te bufforowanie ?

Session start na poczatku pliku (na poczatku ! czyt. najlepiej pierwsza linijka) a pozniej cokolwiek, np

  1. session_start();
  2. ?>
  3. <html>
  4. <head>
  5. <body>
  6. .....
  7. <?=$_SESSION['var'];?>


Uzywanie bufforowania nie ma sensu bo po co wysylac naglowki gdy strona sie zaladowala ?

P.S. Mozesz tez zmienic php.ini i ustawic session_autostart na true
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.