Новости Joomla

Вышли релизы Joomla 6.1 и Joomla 5.4.5: новые возможности и стабильность

Релиз Joomla 6.1.0

Проект Joomla! объявил о доступности Joomla 6.1 [Nyota] — новой минорной версии шестой серии, а также о выпуске релиза исправлений ошибок Joomla 5.4.5. Релиз 6.1 приносит ряд долгожданных функций, повышающих удобство управления контентом и защиту от спама.

0 Пользователей и 1 Гость просматривают эту тему.
  • 21 Ответов
  • 1263 Просмотров
*

Deonisich

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Помогите пожалуйста, смысл вопроса таков, делаю сайт для определённой категории людей... Там есть возможность создать встречу в определённом месте, для тренировок, где зарегестрировавшийся пользователь вбив данные о времени, месте встречи, и т.д. заносит эти данные в БД. Так вот вопрос, на другой странице все эти встечи видны в виде таблицы, тоесть:

$dbo = JFactory::getDbo();
$query1 = $dbo->getQuery(true);
$query1->select(array('a.date_run', 'a.time_run', 'a.starting_place', 'a.distance_run', 'a.speed_run', 'b.firstname', 'b.lastname', 'a.call_me', 'a.age_run', 'a.gender', 'a.id_run', '(SELECT COUNT('id_training') FROM '#__narod' WHERE '#__training.id_run'='#__narod.id_training') As Ludi' 'count(c.id_training As Ludi')))
(SELECT COUNT(*) FROM `page` WHERE page.category_id = category.id) as `count`
->from('#__training As a')
->join('INNER', '#__comprofiler AS b ON (a.id_user = b.user_id)')
->join('INNER', '#__narod AS b ON (a.id_run = c.id_training)');
$dbo->setQuery($query1);
$result = $dbo->loadAssocList();
echo '<table border="1" style="font-size:.8em">';
echo '<thead>';
echo '<tr>';
echo '<th>Дата тренировки</th>';
echo '<th>Время тренировки</th>';
echo '<th>Место тренировки</th>';
echo '<th>Дистанция</th>';
echo '<th>Скорость</th>';
echo '<th>Организатор</th>';
echo '<th>Фамилия</th>';
echo '<th>Связь</th>';
echo '<th>Возраст участников</th>';
echo '<th>Пол участников</th>';
echo '<th>Хотели бы вы присоединиться к тренировке?</th>';     // ?   ВОПРОС ИМЕННО ПО ЭТОМУ ПОЛЮ...
echo '</tr>';
echo '</thead>';
echo '<tbody>';
foreach($result as $data)
{
echo '<tr>';
echo '<td>' . $data['date_run'] . '</td>';
echo '<td>' . $data['time_run'] . '</td>';
echo '<td>' . $data['starting_place'] . '</td>';
echo '<td>' . $data['distance_run'] . '</td>';
echo '<td>' . $data['speed_run'] . '</td>';
echo '<td>' . $data['firstname'] . '</td>';
echo '<td>' . $data['lastname'] . '</td>';
echo '<td>' . $data['call_me'] . '</td>';
echo '<td>' . $data['age_run'] . '</td>';
echo '<td>' . $data['gender'] . '</td>';
echo '<td> <a href=index.php?option=com_content&view=article&id=61&id_run=<?= $id_r ?>">Присоединиться</a></td>';  //? Хотел сделать в виде $_POST но ничего не выходит с присвоением переменной!
echo '</tr>';
}
echo '</tbody>';
echo '</table>';

Так вот если посмотреть на последний столбец таблицы, там как раз и есть ссылка на то, что бы присоединиться к этой тренировке, к примеру там несколько разных тренировок, может 10, а может и больше, так вот как сделать так что пользователь в зависимости от того какую тренировку выбрал (на какой строке нажал кнопку ПРИСОЕДИНИТЬСЯ) к такой именно тренировке и присоединился, конкретнее записалась запись в таблицу с его id и с id той тренировке, которую он выбрал?! Помогите разобраться, если нужно подробнее описать суть проблемы, напишите мне на почту deonisich@gmail.com, буду надеяться что кто-нибудь откликнется...
« Последнее редактирование: 09.10.2014, 15:06:24 от Deonisich »
*

Deonisich

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Ребята, ну что, не ужели не кто не знает, как мне запомнить в переменной выбранный id строки из таблицы? Откликнитесь пожалуйста...
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Deonisich перестаем гомнокодить и вместо повторяющегося echo пишем
Код: php-brief
$html = 'a';
$html .= 'b';
$html .= 'c';
echo $html;
переход по ссылке это GET, а не POST
*

Deonisich

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Да прошу прощения, про POST, у меня там так и было $id_r = $_GET['id_run'];
а в таблице echo '<td> <a href=index.php?option=com_content&view=article&id=61&id_run=<?= $id_r ?>">Редакт</a></td>';
но ничего не происходит...

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

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
href=index.php?option=com_content&view=article&id=61&id_run=<?= $id_r ?>" - кавычку забыли поставить, href="index.php?option=com_content&view=article&id=61&id_run=<?= $id_r ?>" - по идее
« Последнее редактирование: 10.10.2014, 22:45:47 от zomby6888 »
интернет-блог: http://websiteprog.ru
*

Deonisich

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
href=index.php?option=com_content&view=article&id=61&id_run=<?= $id_r ?>" - кавычку забыли поставить, href="index.php?option=com_content&view=article&id=61&id_run=<?= $id_r ?>" - по идее
Ну это я копировал с блокнота, в коде у меня вот так echo '<td> <a href="index.php?option=com_content&view=article&id=61&id_run=<?= $id_r ?>">Редакт</a></td>';
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
ну и как вы потом эту переменную получаете? $_GET['id_run'] выводит что нибудь? Версия php какая ? short-tags директива включена в настройках php?
echo '<td> <a href="index.php?option=com_content&view=article&id=61&id_run=<?= $id_r ?>">Редакт</a></td>' -вобще неправильный синтаксис:
вот так правильно:
echo '<td> <a href="index.php?option=com_content&view=article&id=61&id_run='. $id_r .'">Редакт</a></td>'
интернет-блог: http://websiteprog.ru
*

Deonisich

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Версия 5.5, я пытался хотябы просто вывести на эту же страницу id выбранной тренировки, но без успешно (((
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
может быть в $data['id_run'] нужная вам переменная?
попробуйте:
echo '<td> <a href="index.php?option=com_content&view=article&id=61&id_run='.$data['id_run'].'">Присоединиться</a></td>';
« Последнее редактирование: 10.10.2014, 23:03:15 от zomby6888 »
интернет-блог: http://websiteprog.ru
*

Deonisich

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Так в том то и дело она не появляется, по идеи я так и думал, что она должна зафиксироваться в переменной...
*

motokraft

  • Завсегдатай
  • 1326
  • 72 / 13
$dbo = JFactory::getDbo();
$query1 = $dbo->getQuery(true);
$query1->select(array('a.date_run', 'a.time_run', 'a.starting_place', 'a.distance_run', 'a.speed_run', 'b.firstname', 'b.lastname', 'a.call_me', 'a.age_run', 'a.gender', 'a.id_run', '(SELECT COUNT('id_training') FROM '#__narod' WHERE '#__training.id_run'='#__narod.id_training') As Ludi' 'count(c.id_training As Ludi')))
(SELECT COUNT(*) FROM `page` WHERE page.category_id = category.id) as `count`
->from('#__training As a')
->join('INNER', '#__comprofiler AS b ON (a.id_user = b.user_id)')
->join('INNER', '#__narod AS b ON (a.id_run = c.id_training)');
$dbo->setQuery($query1);
$result = $dbo->loadAssocList();

я не понимаю че Вы мучаетесь!
используй простой запрос к БД, который будет понятен не только тебе, но и системе...

К примеру!
Код
$db = JFactory::getDBO;
$query = "запрос к БД";
$db->setQuery($query);
$result = $db->loadAssocList();

далее

Код
foreach($result as $data)
{
формирование строки в таблице
}

...
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Не вижу особой разницы, запрос с двумя джоинами и двумя подзапросами, не такой уж и сложный для чтения..
интернет-блог: http://websiteprog.ru
*

Deonisich

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Тоесть если даже просто наводить на любую из строк таблице по ссылке  echo '<td> <a href="index.php?option=com_content&view=article&id=61&id_run=<?= $id_r ?>">ПРИСОЕДИНИТЬСЯ</a></td>'; то переход не осуществляется, внизу название ссылки выглядит следующем образом: www.site.ru/index.php/feature/joomla-overview/test?id_run=              ?- и всё пусто (((
*

Deonisich

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
я не понимаю че Вы мучаетесь!
используй простой запрос к БД, который будет понятен не только тебе, но и системе...

К примеру!
Код
$db = JFactory::getDBO;
$query = "запрос к БД";
$db->setQuery($query);
$result = $db->loadAssocList();

далее

Код
foreach($result as $data)
{
формирование строки в таблице
}



Да это то всё давно сформировано и показывается, просто к каждой строке у меня прикреплена ссылка на то что бы пользователь мог присоединится, по другому добавится в БД его id и id выбранной им тренировки, вот с выводом id тренировки у меня и проблема (((
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
вы пробовали то что я выше написал? Да у вас ошибок тут немерянно:
->join('INNER', '#__comprofiler AS b ON (a.id_user = b.user_id)')
->join('INNER', '#__narod AS b ON (a.id_run = c.id_training)');
что за странные джоины? может в первой джоине
->join('INNER', '#__comprofiler AS с ON (a.id_user = с.user_id)')
интернет-блог: http://websiteprog.ru
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
т.е. $id_r судя по коду из топика - вообще не определена
и если включить показ ошибок (например, error_reporting(E_ALL), вначале кода), то видимо можно увидеть сообщение об этом
*

motokraft

  • Завсегдатай
  • 1326
  • 72 / 13
Не вижу особой разницы, запрос с двумя джоинами и двумя подзапросами, не такой уж и сложный для чтения..

но все равно понятнее,  что и где делается!

<a href="index.php?option=com_content&view=article&id=61&id_run=<?= $id_r ?>">ПРИСОЕДИНИТЬСЯ</a>

я думаю что у тебя все равно не получиться, потому что компонент не знает что ты от него хочешь... и какие данные ты ему даешь... и что и где выводить...
...
*

Deonisich

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
вы пробовали то что я выше написал? Да у вас ошибок тут немерянно:
->join('INNER', '#__comprofiler AS b ON (a.id_user = b.user_id)')
->join('INNER', '#__narod AS b ON (a.id_run = c.id_training)');
что за странные джоины? может в первой джоине
->join('INNER', '#__comprofiler AS с ON (a.id_user = с.user_id)')

Да эти обьединения, в частности последнее нужно, что бы в таблице выводилось количество присоединенных пользователей к данной тренировки, тут ошибки нет ни какой... Это обьединение показывает 'count(c.id_training) As ludi' счётчик, про который я как раз и говорю, что когда пользователь нажимает на ссылку, то его id и id тренировки записывается вот в эту таблицу '#__narod' !
« Последнее редактирование: 10.10.2014, 23:22:31 от Deonisich »
*

motokraft

  • Завсегдатай
  • 1326
  • 72 / 13
SELECT COUNT('id_training') FROM '#__narod' WHERE '#__training.id_run'='#__narod.id_training'

этот же запрос выводит количество пользователей, а не записывает их...
...
*

Deonisich

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
этот же запрос выводит количество пользователей, а не записывает их...
правильно, а дальше как раз в следующем столбце и идёт ссылка на присоединение echo '<td> <a href="index.php?option=com_content&view=article&id=61&id_run='.$data['id_run'].'">Присоединиться</a></td>';
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Как у вас этот запрос вобще работает я честно говоря непонимаю, тут такие ляпы.. А что в $result, распечатать пробовали?
интернет-блог: http://websiteprog.ru
*

Deonisich

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
да мне $result ничего не даст, кроме как того что находится в $data (тоесть в БД), а какие там ляпы, помойму всё в запросе логично, связь по ID в каждой таблице, всего три таблицы, это таблица с тренировками, ну там время место скорость и т.д. Дальше таблица с зареганами пользователями от куда имена, эл.почта и так далее, ну и третья это связующая таблица между этими двумя...
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как сделать сохранение товара в корзине? И как убрать или зафиксировать мини изображение?

Автор salikh

Ответов: 2
Просмотров: 1317
Последний ответ 24.11.2016, 12:59:36
от salikh
Как зафиксировать фон сайта относительно макета?

Автор qclub

Ответов: 6
Просмотров: 3328
Последний ответ 13.06.2016, 18:03:14
от ramm32
Как загрузить плагин, если нет строки - менеджер расширений?

Автор rairakku

Ответов: 1
Просмотров: 1691
Последний ответ 28.11.2015, 10:58:42
от Ilhom666
Не выводятся новости для выбранной категории

Автор worldmen

Ответов: 2
Просмотров: 933
Последний ответ 23.04.2014, 12:53:38
от worldmen
Удаление строки таблицы в контроллере

Автор digitalheart

Ответов: 2
Просмотров: 1044
Последний ответ 25.02.2014, 09:00:47
от digitalheart