Drukowana wersja tematu

Kliknij tu, aby zobaczyæ temat w orginalnym formacie

Forum PHP.pl _ Skrypty obs³ugi baz danych _ Je¿eli user ma warto¶æ 1 w bazie danych includuje plik.

Napisany przez: coolorzel 13.07.2013, 11:55:02

Witam!

Mo¿e to dla niektórych jest proste, lecz na razie nie rozumiem tego.
Chodzi mi o to, ¿e U¿ytkownik wchodzi do pliku np. admin.php i pokazuje je¿eli ma warto¶æ 1 to includuje plik, b±d¼ nadaje echo, a je¿eli nie ma else i echo z inn± warto¶ci±.

Proszê o pomoc.

Napisany przez: markuz 13.07.2013, 12:02:17

Co to jest "warto¶æ"? Dobrze jakby¶ poda³ kod, strukturê bazy danych czy co¶ takiego smile.gif

Napisany przez: coolorzel 14.07.2013, 11:38:47

users --> struktura (user_name, ...)

index.php

  1. <?php
  2. include 'config.php';
  3. db_connect();
  4.  
  5. check_login();
  6.  
  7. admin();
  8. $user_data = get_user_data();
  9.  
  10.  
  11. http://www.php.net/echo '<p>Witaj <b>'.$user_data['user_name'].'</b>!</p>
  12. <p>Jeste¶ w strefie tylko dla zalogowanych.</p>
  13. <p>[<a href="profile.php?id='.$user_data['user_id'].'">Wyświetl swój profil</a>] [<a href="editprofile.php">Edytuj profil</a>] [<a href="userlist.php">Lista uťytkowników</a>] [<a href="logout.php">Wyloguj się</a>]</p>';
  14.  
  15. db_close();
  16. ?>


i config.php

  1. <?php
  2.  
  3. // definiujemy dane do połączenia z bazą danych
  4. http://www.php.net/define('DBHOST', 'localhost');
  5. http://www.php.net/define('DBUSER', 'xxxxx');
  6. http://www.php.net/define('DBPASS', 'xxxxxx');
  7. http://www.php.net/define('DBNAME', 'xxxxx');
  8.  
  9. function db_connect() {
  10. // połączenie z mysql
  11. http://www.php.net/mysql_connect(DBHOST, DBUSER, DBPASS) or http://www.php.net/die('<h2>ERROR</h2> MySQL Server is not responding');
  12.  
  13. // wybór bazy danych
  14. http://www.php.net/mysql_select_db(DBNAME) or http://www.php.net/die('<h2>ERROR</h2> Cannot connect to specified database');
  15. }
  16.  
  17. function db_close() {
  18. http://www.php.net/mysql_close();
  19. }
  20.  
  21. function clear($text) {
  22. // jeśli serwer automatycznie dodaje slashe to je usuwamy
  23. if(http://www.php.net/get_magic_quotes_gpc()) {
  24. $text = http://www.php.net/stripslashes($text);
  25. }
  26. $text = http://www.php.net/trim($text); // usuwamy białe znaki na początku i na końcu
  27. $text = http://www.php.net/mysql_real_escape_string($text); // filtrujemy tekst aby zabezpieczyć się przed sql injection
  28. $text = http://www.php.net/htmlspecialchars($text); // dezaktywujemy kod html
  29. return $text;
  30. }
  31.  
  32. function codepass($password) {
  33. // kodujemy hasło (losowe znaki moťna zmienić lub całkowicie usunąć
  34. return sha1(http://www.php.net/md5($password).'#!%Rgd64');
  35. }
  36.  
  37. // funkcja na sprawdzanie czy user jest zalogowany, jeśli nie to wyświetlamy komunikat
  38. function check_login() {
  39. if(!$_SESSION['logged']) {
  40. http://www.php.net/die('<p>To jest strefa tylko dla uťytkowników.</p>
  41. <p>[<a href="login.php">Logowanie</a>] [<a href="register.php">Zarejestruj siÄ™</a>]</p>');
  42. }
  43. }
  44.  
  45. // funkcja na pobranie danych usera
  46. function get_user_data($user_id = -1) {
  47. // jeśli nie podamy id usera to podstawiamy id aktualnie zalogowanego
  48. if($user_id == -1) {
  49. $user_id = $_SESSION['user_id'];
  50. }
  51. $result = http://www.php.net/mysql_query("SELECT * FROM `users` WHERE `user_id` = '{$user_id}' LIMIT 1");
  52. if(http://www.php.net/mysql_num_rows($result) == 0) {
  53. return false;
  54. }
  55. return http://www.php.net/mysql_fetch_assoc($result);
  56. }
  57.  
  58. function admin() {
  59. if($_SESSION['ranga'] >= 5) {
  60. http://www.php.net/echo'jeste¶ administratorem ';
  61. } else {
  62. http://www.php.net/echo'Nie jeste¶ administratorem ;-(';
  63. }
  64.  
  65. }
  66.  
  67. // startujemy sesje
  68. http://www.php.net/session_start();
  69.  
  70. // jeśli nie ma jeszcze sesji "logged" i "user_id" to wypełniamy je domyślnymi danymi
  71. if(!http://www.php.net/isset($_SESSION['logged'])) {
  72. $_SESSION['logged'] = false;
  73. $_SESSION['user_id'] = -1;
  74. }
  75. ?>

Napisany przez: Jasioo 5.03.2014, 20:44:32

O cos takiego Ci chodzi?

a takie cos w login.php

  1. $checkadmin = http://www.php.net/mysql_fetch_array(http://www.php.net/mysql_query("SELECT isadmin FROM 1konta WHERE nick='$nick'"));
  2. if($checkadmin[isadmin] == 1){
  3. http://www.php.net/session_register("admin");
  4. $_SESSION['admin'] = true;
  5. }



To w Pliku
  1. <?php
  2. http://www.php.net/session_start();
  3.  
  4. if(http://www.php.net/isset($_SESSION['admin']) && $_SESSION['admin'] == true){
  5.  
  6. include("baza.php");
  7. ?>
  8.  
  9. blebelbel(tresc)
  10.  
  11. <?php
  12. http://www.php.net/mysql_close($connection);
  13. }
  14. else
  15. {
  16. http://www.php.net/exit("Odmowa Dostêpu.");
  17. }
  18. ?>




a takie cos mam w 1konta pozmieniaj sobie albo costam ;d


  1. $table3 = "CREATE TABLE 1konta
  2. (
  3. ID int NOT NULL AUTO_INCREMENT,
  4. nick varchar(32),
  5. pass varchar(80),
  6. email varchar(80),
  7. ip varchar(32),
  8. date_register varchar(32),
  9. date_lastlogin varchar(32),
  10. points varchar(32),
  11. bought_points varchar(32),
  12. spent_points varchar(32),
  13. isadmin varchar(32),
  14. PRIMARY KEY(ID)
  15. )DEFAULT CHARSET=utf8 DEFAULT COLLATE = 'utf8_unicode_ci' AUTO_INCREMENT=1";

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)