Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Zapisywanie rekordów z tabeli do zmiennej i sesji
Forum PHP.pl > Forum > Przedszkole
Popek231
Witam, napisałem kod, który zanim zamieni aktualną date i IP w tabeli powinien ją pobrać i zapisać do zmiennej i/lub sesji, niestety kod nie chce działać.. kod który zamienia działa bez zarzutu...

KOD:
  1. $login_pass = mysql_fetch_array($wynik);
  2. $_SESSION['LoginAccept'] = $login_pass['login'];
  3.  
  4. //$_SESSION['lastloginip'] = $login_pass['lastloginip'];
  5. //$_SESSION['lastlogin'] = $login_pass['lastlogin'];
  6.  
  7. //$_SESSION['lastloginip'] = mysql_query("SELECT 'last_login_ip' FROM $tabela WHERE login='$login'");
  8. //$_SESSION['lastlogin'] = mysql_query("SELECT 'last_login' FROM $tabela WHERE login='$login'");
  9.  
  10. $lastloginip = mysql_query("SELECT 'last_login_ip' FROM $tabela WHERE login='$login'");
  11. $lastlogin = mysql_query("SELECT 'last_login' FROM $tabela WHERE login='$login'");
  12. $_SESSION['lastloginip'] = $lastloginip;
  13. $_SESSION['lastlogin'] = $lastlogin;
  14. //echo mysql_error();
  15.  
  16. $data = date("Y-m-d H:i:s");
  17. $ip = $_SERVER['REMOTE_ADDR'];
  18. $wynik = mysql_query("UPDATE $tabela SET last_login_ip='$ip', last_login='$data' WHERE login='$login'");
  19.  
  20. header('Location: index.php?page=logged&communicate=login');


MOJE DODATKOWE PYTANIE DO KODU:
która z zakomentowanych lub nie, części jest dobra - i mogę ich nie komentować?
nospor
1) Zajrzyj do manuala i zobacz co robi mysql_query(). Bo wbrew temu co myslisz, to nie zwraca ani rekordu ani kolumny
2) Apostrofow nie uzywa sie do otaczania nazw kolumn
Popek231
1. To dlaczeog mysql_query(); zrwaca TOP5 przez takie coś?
  1. $TOP5 = mysql_query("SELECT `id`, `login`, `score` FROM $tabela ORDER BY `score` LIMIT 5");

Dobra, poczytam o tym jeszcze:D

2. W początkowej wersji nie było, ale zmieniłem, ponieważ pomyślałem, że w tym może być błąd :)
- już w kodzie usunąłem :)
nospor
ad1) Poniewaz tam gdzies dalej wkodzie robisz mysql_fetch_array, ktore to wlasnie dopiero odbiera rekordy z zapytania. W kodzie co tu masz, masz samo mysql_query, kapisz? To naprawde proste a wszytko dokladnie opisane w manualu.
Popek231
To dlaczego taki kod nie działał?
  1. $login_pass = mysql_fetch_array($wynik);
  2. $_SESSION['LoginAccept'] = $login_pass['login'];
  3.  
  4. $_SESSION['lastloginip'] = $login_pass['lastloginip'];
  5. $_SESSION['lastlogin'] = $login_pass['lastlogin'];
nospor
$login_pass = mysql_fetch_array($wynik);

A skad ja mam niby wiedziec skad ci sie wziela zmienna $wynik? Wrozyc mam? Bo chyba gdzies przypisales do niej wynik mysql_query?
Popek231
wybacz, jakiś nie swój dziś jestem:D

  1. $wynik=mysql_query("SELECT * FROM $tabela WHERE login='$login' and pass='$pass' and status=1");
  2. if (mysql_num_rows($wynik) == 1) {


jeśli hasło, login i status jest git to idzie dalej;)

czyli dokładniej to:

  1. $wynik=mysql_query("SELECT * FROM $tabela WHERE login='$login' and pass='$pass' and status=1");
  2. if (mysql_num_rows($wynik) == 1) {
  3. $login_pass = mysql_fetch_array($wynik);
  4. $_SESSION['LoginAccept'] = $login_pass['login'];
  5.  
  6. $_SESSION['lastloginip'] = $login_pass['lastloginip'];
  7. $_SESSION['lastlogin'] = $login_pass['lastlogin'];
  8. }


---
czyli w sumie jest tam mysql_query(); ...

ale w każdym skrypcie jaki szukałem na google jest właśnie to..
więc możesz mnie nakierować..? dzięki:)
nospor
Czyli co? Ten kod nadal ci nie dziala?
ZNaczy ze
albo nie znalazl rekordu
albo masz blad zapytania

Bardzo pozytecznie wskazowki jak szukac bledu:
Temat: Jak poprawnie zada pytanie
Przeczytaj temat uwaznie i zastosuj sie prawie do wszystkiego
Popek231
hmm... jednak miałem błąd w napisanym przeze mnie tekście...
zamiast $login_pass['lastlogin'], powinno być $login_pass['last_login'] - tak jak w bazie mam...

moja wina.. :D
wybacz:D

dzięki za pomoc wszystkim :)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.