Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][PHP] Problem z ifem
bolus150
post
Post #1





Grupa: Zarejestrowani
Postów: 150
Pomógł: 0
Dołączył: 14.06.2008

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


Może mi ktoś powiedzieć czy mogę tak zdefiniować ifa?

  1. if($row['user_level'] = 2){
  2. $admin
  3. }elseif($row['user_level'] == 1){
  4. $mod
  5. }else{
  6. $user };
  7. echo '<td>
  8. '.$admin.' = Admin
  9. '.$mod.' = Mod
  10. '.$user.' = User
  11. </td>';


If ma za zadanie wyciągnąć z bazy liczbę 2, 1 lub 0 i odpowiednio wyświetlić w tabeli.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
kreatiff
post
Post #2





Grupa: Zarejestrowani
Postów: 324
Pomógł: 105
Dołączył: 7.08.2012

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


Błędy:
1. Operator przypisania zamiast porównania w pierwszym if.
2. Same zmienne w warunkach nic nie dają, do tego linię kończymy;
3. If z bazy niczego wyciągnąc nie może, bo nie do tego służy.

Można to zrobić np. tak:
  1. if ( $row['user_level'] == 2 ) {
  2. $user = 'Admin';
  3. } elseif ( $row['user_level'] == 1 ) {
  4. $user = 'Mod';
  5. } else {
  6. $user = 'User';
  7. };
  8. echo "<td>$user</td>";
I taka porada na przyszłość, by skrypt za nas wyłapał błędy jak w pierwszej linii Twojego skryptu.
Zamiast
  1. if ( $row['user_level'] = 2 ){ // tutaj nastęuje przypisanie do zmiennej $row['user_level'] wartości 2, nie zgłaszany jest żaden błąd, bo to poprawne działanie
można stosowac odwrotny zapis, czyli
  1. if ( 2 = $row['user_level'] ){ // w tym wypadku skrypt zwróci błąd, i od razu wiemy w której linii coś nam nie gra
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 19.08.2025 - 18:01