sortowanie wartości w php

0

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

0

oraz od razu doczepiam tutaj pytanie jak zobaczyć czy np nick osoby jest już w bazie danych

0

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

1
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.

0
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

0

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

0

$check nie jest wynikiem zapytania do bazy tylko wynikiem funkcji prepare (w tym wypadku boolean)

0

a to jak powinienem to napisać tak to

0

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']."'");
0

używam mysqli nie pdo

0

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

0

Czyli Twoje zapytanie z prepare zwraca wartość FALSE. Sprawdź sobie $mysql->error co Ci zwróci

0

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

0

Możesz pokazać kod gdzie wstawiłeś obsługę tego błędu?

0
<?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->query("SELECT * FROM top_connection WHERE uid ='".$users['client_unique_identifier']."'"); $check->execute(); $date = $mysql->fetchAll(); if($date['uid'] == 0 && $users['client_type'] !=1) { $mysql->query("INSERT INTO top_connection VALUES (".$users['client_unique_identifier'].",".$users['client_nickname'].",".$clientinfo['client_totalconnections'].")"); } } } } ?>

tak wygląda cały kod funkcji

1 użytkowników online, w tym zalogowanych: 0, gości: 1