Witam. Jak to zrobić:
problem:
-> system sprawdza imie, nazwisko, i zatwierdzenie - które jest nadawane przez administratora (status 0 - nie widzi uzytkownika w bazie, jezeli adm. zmieni na 1 widzi uzytkownika i moze sie logowac)
Na początek baza.
CREATE TABLE `dane` (
`id` int( 11 ) UNSIGNED NOT NULL AUTO_INCREMENT ,
`imie` varchar( 255 ) NOT NULL DEFAULT '',
`nazwisko` varchar( 255 ) NOT NULL DEFAULT '',
`zatwierdzenie` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY ( `id` )
);
skrypt bez modyfikacji: zastrz_baza.php
<?php
$imie = $_POST['imie'];
$nazwisko = $_POST['nazwisko'];
if(!isset($_POST['imie'])&&!isset($_POST['nazwisko'])) {
//Użytkownik musi podać identyfikator i hasło dostępu
?>
<h1>Zaloguj się</h1>
Ta strona jest zastrzeżona.
<form method = "post" action = "zastrz_baza.php">
<table border = "1">
<tr>
<th> Użytkownik </th>
<td> <input type = "text" name = "imie"> </td>
</tr>
<tr>
<th> Hasło </th>
<td> <input type = "password" name = "nazwisko"> </td>
</tr>
<tr>
<td colspan = "2" align = "center">
<input type = submit value = "Zaloguj się">
</td>
</tr>
</form>
<?php
}
else
{
// połącz sie z MySQL
$mysql_connect = mysql_connect( 'localhost', 'root', 'krasnal' ); if(!$mysql_connect)
{
echo 'Brak połączenia z bazą danych.'; }
// wybierz właściwą bazę danych
if(!$mysql_db)
{
echo 'Błąd wyboru bazy danych.'; }
// znajdź pasujący wiersz
$zapytanie = "select count(*) from dane where
imie = '$imie' and
nazwisko = '$nazwisko'";
if(!$wynik)
{
echo 'Nie można wykonać zapytania.'; }
$ile = $wiersz[0];
if ($ile>0)
{
// podana kombinacja: identyfikator i hasło jest prawidłowa
echo '<h1>Oto ona!</h1>'; echo 'Na pewno jesteś szczęśliwy, że możesz zobaczyć tę stronę.'; }
else
{
// kombinacja: identyfikator i hasło dostępu jest nieprawidłowa
echo '<h1>Odejdź stąd!</h1>'; echo 'Nie jesteś uprawniony do przeglądania tych zasobów.'; }
}
?>
ja zmienilem zastrz_baza.php
<?php
$imie = $_POST['imie'];
$nazwisko = $_POST['nazwisko'];
$zatwierdzenie= $_POST['zatwierdzenie'];
if(!isset($_POST['imie'])&&!isset($_POST['nazwisko'])&&!isset($_POST['zatwierdzenie'])) {
//Użytkownik musi podać identyfikator i hasło dostępu
?>
<h1>Zaloguj się</h1>
Ta strona jest zastrzeżona.
<form method = "post" action = "zastrz_baza.php">
<table border = "1">
<tr>
<th> Użytkownik </th>
<td> <input type = "text" name = "imie"> </td>
</tr>
<tr>
<th> Hasło </th>
<td> <input type = "password" name = "nazwisko"> </td>
</tr>
<tr>
<td colspan = "2" align = "center">
<input type = submit value = "Zaloguj się">
</td>
</tr>
</form>
<?php
}
else
{
// połącz sie z MySQL
$mysql_connect = mysql_connect( 'localhost', 'root', 'krasnal' ); if(!$mysql_connect)
{
echo 'Brak połączenia z bazą danych.'; }
// wybierz właściwą bazę danych
if(!$mysql_db)
{
echo 'Błąd wyboru bazy danych.'; }
// znajdź pasujący wiersz
$zapytanie = "select count(*) from dane where
imie = '$imie' and
nazwisko = '$nazwisko' and zatwierdzenie = '$zatwierdzenie'";
if(!$wynik)
{
echo 'Nie można wykonać zapytania.'; }
$ile = $wiersz[0];
if ($ile>0 and $zatwierdzenie==1)
{
// podana kombinacja: identyfikator i hasło jest prawidłowa
echo '<h1>Oto ona!</h1>'; echo 'Na pewno jesteś szczęśliwy, że możesz zobaczyć tę stronę.'; }
else
{
// kombinacja: identyfikator i hasło dostępu jest nieprawidłowa
echo '<h1>Odejdź stąd!</h1>'; echo 'Nie jesteś uprawniony do przeglądania tych zasobów.'; }
}
?>
i caly czas wyswietla mi Nie jesteś uprawniony do przeglądania tych zasobów
ktos pomoże?
Ten post edytował mitp 21.11.2005, 22:30:36