Ответы пользователя по тегу PHP
  • Как занести полученные данные в массив php?

    @nmike
    <?php
    $file_handle = fopen("user.txt", "r");
    $user_array = [];
    while (!feof($file_handle)) {
       $user_array[] = trim(fgets($file_handle));
    }
    fclose($file_handle);
    
    shuffle($user_array);
    print implode(' ', $user_array);
    Ответ написан
    Комментировать
  • Сложный запрос к БД

    @nmike
    ну вот если хочется поизвращаться :)

    SET @place := 0, @map_id := 0;
    
    SELECT 
    	IF(@map_id != map_id, @place := 1, @place := @place + 1) AS place, 
    	IF(@map_id != map_id, @map_id:=map_id, map_id) AS map_id,  
    	user_id, map_score , level, @place
    FROM (
      SELECT m.map_id, m.user_id, m.score AS map_score, p.level
        FROM MapsScores AS m, PlayersData AS p 
       WHERE m.user_id = p.id
       GROUP BY m.map_id, m.user_id 
       ORDER BY m.map_id ASC, m.score DESC
    ) AS tops
    GROUP BY map_id, user_id HAVING place <= СКОЛЬКО_НАРОДУ_ХОТИТЕ_В_ТОП
    ORDER BY map_id ASC, map_score DESC


    но проще сделать 50 запросов на каждую карту в отдельности — мускул вам будет благодарен :)
    Ответ написан
    Комментировать
  • Сложный запрос к БД

    @nmike
    это выведет всех, но с сортировкой

    SELECT m.map_id, m.user_id, m.score AS map_score, p.level
      FROM MapsScores AS m, PlayersData AS p
     WHERE m.user_id = p.id 
     GROUP BY m.map_id, m.user_id
     ORDER BY m.map_id ASC, m.score DESC
    

    а вот как отрезать в момент выборки…
    Ответ написан