Я пытаюсь получить количество друзей, которое есть у пользователя, но я не могу заставить его работать, поэтому я очень надеюсь, что вы сможете мне помочь.
Вот php
$findFriendssql = "select u.firstName, u.id from friends f, user u
where (f.u_ID1 = '$loggedId' and u.id = f.u_id2)
or (f.u_id2 = '$loggedId' and u.id = f.u_id1)";$all_friends_sql = $db->getRows($findFriendssql);
//$number_of_friends = mysql_num_rows($all_friends_sql);
if ($all_friends_sql) {
$number_of_friends = mysql_num_rows($all_friends_sql);
$friends = "";
foreach ($all_friends_sql as $one_post) {
//doing stuff here.
и вот функция получить строки
public function getRows($sql) {
$result = array();
$table = mysql_query($sql, $this->db_link);
if (!$table) {
die("\"$sql\" seems to be an invalid query: " . mysql_error());
}
while ($row = mysql_fetch_assoc($table)) {
array_push($result, $row);
}
return $result;
}
все, что я пытаюсь — я получаю ошибку, что num строк ожидает, что параметр 1 будет ресурсом.
заранее спасибо
$findFriendssql = "select u.firstName, u.id from friends f, user u where (f.u_ID1 = '$loggedId' and u.id = f.u_id2)
or (f.u_id2 = '$loggedId' and u.id = f.u_id1)";$all_friends_sql = $db->getRows($findFriendssql);
//$number_of_friends = mysql_num_rows($all_friends_sql);
if (count($all_friends_sql)>0) {
$number_of_friends = mysqli_num_rows($all_friends_sql);
$friends = "";
foreach ($all_friends_sql as $one_post) {
Предполагается, что строка num происходит сразу после этого:
$table = mysql_query($sql, $this->db_link);
$totalFirends = mysql_num_rows($table);
использование $table
в качестве входного параметра. $table
должен быть ресурсом. быть в состоянии использовать mysql_num_rows
,
Следующие изменения в вашей функции $table
больше не быть ресурсом. Кроме того, вам не нужен этот код, чтобы знать, сколько друзей у пользователя:
while ($row = mysql_fetch_assoc($table)) {
array_push($result, $row);
}
return $result;
}
Также, если вам нужен только номер, запрос должен измениться на SELECT COUNT(some-field)
И я не знаю, что такое содержание $loggedId
надеюсь, что вы проверили, что запрос возвращает то, что должен вернуться. правильно выводить запрос с примером данных, скажем, в phpmyadmin?