hejka mam pytanie jak wybrać największą wartości jeżeli np rekordy były by
1.5
2.4
3.8
i chce żeby były posortowane od największej wartości do najmniejszej
oraz od razu doczepiam tutaj pytanie jak zobaczyć czy np nick osoby jest już w bazie danych
Jeśli masz te wartości w tablicy, to wystarczy zwykła funkcja sort i Ci posortuje ładnie od najmniejszej do największej.
Co do drugiego pytania, to wyciągasz sobie dane z bazy gdzie przechowujesz osoby i następnie sprawdzasz jakimś ifem, czy istnieje nick który chcesz sprawdzić w bazie
MatKib77 napisał(a):
Co do drugiego pytania, to wyciągasz sobie dane z bazy gdzie przechowujesz osoby i następnie sprawdzasz jakimś ifem, czy istnieje nick który chcesz sprawdzić w bazie
Co to za rada? Strasznie niejasno napisane.
Robisz zapytanie do bazy o konkretny nick i jeśli coś wypluje to nick istnieje jeśli nie to nie istnieje.
SekretarzGeneralnyONZ napisał(a):
MatKib77 napisał(a):
Co do drugiego pytania, to wyciągasz sobie dane z bazy gdzie przechowujesz osoby i następnie sprawdzasz jakimś ifem, czy istnieje nick który chcesz sprawdzić w bazie
Co to za rada? Strasznie niejasno napisane.
Robisz zapytanie do bazy o konkretny nick i jeśli coś wypluje to nick istnieje jeśli nie to nie istnieje.
No to przykro mi, że ta rada nie jest dla Ciebie jasna, ale moim zdaniem prościej się tego nie da wytłumaczyć. A Ty praktycznie napisałeś to samo, a nawet o wiele gorzej
a wiecie może czemu to nie działa
<?php /* Owner: Emos Function: top_connection Desc: pokazuje top połączeń użytkowników */ function top_connection() { global $tsAdmin,$config,$clients,$mysql; if($config['function']['top_connection']['status'] == true) { foreach ($clients as $users) { $clientinfo = $tsAdmin->getElement('data', $tsAdmin->clientInfo($users['clid'])); $check = $mysql->prepare("SELECT * FROM top_connection WHERE uid ='".$users['client_unique_identifier']."'"); $date = mysqli_num_rows($check); if($date == 0 && $users['client_type'] !=1) { $mysql->prepare("INSERT INTO top_connection VALUES (".$users['client_unique_identifier'].",".$users['client_nickname'].",".$clientinfo['client_totalconnections'].")"); } } } } ?>dokładnie to $date = mysqli_num_rows($check); nie chce sie wykonać a pisze PHP Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, booleanven in /home/premium-K-BOT/files/functions/top_connection.php on line 20
$check nie jest wynikiem zapytania do bazy tylko wynikiem funkcji prepare (w tym wypadku boolean)
a to jak powinienem to napisać tak to
Po prepare trzeba zrobić execute i dopiero po tym wyciągać dane:
$mysql->execute();
$result = $mysql->fetchAll();
I w $result masz swoje dane. Po drugie, po co używać PDO skoro i tak parametry przekazujesz w TEN sposób:
$check = $mysql->prepare("SELECT * FROM top_connection WHERE uid ='".$users['client_unique_identifier']."'");
używam mysqli nie pdo
Uncaught Error: Call to a member function execute() on boolean in /home/premium-K-BOT/files/functions/top_connection.php:20
Stack trace:
#0 /home/premium-K-BOT/core.php(87): top_connection()
#1 {main}
thrown in /home/premium-K-BOT/files/functions/top_connection.php on line 20
w
$check->execute();
dało błąd taki że to jest źle
Czyli Twoje zapytanie z prepare zwraca wartość FALSE. Sprawdź sobie $mysql->error co Ci zwróci
PHP Fatal error: Uncaught Error: Call to a member function execute() on boolean in /home/premium-K-BOT/files/functions/top_connection.php:20
Stack trace:
#0 /home/premium-K-BOT/core.php(87): top_connection()
#1 {main}
thrown in /home/premium-K-BOT/files/functions/top_connection.php on line 20
Możesz pokazać kod gdzie wstawiłeś obsługę tego błędu?
tak wygląda cały kod funkcji