Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Formularz praw dostępu
Strarus
post
Post #1





Grupa: Zarejestrowani
Postów: 339
Pomógł: 12
Dołączył: 22.11.2008

Ostrzeżenie: (20%)
X----


siemanko (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Dość szybko pojawił się kolejny problem, którego nie mogę rozwiązać. Otóż zrobiłem formularz, w którym można nadać prawa danemu użytkownikowi. Oto on:
  1. <?php
  2.   if(isset($_SESSION['zalogowany'])) {
  3.     include ('db_connect.inc.php');
  4.     $sql = mysql_query("SELECT COUNT( * ) `ilosc_userow` FROM `tbl_user` WHERE `login`='". $_SESSION["login"] ."'");
  5.     $row = mysql_fetch_assoc($sql);
  6.     if($row['ilosc_userow'] > 0 ) {      
  7.    if(isset($_POST['login']) && !empty($_POST['login'])) {
  8.   $login = ($_POST['login']);
  9.   echo($login);
  10.   $sql = "INSERT INTO `tbl_user` SET `login`='$login' and `ilosc_userow`='1'";
  11.     if (@mysql_query($sql)) {
  12.       echo '<p>Dodano prawa userowi.</p>';
  13.     } else {
  14.       echo '<p>Bład podczas dodawania praw: ' .
  15.           mysql_error() . '</p>';
  16.     }
  17. } else {
  18.   echo '<strong>Nadaj prawa admina userowi</strong><br/>
  19.   <form action="prawa.php" method="post">
  20. <table border="0">
  21.  <tr>
  22.   <td>Login:</td>
  23.   <td><input type="text" name="login" maxlength="12"/></td>
  24.  </tr>
  25. </table>
  26. <input type="submit" value="Dodaj!" />
  27. </form>';
  28. }
  29. } else {
  30.   echo 'Nie masz wystarczających uprawnień';
  31. }
  32. } else {
  33.   echo '<a href="login.php">Zaloguj!</a>';
  34. }
  35. ?>

Po wpisaniu jakiegoś nicku pojawia się napis dodano (sprawdzałem zawartość zmiennych - poprawna), a w bazie pojawia się tylko cyfra 1 w polu nick... Co robię źle?


sorki, że dwa razy ten sam temat ale coś mi z łączem się stało i nie widziałem czy się dodał ten pierwszy - jeśli można prosić moderatorów, to nich usuną ten temat (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował Strarus 11.01.2009, 01:38:44
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
outsider
post
Post #2





Grupa: Zarejestrowani
Postów: 267
Pomógł: 36
Dołączył: 8.08.2008

Ostrzeżenie: (0%)
-----


Kod
$sql = "INSERT INTO `tbl_user` SET `login`='$login' and `ilosc_userow`='1'";


Co to jest ? SET przy INSERT ? SET tylko przy UPDATE (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Rozumiem ze chcesz nadawac prawa juz istniejacemu uzytkownikowi. I gdzie WHERE ? Wszystkie rekordy maja byc zmienione ? Wedlug mnie cale zapytanie powinno wygladac tak (nie wiem do konca jak ma to u Ciebie dzialac)

Kod
$sql = "UPDATE `tbl_user` SET `ilosc_userow`='1' WHERE `login`='$login' ";


Zapoznaj sie: http://www.w3schools.com/php/php_mysql_update.asp 

Przy UPDATE nie ma AND, sa tylko przecinki(AND tylko po WHERE)

Ten post edytował *OuTSideR* 11.01.2009, 11:16:13
Go to the top of the page
+Quote Post
decha-design
post
Post #3





Grupa: Zarejestrowani
Postów: 415
Pomógł: 46
Dołączył: 26.05.2007
Skąd: Sandomierz

Ostrzeżenie: (0%)
-----


Tak na przyszłość ... korzystaj z takiej funkcji jak mysql_error() ... unikniesz wielu problemów ...

  1. <?php
  2. $sql = "UPDATE `tbl_user` SET `ilosc_userow`='1' WHERE `login`='$login' ";
  3. $query = mysql_query($sql) or die(mysql_error());
  4. ?>


i mysql ci wszystko wypisze sam ... jaki masz błąd =)
Go to the top of the page
+Quote Post
outsider
post
Post #4





Grupa: Zarejestrowani
Postów: 267
Pomógł: 36
Dołączył: 8.08.2008

Ostrzeżenie: (0%)
-----


decha-design, tak bylo by najlatwiej i najszybciej. Tylko gdy to uzywamy to tylko przy testowaniu, bo haker moze to wykorzystac, chociaz jesli sa dobre zabezpieczenia...
Go to the top of the page
+Quote Post
RubiX
post
Post #5





Grupa: Zarejestrowani
Postów: 162
Pomógł: 6
Dołączył: 14.02.2007
Skąd: Poznań

Ostrzeżenie: (0%)
-----


haker haker ... a co Ty robisz za stronę że niby mają się nią hakerzy interesować ? Panel dla inteligo czy mbanku ? (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
decha-design
post
Post #6





Grupa: Zarejestrowani
Postów: 415
Pomógł: 46
Dołączył: 26.05.2007
Skąd: Sandomierz

Ostrzeżenie: (0%)
-----


@RubiX ... spokojnie =)

To jak się tak boisz o hakerów, to zapisuj sobie do plików .txt i po sprawie =)
Go to the top of the page
+Quote Post
outsider
post
Post #7





Grupa: Zarejestrowani
Postów: 267
Pomógł: 36
Dołączył: 8.08.2008

Ostrzeżenie: (0%)
-----


RubiX, a chocby przed kumplem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Akurat jednego mam, na szczescie. Wiec przynajmniej bede mial strone zabezpieczona.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 25.08.2025 - 15:52