Skip to content

Не большой кодик...

Помогите сделать переменную $player_a['name'] чтобы она отображалась слева где будет выводится. (align"left")

Можно было сделать там где и выводится, ну там сделано по дурному, приходится тут делать...

  function lgsl_sort_players_by_name($player_a, $player_B)
 {
   // REMOVE NON ALPHA NUMERIC ASCII WHILE LEAVING UPPER UTF-8 CHARACTERS
   $name_a = preg_replace("/[\x{00}-\x{2F}\x{3A}-\x{40}\x{5B}-\x{60}\x{7B}-\x{7F}]/", "", $player_a['name']);
   $name_b = preg_replace("/[\x{00}-\x{2F}\x{3A}-\x{40}\x{5B}-\x{60}\x{7B}-\x{7F}]/", "", $player_b['name']);

   if (function_exists("mb_convert_case"))
   {
     $name_a = @mb_convert_case($name_a, MB_CASE_LOWER, "UTF-8");
     $name_b = @mb_convert_case($name_b, MB_CASE_LOWER, "UTF-8");
     return strcmp($name_a, $name_B);
   }
   else
   {
     return strcasecmp($name_a, $name_B);
   }
 }

Edited by VetalDX

Featured Replies

lgsl_sort_players_by_name

Из имени функции прекрасно видно что это функция сортировки плееров. Все позиционирования слева, справа, сверху, снизу делаются через стили.

  • Author

выводится в файле lgsl_details.php

        foreach ($fields as $field)
       {
         $output .= "<th>{$player[$field]}</th>";
       }

 

и если тут поставить так

$output .= "<th align='left'>{$player[$field]}</th>";

то тогда все будет слева что мне и не надо...

Edited by siv1987

НУ может прописать дополнительное условие в этом цикле:

 

если $field == 'name' то <th align='left'>{$player[$field]}</th>

иначе <th>{$player[$field]}</th>

 

Примерно такой смысл.

Через стиль не получится

Почему? Вы пробовали?

 

то тогда все будет слева что мне и не надо

Для этого специально существуют css селекторы htmlbook.ru/css/nth-child

НУ может прописать дополнительное условие в этом цикле:

 

       foreach ($fields as $key => $field)
       {
         $output .= "<th".($key == 'что-то' ? ' align="left"' : '').">{$player[$field]}</th>";
       }

  • Author

       foreach ($fields as $key => $field)
       {
         $output .= "<th".($key == 'что-то' ? ' align="left"' : '').">{$player[$field]}</th>";
       }

ничего не понял

 

Сам кусок вывода выглядит так

      foreach ($server['p'] as $player_key => $player)
     {
       $output .= "
       <tr style='".lgsl_bg()."; table-layout:fixed'>";
	$d=0;
       $i++;
	$output .= "<th>{$i}</th>";

       foreach ($fields as $field)
       {
         $output .= "<th>{$player[$field]}</th>";
       }

       $output .= "
       </tr>";
     }

Edited by VetalDX

ничего не понял

Я более далёк от программирования, но понял так:

обход массива идет по "ключ"->"значение"

Если ключ попадает под наше условие, то в строке вывода в нужном нам месте вписывается свойство left.

 

siv1987 привел условие if-else в краткой форме. Попробуйте. Или напишите по-своему через

 

if {

...

} else {

...

}

 

А как конкретно прописать условие уже и не скажешь, Вы сообщениями выше удалили весь код (

 

---

ПС: Вам надо этим условием из массива $fields вычленить нужный элемент. Смотрите, какую структуру и поля имеет этот массив, что он из себя представляет

Edited by Viktar83

Для этого специально существуют css селекторы htmlbook.ru/css/nth-child

 

Сразу не обратил внимание на это сообщение. А ведь это лучший способ, без копания в коде.

Надо только удостовериться, что нужный элемент всегда будет на своем месте, определенным по счету.

ничего не понял

Зачем тогда лезть в коде если ничего не понимаете? Юзайте css селекторы, с дедушкиных времен они существенно эволюционировали и нынче позволяют выбрать абсолютно любой элемент на странице. Где у вас таблица? Почему в боард_урл прописан левый адрес?

 

 

Сам кусок вывода выглядит так

Ну пропишите

 

       foreach ($fields as $key => $field)
       {
         $output .= "<th class='lgsl-th-{$key}'>{$player[$field]}</th>";
       }

В качестве селектора используйте класс .lgsl-th-ключ

ключ это то значение которое является ключом в массиве $fields.

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.