Witam wszystkich.
Skrypt logowanie:
<?php
/* Skrypt 0. 1 login.php
Strona umożliwia zalogowanie się w witrynie */
// Dołączamy plik konfiguracyjny z procedurami obsługi błędów.
require_once ('config.inc.php');
// Ustawiamy tytuł strony i dołączamy nagłówek HTML.
$page_title = 'Logowanie';
include ('header.html');
if (isset($_POST['submitted'])) { // Sprawdzamy, czy formularz został przesłany. require_once ('mysql_connect.php'); // Łączymy się z bazą danych.
// Sprawdzamy poprawność adresu email.
if (!empty($_POST['login'])) { $ln = escape_data($_POST['login']);
} else {
echo '<P><FONT COLOR="red" SIZE="+1">Zapomiałeś podać loginu</FONT></P>'; $ln = FALSE;
}
// Sprawdzamy poprawność hasła.
if (!empty($_POST['pass'])) { $p = escape_data($_POST['pass']);
} else {
$p = FALSE;
echo '<P><FONT COLOR="red" size="+1">Zapomiałeś podać hasła!</FONT></P>'; }
if ($ln && $p) { // Jeśli wszystko w porządku...
// Wysyłamy zapytanie do bazy danych.
$query = "SELECT id_user, login_user FROM users
WHERE (login_user='$ln' AND pass_user=SHA('$p')) AND active_user IS NULL";
// Rejestrujemy wartości i przekierowujemy użytkownika.
$_SESSION['login_user'] = $row[1];
$_SESSION['id_user'] = $row[0];
// Zaczynamy definicję adresu URL.
$url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']); // Sprawdzamy końcowy ukośnik.
if ((substr($url, -1) == '/') OR
(substr($url, -1) == '')) { $url = substr($url, 0, -1); // Odcinamy ukośnik.
}
// Dodajemy stronę.
$url .= '/index.php';
ob_end_clean(); // Usuwamy bufor.
header("Location: $url");
exit(); // Kończymy działanie skryptu.
} else { // Nie znaleziono pasującego rekordu
echo '<P><FON COLOR="red" SIZE="+1">Login i hasło nie pasują do przechowanych w bazie danych
albo jeszcze nie uaktywniłeś swojego konta.</FONT></P>';
}
} else { // Jeśli coś jest nie w porządku...
echo '<P><FONT COLOR="red" SIZE="+1">Spróbuj jeszcze raz.</FONT></P>';
}
mysql_close(); // Zamykamy połączenie z bazą danych.
} // Koniec instrukcji warunkowej sprawdzającej, czy formularz został przesłany.
?>
<H1>Logowanie</H1>
<P>Aby się zalogować, musisz zezwolić na przyjmowanie plików cookie.</P>
<FORM ACTION="login.php" METHOD="post">
<FIELDSET>
<P><B>Adres e-mail: </B> <INPUT TYPE="text" NAME="login" SIZE="20" MAXLENGHT="40"
VALUE="<?php if (isset($_POST['login'])) echo $_POST['login']; ?>" /></P>
<P><B>Hasło:</B> <INPUT TYPE="password" NAME="pass" SIZE="20" MAXLENGHt="20" /></p>
<DIV ALIGN="center"><INPUT TYPE="submit" NAME="submit" VALUE="Logowanie" /></DIV>
<INPUT TYPE="hidden" NAME="submitted" VALUE="TRUE" />
</FIELDSET>
</FORM>
<?php // Dołaczamy stopkę HTML.
include ('footer.html);
?>
Po zalogowaniu się, powinien być napis powitalny "Witaj, nazwa_loginu" i inne menu.
Ze względu na sporą ilość kodu, która może się przydać pozostałe skrypty daje w linkach.
index.phpfooter.phpheader.phpPoza tym jeśli przechodze, pomiędzy linkami, czasami generuje mi się taki błąd
Cytat
Fatal error: print_r() [<a href='ref.outcontrol'>ref.outcontrol</a>]: Cannot use output buffering in output buffering display handlers in /var/www/sites/yoyo.pl/c/l/testowniak/config.inc.php on line 23
A plik config.inc.php wygląda tak
kliknij zobacz... Powinien on podczas pojawienia się błędu wysyłać wiadomość na skyrznke pocztową... niestety jedynie wyrzuca błędy na ekran.
Za wszelką pomoc z góry dzięki.
Pozdrawiam.