Browse Source

Dokończono logowanie.

Ukończono system zarządzania administratorami.

git-svn-id: https://svn.pioder.pl/sg-svn@20 3ed2631f-fe0d-47e0-9194-a46bc0f18ee8
master
pioder 14 years ago
parent
commit
3b78022753
6 changed files with 326 additions and 6 deletions
  1. +14
    -1
      robocze/admin/index.php
  2. +2
    -1
      robocze/admin/login.php
  3. +91
    -1
      robocze/admin/user_add.php
  4. +61
    -1
      robocze/admin/user_delete.php
  5. +122
    -1
      robocze/admin/user_edit.php
  6. +36
    -1
      robocze/admin/users_list.php

+ 14
- 1
robocze/admin/index.php View File

@ -16,6 +16,10 @@ if (!$_SESSION['logged'] && empty($_GET['mode']))
Przekieruj('index.php?mode=login');
}
if (!$_SESSION['logged'] && $_GET['mode'] != 'login')
{
Przekieruj('index.php?mode=login');
}
#brak wyboru opcji - przekierowanie na administracje galeria
if (empty($_GET['mode']))
{
@ -93,6 +97,10 @@ switch($_GET['mode'])
require('./gallery_item_delete.php');
break;
}
default:
{
Przekieruj('index.php?mode=admin_gallery');
}
}
break;
@ -101,7 +109,7 @@ switch($_GET['mode'])
#strona administracji uzytkownikow
case 'admin_users':
{
die('Na razie tu nic nie ma, ale będzie :]');
//die('Na razie tu nic nie ma, ale będzie :]');
#sprawdz, czy jest podopcja
if (empty($_GET['submode']))
@ -134,6 +142,11 @@ switch($_GET['mode'])
require('./user_delete.php');
break;
}
default:
{
Przekieruj('index.php?mode=admin_gallery');
}
}
break;

+ 2
- 1
robocze/admin/login.php View File

@ -64,4 +64,5 @@ NaglowekPA('Logowanie');
</td>
</tr>
</table>
</form>
</form>
<?php StopkaPA(); ?>

+ 91
- 1
robocze/admin/user_add.php View File

@ -5,4 +5,94 @@
* @version $Id$
**/
?>
$msg = '';
if (isset($_POST['nick']))
{
#oczyszczamy z syfu - dodawanie jest w PA, ale no coz...
$_POST['nick'] = addslashes(strip_tags(trim($_POST['nick'])));
$_POST['email'] = addslashes(strip_tags(trim($_POST['email'])));
#chwila dla debila :D
if (strlen($_POST['nick'])==0)
{
$msg = 'Nie podałeś nicku!';
}
if ($msg == '')
{
$sql = "SELECT `id` FROM `admins` WHERE `nick` ='".$_POST['nick']."';";
if (!$result = $DB->query($sql))
{
blad('Nie mozna sprawdzic, czy nick nie zostal zajety.');
}
if ($result->num_rows>0)
{
$msg = 'Oj, jak mi przykro! Twój nick jest już zajęty.';
}
$result->free();
}
if ($msg == '' && strlen(trim($_POST['pass'])) < 4)
{
$msg = 'Twoje hasło jest krótsze niż cztery znaki. Zastanów się...';
}
if ($msg == '' && !ereg ("^.+@.+\..+$", $_POST['email']))
{
$msg = 'Adres email jest nieprawidłowy!';
}
#przejdzmy do konkretow
if ($msg == '')
{
#czyszczenie i hashowanie hasla...
$_POST['pass'] = md5(addslashes(strip_tags(trim($_POST['pass']))));
#i dodajemy admina do bazy, wreszcie ;)
$sql = "INSERT INTO `admins` VALUES ('', '".$_POST['nick']."', '".$_POST['pass']."', '".$_POST['email']."', 'Brak')";
if (!$DB->query($sql))
{
blad('Nie mozna zarejestrowac administratora!');
}
Przekieruj('index.php?mode=admin_users', 'Użytkownik został pomyślnie dopisany! Przekierowanie...');
}
}
if ($msg != '')
{
$msg = '<span style="color: red; font-weight: bold">'.$msg.'</span>';
}
$_POST['nick'] = (!isset($_POST['nick'])) ? '' : $_POST['nick'];
$_POST['email'] = (!isset($_POST['email'])) ? '' : $_POST['email'];
NaglowekPA('Dodaj użytkownika');
?>
<br />
<br />
<?php echo $msg; ?>
<form action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="POST">
<table width="600" border="1" style="border-color: gray; border-style: solid; border-collapse: collapse">
<tr>
<td colspan="2" bgcolor="yellow">Dodaj nowego użytkownika</td>
</tr>
<tr>
<td align="right">Nazwa użytkownika:</td>
<td align="left"><input type="text" name="nick" value="<?php echo $_POST['nick']; ?>" /></td>
</tr>
<tr>
<td align="right">Hasło:</td>
<td align="left"><input type="password" name="pass" /></td>
</tr>
<tr>
<td align="right">Email:</td>
<td align="left"><input type="text" name="email" value="<?php echo $_POST['email']; ?>" /></td>
</tr>
<tr>
<td colspan="2">
<input type="submit" value="Zapisz" />&nbsp;&nbsp;
<input type="reset" value="Wyczyść" />
</td>
</tr>
</table>
<br />
<?php StopkaPA(); ?>

+ 61
- 1
robocze/admin/user_delete.php View File

@ -5,4 +5,64 @@
* @version $Id$
**/
?>
if (!isset($_GET['id']) || !is_numeric(trim($_GET['id'])))
{
Przekieruj('index.php?mode=admin_gallery', 'Nieprawidłowy ID użytkownika');
}
$id = intval($_GET['id']);
#sprawdzamy, czy nie usuwam sam siebie :P
$sql = "SELECT * FROM `admins` WHERE `IP`='".$_SERVER['REMOTE_ADDR']."' LIMIT 1;";
if (!$result = $DB->query($sql))
{
blad('Nie mozna pobrac info o IP administratora');
}
if ($result->num_rows > 0)
{
$row = $result->fetch_assoc();
if ($row['id'] == $id)
{
Przekieruj('index.php?mode=admin_users', 'Nie możesz usunąć sam siebie!');
}
}
$result->free_result();
unset($row);
#a teraz czy wogole user istnieje w bazie ;)
$sql = "SELECT * FROM `admins` WHERE `id`='$id';";
if (!$result = $DB->query($sql))
{
blad('Nie mozna pobrac info o administratorze');
}
if ($result->num_rows == 0)
{
Przekieruj('index.php?mode=admin_users', 'Użytkownik nie istnieje!');
}
else
{
$row = $result->fetch_assoc();
}
if (isset($_POST['del']))
{
$sql = "DELETE FROM `admins` WHERE `id`='$id'";
if (!$DB->query($sql))
{
blad('Nie mozna skasowac administratora!');
}
Przekieruj('index.php?mode=admin_users', 'Administrator został skasowany. Powrót...');
}
NaglowekPA('Usuń użytkownika');
?>
<br />
<br />
<form action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="POST">
<div style="background-color: yellow">
Czy napewno chcesz skasować użytkownika "<?php echo $row['nick']; ?>"? Zmiany nieodwracalne!
</div><br />
<input type="hidden" name="del" value="true" />
<input type="submit" value="Dalej" />
</form>
<?php StopkaPA(); ?>

+ 122
- 1
robocze/admin/user_edit.php View File

@ -5,4 +5,125 @@
* @version $Id$
**/
?>
if (!isset($_GET['id']) || !is_numeric(trim($_GET['id'])))
{
Przekieruj('index.php?mode=admin_gallery', 'Nieprawidłowy ID użytkownika');
}
$id = intval($_GET['id']);
$msg = '';
#a teraz czy wogole user istnieje w bazie ;)
$sql = "SELECT * FROM `admins` WHERE `id`='$id';";
if (!$result = $DB->query($sql))
{
blad('Nie mozna pobrac info o administratorze');
}
if ($result->num_rows == 0)
{
Przekieruj('index.php?mode=admin_users', 'Użytkownik nie istnieje!');
}
else
{
$row = $result->fetch_assoc();
}
#edycja w bazie - caly "mechanizm"
if (isset($_POST['nick']))
{
$_POST['nick'] = addslashes(strip_tags(trim($_POST['nick'])));
$_POST['email'] = addslashes(strip_tags(trim($_POST['email'])));
#sprawdzanie, czy nick nie jest zajety
$sql = "SELECT `id` FROM `admins` WHERE `nick` ='".$_POST['nick']."';";
if (!$result = $DB->query($sql))
{
blad('Nie mozna sprawdzic, czy nick nie zostal zajety.');
}
if ($result->num_rows>0)
{
$reserved = true;
}
else
{
$reserved = false;
}
$result->free();
if (strlen($_POST['nick']) > 0 && trim($_POST['nick']) != $row['nick'] && ~$reserved)
{
$sql = "UPDATE `admins` SET `nick`='".$_POST['nick']."' WHERE `id`='$id'";
if (!$DB->query($sql))
{
blad('Nie mozna zaaktualizowac nicku administratora.');
}
}
if (strlen($_POST['email']) > 0 && trim($_POST['nick']) != $row['email'])
{
if (ereg ("^.+@.+\..+$", $_POST['email']))
{
$sql = "UPDATE `admins` SET `email`='".$_POST['email']."' WHERE `id`='$id'";
if (!$DB->query($sql))
{
blad('Nie mozna zaaktualizowac emaila administratora.');
}
}
else
{
$msg = 'Adres email jest nieprawidłowy! (przykład: [email protected])';
}
}
if (strlen(trim($_POST['pass'])) > 0 && md5(trim($_POST['pass'])) != $row['password'])
{
$_POST['pass'] = md5(addslashes(strip_tags(trim($_POST['pass']))));
$sql = "UPDATE `admins` SET `password`='".$_POST['pass']."' WHERE `id`='$id'";
if (!$DB->query($sql))
{
blad('Nie mozna zaaktualizowac hasla administratora.');
}
}
if ($msg == '')
{
Przekieruj('index.php?mode=admin_users', 'Użytkownik został zaaktualizowany! Powrót...');
}
}
NaglowekPA('Edycja użytkownika');
if ($msg != '')
{
$msg = '<span style="color: red; font-weight: bold">'.$msg.'</span>';
}
?>
<br />
<br />
<?php echo $msg; ?>
<form action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="POST">
<table width="600" border="1" style="border-color: gray; border-style: solid; border-collapse: collapse">
<tr>
<td colspan="2" bgcolor="yellow">Edycja użytkownika "<?php echo $row['nick']; ?>"</td>
</tr>
<tr>
<td align="right">Nazwa użytkownika:</td>
<td align="left"><input type="text" name="nick" value="<?php echo $row['nick']; ?>" /></td>
</tr>
<tr>
<td align="right">Hasło:</td>
<td align="left"><input type="password" name="pass" /></td>
</tr>
<tr>
<td align="right">Email:</td>
<td align="left"><input type="text" name="email" value="<?php echo $row['email']; ?>" /></td>
</tr>
<tr>
<td colspan="2">
<input type="submit" value="Zapisz" />&nbsp;&nbsp;
<input type="reset" value="Wyczyść" />
</td>
</tr>
</table>
<br />
<?php StopkaPA(); ?>

+ 36
- 1
robocze/admin/users_list.php View File

@ -5,4 +5,39 @@
* @version $Id$
**/
?>
NaglowekPA('Lista administratorów');
?>
<br />
<br />
<table width="900" border="1" style="border-color: gray; border-style: solid; border-collapse: collapse">
<tr>
<td colspan="6" bgcolor="yellow">Lista administratorów
</tr>
<tr>
<td class="b">Id</td>
<td class="b">Nazwa użytkownika</td>
<td class="b">Email</td>
<td class="b">Ostatnie IP</td>
<td colspan="2" class="b">Operacje</td>
<?php
$sql = "SELECT * FROM `admins`";
if (!$result = $DB->query($sql))
{
blad('Nie mozna pobrac info o administratorach!');
}
while ($row = $result->fetch_assoc())
{
?>
<tr>
<td><?php echo $row['id']; ?></td>
<td><?php echo $row['nick']; ?></td>
<td><?php echo $row['email']; ?></td>
<td><?php echo $row['IP']; ?></td>
<td><a href="index.php?mode=admin_users&amp;submode=edit&amp;id=<?php echo $row['id']; ?>">Edytuj</td>
<td><a href="index.php?mode=admin_users&amp;submode=delete&amp;id=<?php echo $row['id']; ?>">Usuń</td>
</tr>
<?php } ?>
</table>
<div align="right"><a href="index.php?mode=admin_users&amp;submode=add">Dodaj nowego użytkownika...</a></div>
<?php StopkaPA(); ?>

Loading…
Cancel
Save