Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL] Odczyt kolumny z bazy danych
Forum PHP.pl > Forum > Przedszkole
Stron: 1, 2
Turson
Masz w ogóle login Nors w tej kolumnie?
Łączysz się bazą danych?
Nors
Cytat(kujol @ 20.04.2014, 12:04:14 ) *
Lepiej będzie jak wrzucisz cały skrypt.



Cały portfel.php/html czy to

  1.  
  2.  
  3. <?php
  4. $sql = mysql_query
  5. ("SELECT `money` FROM
  6. `użytkownicy` WHERE `login` = 'Nors' " );
  7. while ($rekord =
  8. echo "twoje pieniądze:" .
  9. $rekord ['0' ] ;
  10. }
  11. ?>
Turson
Nie łączysz się bazą danych!
Nors
Cytat(Turson @ 20.04.2014, 12:08:26 ) *
Nie łączysz się bazą danych!



łącze mam wyżej.

  1. <?php
  2.  
  3. mysql_connect('', '', '')
  4. or die('Nieudane polaczenie z baza danych...');
  5.  
  6. or die('Nie udalo sie wybrac bazy danych...');
  7.  
  8. $sql = mysql_query
  9. ("SELECT `money` FROM
  10. `użytkownicy` WHERE `login` = 'Nors' " );
  11. while ($rekord =
  12. echo "twoje pieniądze:" .
  13. $rekord ['0' ] ;
  14. }
  15. ?>
trueblue
użytkownicy czy uzytkownicy?
$rekord[0] a nie $rekord['0'];
Nors
Cytat(trueblue @ 20.04.2014, 12:27:13 ) *
użytkownicy czy uzytkownicy?
$rekord[0] a nie $rekord['0'];


dobra działa tak:

  1. <?php
  2. $sql = mysql_query
  3. ("SELECT `money` FROM
  4. `uzytkownicy` WHERE `login` = 'Nors' " );
  5. while ($rekord =
  6. echo "twoje pieniądze:" .
  7. $rekord[0];
  8. }
  9. ?>



a teraz jak zrobić aby każdy na swoim loginie miał swoją kwote. bo teraz pobiera kwote z loginu nors
Turson
Jeżeli masz z sesją wszystko w porządku, to wystarczy w zapytaniu podstawić tak jak miałeś wcześniej
Nors
zrobiłem to tak:


  1. $sql = mysql_query
  2. ("SELECT `money` FROM
  3. `uzytkownicy` WHERE `login` = '". $_SESSION['nick']."' " );
  4. while ($rekord =
  5. echo "twoje pieniądze:" .
  6. $rekord[0];
  7. }


I nie działa.
Turson
Jak mówiłem wcześniej, daj na samym początku skryptu
  1. var_dump($_SESSION);

i wklej tutaj rezultat
Nors
Cytat(Turson @ 20.04.2014, 17:21:22 ) *
Jak mówiłem wcześniej, daj na samym początku skryptu
  1. var_dump($_SESSION);

i wklej tutaj rezultat



mam tak:

  1. <?php
  2.  
  3. mysql_connect('', '', '')
  4. or die('Nieudane polaczenie z baza danych...');
  5.  
  6. or die('Nie udalo sie wybrac bazy danych...');
  7.  
  8. var_dump($_SESSION);
  9. die;
  10. $sql = mysql_query
  11. ("SELECT `money` FROM
  12. `uzytkownicy` WHERE `login` = '". $_SESSION['nick']."' " );
  13. while ($rekord =
  14. echo "twoje pieniądze:" .
  15. $rekord[0];
  16. }
  17. ?>


i nie działa
Turson
Ten kod nie ma sprawić, że pobieranie z bazy danych zacznie działać. Zamiast bezmyślnie działać na zasadzie kopiuj wklej, zacznij analizować co się tutaj mówi.
var_dump sprawdzi czy coś w sesji masz. Po wpisaniu tego var_dump powinieneś albo dostać tablicę sesji albo "null". Więc?
Nors
Cytat(Turson @ 20.04.2014, 17:27:36 ) *
Ten kod nie ma sprawić, że pobieranie z bazy danych zacznie działać. Zamiast bezmyślnie działać na zasadzie kopiuj wklej, zacznij analizować co się tutaj mówi.
var_dump sprawdzi czy coś w sesji masz. Po wpisaniu tego var_dump powinieneś albo dostać tablicę sesji albo "null". Więc?



No to jak to wkleić ?
Turson
Po prostu wklej tutaj rezultat kodu z posta #60...
Xart
Masz wkleić to co Ci podali wejść na stronę i zobaczyć co Ci wyświetli i to tutaj wkleić...
Na 100% ma sesję bo pisał że ma logowanie użytkownika...
Nors
mam zrobione tak:

  1. <?php
  2.  
  3. mysql_connect('', '', '')
  4. or die('Nieudane polaczenie z baza danych...');
  5.  
  6. or die('Nie udalo sie wybrac bazy danych...');
  7.  
  8. var_dump($_SESSION);
  9. die;
  10. $sql = mysql_query
  11. ("SELECT `money` FROM
  12. `uzytkownicy` WHERE `login` = '". $_SESSION['nick']."' " );
  13. while ($rekord =
  14. echo "twoje pieniądze:" .
  15. $rekord[0];
  16. }
  17. ?>



a na stronie mam takie coś:

array(4) { ["logged"]=> bool(true) ["id"]=> string(1) "3" ["nick"]=> NULL ["money"]=> string(3) "200" }
Turson
['nick']=>null
czyli przy logowaniu gdzie ustalasz sesje masz błąd z przypisaniem nicku
Nors
Mam takie coś:
  1. // jeśli zostanie naciśnięty przycisk "Zaloguj"
  2. if(isset($_POST['ok']))
  3. {
  4. $nick = trim($_POST['nick']);
  5. $pass = trim($_POST['pass']);




I takie coś:

  1. // dodawanie do sesji id użytkownika, login oraz datę rejestracji
  2. $_SESSION['id'] = $row['id'];
  3. $_SESSION['nick'] = $row['nick'];
  4. $_SESSION['money'] = $row['money'];

Turson
Przy logowaniu wpisałeś w ogóle nick?
id i money pobrało z bazy prawidłowo, a nick nie, więc może ten rekord jest pusty
Nors
Cytat(Turson @ 20.04.2014, 18:53:11 ) *
Przy logowaniu wpisałeś w ogóle nick?
id i money pobrało z bazy prawidłowo, a nick nie, więc może ten rekord jest pusty



tak wpisałem
Xart
Z tymi monetami wcześniej niepotrzebnie pobierał dane bo ma je w sesji...
Turson
Cytat(Xart @ 20.04.2014, 18:54:44 ) *
Z tymi monetami wcześniej niepotrzebnie pobierał dane bo ma je w sesji...

Dane w bazie mogą się zmienić, a w sesji pozostaną stare.

Cytat(Nors @ 20.04.2014, 18:54:07 ) *
tak wpisałem

W zapytaniu masz WHERE `login` = coś tam, a w sesji trzymasz i pobierasz z bazy nick. Ot co. Zagadka rozwiązana
Xart
Zmień tam

  1. $_SESSION['nick'] = $row['nick'];


na

  1. $_SESSION['nick'] = $row['login'];


bo tak masz w bazie...
Nors
A gdzie dokładnie w tym kodzie:

  1. $sql = mysql_query
  2. ("SELECT `money` FROM
  3. `uzytkownicy` WHERE `login` = '". $_SESSION['nick']."' " );
  4. while ($rekord =
  5. echo "twoje pieniądze:" .
  6. $rekord[0];
  7. }



mam wkleić to :

  1. var_dump($_SESSION);
  2. die;
Xart
Tego już nie wklejaj zmień to co Ci podałem w moim poprzednim poście w tej częście kodu...

  1. // dodawanie do sesji id użytkownika, login oraz datę rejestracji
  2. $_SESSION['id'] = $row['id'];
  3. $_SESSION['nick'] = $row['nick'];
  4. $_SESSION['money'] = $row['money'];



wpisz poprostu zamiast tamtego u góry to

  1. // dodawanie do sesji id użytkownika, login oraz datę rejestracji
  2. $_SESSION['id'] = $row['id'];
  3. $_SESSION['nick'] = $row['login'];
  4. $_SESSION['money'] = $row['money'];


bo w bazie masz tabele login to jakim cudem z tablicy się znalazł nick...
Nors
mam tak:

login.php
  1. $_SESSION['id'] = $row['id'];
  2. $_SESSION['nick'] = $row['login'];
  3. $_SESSION['money'] = $row['money'];


Portfel.html

  1. <?php
  2. $sql = mysql_query
  3. ("SELECT `money` FROM
  4. `uzytkownicy` WHERE `login` = '". $_SESSION['nick']."' " );
  5. while ($rekord =
  6. echo "twoje pieniądze:" .
  7. $rekord[0];
  8. }
  9. ?>
łączenie z bazą mam nad $sql = ...


I nic się nie wyświetla
Xart
No i co Ci nie działa ?
Nors
No i nic się nie wyświetla na stronie. pusto jest.
Xart
Usuń tamten twój kod i wklej to

  1. <?php
  2. $login = $_SESSION['nick'];
  3. $sql = mysql_query("SELECT `money` FROM `uzytkownicy` WHERE `login` = '$login'");
  4. while ($rekord = mysql_fetch_assoc($sql)){
  5. echo $rekord['money'];
  6. }
  7. ?>


Aaaa i po zmianie wyloguj się i zaloguj do panelu zeby się sesja zaktualizowała
Nors
Nic się nie wyświetla
Turson
Musisz się wylogować i zalogować jeszcze raz, żeby zmiany weszły w życie, bo teraz są martwe
Xart
Turson ja wale ....
ja sie g*wno znam na PHP no ale to to już jest przesada....

NIECH KTOŚ ZAMKNIE TEN TEMAT BO AUTOR JEST TĘPY I LICZY NA GOTOWCA TO PO 1
PO 2 ZŁY DZIAŁ BO TO NIE GOTOWE ROZWIĄZANIA
AUTOR MA WSZYSTKO GDZIESZ CHCE ŻEBY ZROBIĆ MU GOTOWCA A NIE POTRAFI SIĘ PRZELOGOWAĆ
ROBI PLIKI PHP Z ROZSZERZENIEM HTML LUDZIE.....

SZALG MNIE TRAFI
Nors
Dobra wszystko działa!

DZIĘKI WIELKIE WSZYSTKIM ZA POMOC.

Pozdrawiam
Xart
Moze dałbyś Pomógł co ?
Nie łaska już kliknąć ...
kujol
Wywala jakiś błąd, pokaż jaki. Wyświetl sobie tą sesję za pomocą echo i sprawdź czy na pewno jest tam nick zalogowanego użytkownika.
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.