Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][MySQL][PHP]Ustawienie odpowiedniego obrazka
Forum PHP.pl > Forum > Przedszkole
18Pawel18
W bazie danych mam tabelę 'uzytkownicy' i pole 'plec'. W polu płeć mam wartość 1, 2 lub 3 w zależności jaki użytkownik jaką płeć wybrał. Chciałbym teraz wyświetlić użytkowników z avatarami. Napisałem taką funkcję ale wyświetla mi ona wszędzie tylko trzecią opcję tzn. avatar 3. Chcę, aby po dodaniu:
  1. <?php jakiAvatar() ?>
wyświetlał użytkowników z avatarmi im przypisanymi.

  1. function jakiAvatar(){
  2.  
  3. include('config.php');
  4.  
  5. //nawiązanie połączenia z bazą danych
  6. $baza = new PDO('mysql:host='.$host.';dbname='.$baza,$dbUzytkownik, $dbHaslo);
  7. $baza -> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  8. $baza->query('set names utf8');
  9.  
  10. $count = $baza->query('select plec from uzytkownicy');
  11. if($count->rowCount() > 0){
  12. $count = $count->fetchAll(PDO::FETCH_ASSOC);
  13. if($count[1]['plec'] == 1) {
  14. echo "<img src='../img/avatar1.png' alt='avatar'>";
  15. }
  16. else if($count[1]['plec'] == 2) {
  17. echo "<img src='../img/avatar2.png' alt='avatar'>";
  18. }
  19. else if($count[1]['plec'] == 3){
  20. echo "<img src='../img/avatar3.png' alt='avatar'>";
  21. }
  22. }
  23. }
  24.  
nospor
Czy tak ciezko zrobic:
print_r($count);
i zobaczyc co tak naprawde tam masz?
Jesli faktycznie są tam same 3 znaczy ze w bazie masz same 3 i tam szukaj bledu czemu same 3 wpisujesz.
18Pawel18
Tak mi wyświetla, i co mi to daje? Dobrze w bazie jest wpisane wszystko.
  1. Array ( [0] => Array ( [plec] => 2 ) [1] => Array ( [plec] => 3 ) [2] => Array ( [plec] => 1 ) [3] => Array ( [plec] => 1 ) [4] => Array ( [plec] => 1 ) [5] => Array ( [plec] => 2 ) [6] => Array ( [plec] => 1 ) [7] => Array ( [plec] => 1 ) [8] => Array ( [plec] => 2 ) [9] => Array ( [plec] => 1 ) [10] => Array ( [plec] => 1 ) [11] => Array ( [plec] => 1 ) [12] => Array ( [plec] => 1 ) [13] => Array ( [plec] => 2 ) [14] => Array ( [plec] => 2 ) )

Online
Janek Kowalski
Turson
A gdzie pętla, żeby wyświetlić wszystkie pobierane wyniki z bazy? dry.gif
18Pawel18
Gdzie ta pętla ma być?
Turson
  1. function jakiAvatar(){
  2.  
  3. include('config.php');
  4.  
  5. //nawiązanie połączenia z bazą danych
  6. $baza = new PDO('mysql:host='.$host.';dbname='.$baza,$dbUzytkownik, $dbHaslo);
  7. $baza -> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  8. $baza->query('set names utf8');
  9.  
  10. $count = $baza->query('select plec from uzytkownicy');
  11. if($count->rowCount() > 0){
  12. while($w=$count->fetch())
  13. {
  14. if($w['plec'] == 1) {
  15. echo "<img src='../img/avatar1.png' alt='avatar'>";
  16. }
  17. else if($w['plec'] == 2) {
  18. echo "<img src='../img/avatar2.png' alt='avatar'>";
  19. }
  20. else if($w['plec'] == 3){
  21. echo "<img src='../img/avatar3.png' alt='avatar'>";
  22. }
  23. }
  24. }
  25. }

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.