Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Kolejne pytanko :D
wiktor0000
post 29.04.2018, 12:17:14
Post #1





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 29.04.2018

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


Witam dzisiaj kolejny raz!
W bazie danych mam tabele "logowanie"
  1. CREATE TABLE `logowanie`(
  2. `id` int(11) NOT NULL AUTO_INCREMENT,
  3. `imie` varchar(255) NOT NULL,
  4. `nazwisko` varchar(255) NOT NULL,
  5. `plec` varchar(255) NOT NULL,
  6. `nick` varchar(255) NOT NULL,
  7. `haslo` varchar(255) NOT NULL,
  8. `email` varchar(255) NOT NULL,
  9. `dats` varchar(255) NOT NULL,
  10. `ranga` varchar(255) NOT NULL DEFAULT '0',
  11. `dolaczyl` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  12. PRIMARY KEY (id)
  13. )COLLATE=utf8_polish_ci;

I jak jakiś użytkownik miał rangę 1 to pokazywało go jako ranga:początkowy itd .
Próbowałem if($ranga == 1){
echo "Ranga:Początkowy";
}

Może mi ktoś pomóc biggrin.gif?



w przeglądaniu profilu mam if($rekord['ranga']==1){
echo "Początkowy";
}
ale jak zrobić żeby to wyświetlało na stronie głównej np


Już sobie poradziłem
  1. $pol = mysqli_connect("localhost","root","","logowanie");
  2. $zapytanie = "SELECT * FROM logowanie where ranga";
  3. $zap=mysqli_query($pol,$zapytanie);
  4. while($row=mysqli_fetch_array($zap))
  5. {
  6.  
  7. if($row['ranga'] == 1){
  8. echo "<p style='color: orange;'>".$row['nick'];
  9. }
  10. if($row['ranga'] == 4){
  11. echo "<p style='color: red;'>".$row['nick'];
  12. }
  13. }
  14. ?>

Go to the top of the page
+Quote Post
viking
post 29.04.2018, 12:24:41
Post #2





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

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


Ten where nic kompletnie u Ciebie nie robi.poza tym dlaczego wszystkie typy danych to varchar(255)?


--------------------
Go to the top of the page
+Quote Post
wiktor0000
post 29.04.2018, 12:37:16
Post #3





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 29.04.2018

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


viking a co to źle że mam varchar(255) ?
A to where to zapomniałem usunąć biggrin.gif

Jescze jedno mianowicie jeżeli mam te kolorki już to jak teraz zrobić ,gdy mamy np range 4. wyświetla się coś dodatkowego na stronie np. przycisk ?
Go to the top of the page
+Quote Post
viking
post 29.04.2018, 12:54:46
Post #4





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

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


Powinieneś się starać używać typ i długość odpowiednią do przechowywanych danych. Zwiększa to wydajność oraz jest dodatkowym zabezpieczeniem. Przykładowo hasło zahashowane najnowszym algorytmem Argon2i będzie miał max 120 znaków więc po co więcej? Płeć to enum albo jakiś tinyint. Na mailu brakuje raczej ograniczenia unikalnego itd. Zamiast styli dodawaj raczej klasy.
  1. if($row['ranga'] == 4) {
  2. echo "<p style='color: red;'>".$row['nick']. '<button type="submit" /></p>';
  3. }


--------------------
Go to the top of the page
+Quote Post
wxm
post 29.04.2018, 14:08:50
Post #5





Grupa: Zarejestrowani
Postów: 26
Pomógł: 1
Dołączył: 17.02.2018

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


Ja proponuję zrobić tabelę z rangami, będziesz miał możliwość zmian całej listy bez zaglądania w kod i wszystkie potrzebne do wyświetlania dane wczytasz jednym zapytaniem. Dodatkowo można będzie np. każdej randze przyporządkować określony styl wyświetlania jeśli ma mieć inny niż domyślny i nie będzie to wymagało nic więcej niż zmiany wartości w bazie danych i edycji pliku css.
Go to the top of the page
+Quote Post
mmmmmmm
post 30.04.2018, 10:21:18
Post #6





Grupa: Zarejestrowani
Postów: 1 421
Pomógł: 310
Dołączył: 18.04.2012

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


Cytat(viking @ 29.04.2018, 13:24:41 ) *
Ten where nic kompletnie u Ciebie nie robi.

Śmiem wątpić. http://sqlfiddle.com/#!9/c2ae72/1
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 Wersja Lo-Fi Aktualny czas: 30.03.2024 - 09:51