<?php
/*Skrypt pochodzi z książki "PHP. 101 praktycznych skryptów"
  autor: Marcin Lis                    http://marcinlis.com*/

function doAction($user, $pass, $akcja)
{
  $link = mysql_connect("localhost", "test", "test");
  $flag = mysql_select_db("test");

  if(!$link || !$flag){
    echo("Problem z połączeniem z bazą danych.");
    return false;
  }

  $pass = sha1($pass);

  $query = "SELECT COUNT(*) FROM USERS WHERE NAME = '".$user."'";
  if(!$result = mysql_query($query)){
    echo("Problem z bazą danych. Odrzucone zapytanie.1");
    mysql_close($link);
    return false;
  }

  if(!$row = mysql_fetch_row($result)){
    echo("Problem z bazą danych. Odrzucone zapytanie.2");
    mysql_close($link);
    return false;
  }

  if($akcja == "add"){
    if($row[0] != 0){
      echo("Użytkownik o podanej nazwie już istnieje!");
    }
    else{
      $query = "INSERT INTO USERS(NAME, PASS) VALUES('";
      $query .= $user."', '".$pass."')";echo $query;
      $result = mysql_query($query);
      if(!$result){
        echo("Problem z bazą danych. Odrzucone zapytanie.3");
      }
      else{
        echo("Użytkownik $user został dodany do bazy.");
      }
    }
  }
  else if ($akcja == "remove"){
    if($row[0] != 1){
      echo("Nie ma użytkownika o podanej nazwie!");
    }
    else{
      $query = "DELETE FROM USERS WHERE NAME='".$user."'";
      $result = mysql_query($query);
      if(!$result){
        echo("Problem z bazą danych. Odrzucone zapytanie.4");
      }
      else{
        echo("Użytkownik $user został usunięty z bazy.");
      }
    }
  }
  else if ($akcja == "modify"){
    if($row[0] != 1){
      echo("Nie ma użytkownika o podanej nazwie!");
    }
    else{
      $query = "UPDATE USERS SET PASS='".$pass."' WHERE NAME='".$user."'";
      $result = mysql_query($query);
      if(!$result){
        echo("Problem z bazą danych. Odrzucone zapytanie.5");
      }
      else{
        echo("Dane użytkownika $user zostały zmodyfikowane.");
      }
    }
  }
  else{
    echo("Błędne dane: akcja=$akcja");
    return false;
  }
  mysql_close($link);
}

if(isSet($_POST["haslo"])){
  $pass = $_POST["haslo"];
}
else{
  echo("Brak pola hasło.");
  exit();
}

if(isSet($_POST["user"])){
  $user = $_POST["user"];
}
else{
  echo("Brak pola użytkownik.");
  exit();
}

if(isSet($_POST["akcja"])){
  $akcja = $_POST["akcja"];
}
else{
  echo("Brak pola akcja.");
  exit();
}

if($pass == "" && $akcja != "remove"){
  echo("Brak hasła!");
  exit;
}
if($user == ""){
  echo("Brak nazwy użytkownika!");
  exit;
}

doAction($user, $pass, $akcja);
?>
