4ответ(ов) в теме
Андрей Кадосин
не в сети 8 лет
На сайте с 25.12.2016
Участник
1
13:51

Делаю рейтинг партнеров по заработку, так как я начинающий програмер )), может кто подскажет как доработать код.
Сайт на WP + WooCommerce + WPRecall + PartnerSystem Recall + Money Wallet Recall
Вопросы:
1. Как правильно подключить базу данных с помощью WP (что то так и не заработало через global $wpdb, что то не так делаю)? А то приходиться отдельно подключаться к БД, несмотря на то что WP уже и так к ней подключен.
2. Как можно получившийся список сортировать по сумме, сначало те у кого сумма больше и к уменьшению, например чтобы вывести ТОП 100 лучших партнеров?

<?PHP

$user_count = rcl_get_user_balance($user_id);
echo "Текущий баланс: ".$user_count."<br />";


mysql_connect("localhost", "ИМЯ БД", "ПАРОЛЬ БД") or die (mysql_error ());
 
mysql_select_db("ИМЯ БД");

$my_id = get_current_user_id();
 
$sql= mysql_query ("SELECT `user_login` FROM `ПРЕФИКСБД_users` WHERE `id` =".$my_id);
 
$data = mysql_fetch_assoc($sql);

 
echo "Ваш логин: ".$data[user_login], "<br />";

$sql= mysql_query ("SELECT `count_pay` FROM `ПРЕФИКСБД_rcl_wallet_history` WHERE `user_id` =".$my_id." AND `type_pay` = 2");
 
 $i=0;
 $nn=1;
 echo "Ваши начисления:<br />";
while($row = mysql_fetch_array($sql)) {

	   	$i = $i + $row[count_pay];
		echo $nn++.": ".$row[count_pay]."<br />";
	  }
	  
echo "За все время вам начислили: ".$i;

echo "<br />========================================<br />";

$nn=1;
 
$sql= mysql_query ("SELECT `user_id` FROM `ПРЕФИКСБД_rcl_wallet_history` WHERE `type_pay` = 2");

while($row = mysql_fetch_array($sql)) {
		$arr[] = $row[user_id];
	  }
	  
$result = array_unique($arr);


echo "В партнерке получили прибыль уже ".count($result)." партнеров!<br />";

echo "<table>";
echo "<tr>
		<td>№</td>
		<td>Партнер</td>
		<td>Полученный доход</td>
	</tr>";

$x=0;
$pn=1;
while ($x< count($result) )
{

	while ($result[$x] == 0) {
		$x++;
	}
	
################################################
$sql= mysql_query ("SELECT `count_pay` FROM `ПРЕФИКСБД_rcl_wallet_history` WHERE `user_id` =".$result[$x]." AND `type_pay` = 2");

$my_user = get_user_by('id', $result[$x]);
echo "<tr>";
echo "<td>".$pn++."</td>";

echo "<td>".$my_user->user_login."</td>";
 
$i=0;
 
while($row = mysql_fetch_array($sql)) {
	   	$i = $i + $row[count_pay];
	  }
	  
echo "<td>".$i."</td>";
echo "</tr>";
################################################
$x++; // Увеличение счетчика
}
echo "</table>";
mysql_close();

?>

0
Вова (Otshelnik-Fm)
не в сети 5 дней
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18654
2
13:53

Тема дубль!

Вы не можете просматривать опубликованные ссылки

Так делать не нужно!
Закрыто

0
Вова (Otshelnik-Fm)
не в сети 5 дней
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18654
3
14:07

Тему перенес и открыл. Кастомизации решаются в этой ветке форума

0
Андрей CS
не в сети 2 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16936
4
14:48

с БД работаем через global $wpdb, все работать должно, читайте о действующих методах этого класса и работайте с ними.
Если нужна сортировка по значению, то применяйте при выборке ORDER BY

0
Тема закрыта. Публикация новых сообщений запрещена.