Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [SQL][MySQL][PHP]Nie dodaje rekordu.
prostowniczek
post
Post #1





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 23.03.2011

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


Robie aktualnie status online, lecz po wylogowaniu nie dodaje nadpisuje rekordu.

  1. <?php
  2. include 'inc/header.php';
  3.  
  4. echo '<h2>Wylogowywanie</h2>';
  5.  
  6. if($_SESSION['logged'])
  7. {
  8. mysql_query('UPDATE `users` SET `zalogowany`="0" WHERE `user_login`='.$_SESSION['login'].'');
  9. $_SESSION['logged'] = false;
  10. $_SESSION['id'] = '';
  11. $_SESSION['admin'] = '0';
  12. echo 'Wylogowany';
  13. } else
  14. {
  15. echo 'Nie byłes zalogowany! <a href="index.php">wróć</a>';
  16. }
  17.  
  18. include 'inc/stopka.php';
  19. ?>


Chodzi o:

  1. mysql_query('UPDATE `users` SET `zalogowany`="0" WHERE `user_login`='.$_SESSION['login'].'');


Ten post edytował prostowniczek 5.06.2013, 19:04:44
Go to the top of the page
+Quote Post
kuli95
post
Post #2





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 8.07.2012

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


  1. mysql_query('UPDATE `nazwaTwojejBazyDanych`.`users` SET `zalogowany` = "0" WHERE `user_login`="$_SESSION['login']";);


w kodzie nie podałeś nazwy Twojej bazy danych oraz powstawiałeś gdzieniegdzie kilka błędnych kropek, apostrofów i nie dałes na końcu średnika
Go to the top of the page
+Quote Post
Wazniak96
post
Post #3





Grupa: Zarejestrowani
Postów: 550
Pomógł: 75
Dołączył: 5.06.2012
Skąd: Lębork

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


Cytat(kuli95 @ 5.06.2013, 21:25:48 ) *
  1. mysql_query('UPDATE `nazwaTwojejBazyDanych`.`users` SET `zalogowany` = "0" WHERE `user_login`="$_SESSION['login']";);


w kodzie nie podałeś nazwy Twojej bazy danych oraz powstawiałeś gdzieniegdzie kilka błędnych kropek, apostrofów i nie dałes na końcu średnika


To co podałeś, że jest rzekomym błędem jest nie prawdziwe. Te zapytanie które podałeś jest co prawda poprawne(pomijając to, że zgubiłeś apostrof zakańczający zapytanie) ale jest to bardzo rozbudowana wersja. Bazę danych podajesz gdy nie masz jej wybrane przez mysql_select_db, a średnikiem oddzielasz kolejne zapytania. Kropki łączą podane odcinki stringów. Jedyne co było za duże to dołączenie spacji na końcu zapytania ale to nie ma różnicy.

Ja bym podane zapytanie zbudował raczej tak...
  1. mysql_query("UPDATE users SET zalogowany = '0' WHERE user_login='{$_SESSION['login']}'");

lub
  1. mysql_query("UPDATE users SET zalogowany = '0' WHERE user_login=".$_SESSION['login']);
Go to the top of the page
+Quote Post
goukan
post
Post #4





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 25.03.2013

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


  1. <?php
  2. $login = $_SESSION['login'];
  3. mysql_query("UPDATE users SET zalogowany='0' WHERE user_login='$login'");
  4. ?>


Ten post edytował goukan 5.06.2013, 21:52:46
Go to the top of the page
+Quote Post
Damonsson
post
Post #5





Grupa: Zarejestrowani
Postów: 2 355
Pomógł: 533
Dołączył: 15.01.2010
Skąd: Bydgoszcz

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


Cytat(goukan @ 5.06.2013, 22:52:33 ) *
  1. $login = $_SESSION['login'];

A to do czego niby?
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: 20.09.2025 - 14:16