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

motokraft

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

AlekVolsk

  • Гуру
  • 6456
  • 369 / 4
Где вывести? Как выводите сейчас?
*

AlekVolsk

  • Гуру
  • 6456
  • 369 / 4
возможно, так: echo JFactory::getUser()->username;
*

motokraft

  • Завсегдатай
  • 1326
  • 72 / 13
Сори я чуть чуть затупил, вовремя не посмотрел... Мне надо модуль Формы входа, а не регистрация... Мне надо вывести текст из поля username в этом же модуле но только для других целей...
...
*

AlekVolsk

  • Гуру
  • 6456
  • 369 / 4
В модуле где именно вывести? в шаблоне модуля или в хелпере?
Вообще, какие именно цели преследуете? Модуль самописный или стандартный (какой именно?)?
*

motokraft

  • Завсегдатай
  • 1326
  • 72 / 13
В модуле где именно вывести? в шаблоне модуля или в хелпере?
Вообще, какие именно цели преследуете? Модуль самописный или стандартный (какой именно?)?
Суть полностью не расскажу... Но вот что мне надо от этого модуля....
Когда пользователь ввел логин и пароль нажимает на кнопку вход, сначала форма отправляет данные для входа на сайт, а потом сам логин который пользователь ввел никуда не выводиться на лицевую часть, мне надо что бы просто выполнить sql запрос что бы вывести некоторую инфу, пока пользователь входит на сайт... После этого просто перезагружается страница и ВСЕ...
...
*

AlekVolsk

  • Гуру
  • 6456
  • 369 / 4
Хмм, данные формы передаются в хелпер, там производится вся обработка. Там же Вы можете выполнить свой запрос, а вот как при этом результаты запроса отобразить, на время авторизации? Вот тут несколько ньюансов: Весь процесс авторизации на сервере занимает доли секунд, остальное - отылка данных на сервер из формы и получение результата обратно во фронт. Если для данных, отображаемых во время процесса авторизации, требуется информация из базы, то это как минимум нецелесообразно: данные из базы будут получены во фронт вместе с ответом об успешой/неуспешной авторизацией пользователя, когда эти данные будут уже не нужны. А без этих данных поплавок можно вывести на js прямо из вьюхи модуля.
*

motokraft

  • Завсегдатай
  • 1326
  • 72 / 13
Нуууу, вообще то мне не надо выводить состояние выполнения запроса. Если пользователь указал не верные данные, то мой код выполняться не будет... Мне надо всего лишь вывести текст из поля username  в строку запроса к Бд, и все... зачем заморачиваться...

А без этих данных поплавок можно вывести на js прямо из вьюхи модуля.
а вот это не совсем понял... Как это?
...
*

AlekVolsk

  • Гуру
  • 6456
  • 369 / 4
<?php
JHtml
::_('jquery.framework'); // for J3
$view_js '
jQuery(function($) {
  Splash = function() {
    $("#loading").css("display", "block");
    $("#adminForm").submit(); // form.submit with id="adminForm", method="get"
  };
});

jQuery(document).ready(function($)
{
  $(\'<div id="loading"></div>\').appendTo($(\'body\'));
});
'
;
$document->addScriptDeclaration($documc_js);
?>

в форме на кнопку вместо form.submit вешаем javascript:Splash()
изначально при загрузки вьюхи добавляем body <div id="loading"></div>, внутри дива может быть любое вложение, в стилях для дива должно быть изначально прописано display:none;
« Последнее редактирование: 08.06.2014, 14:32:04 от AlekVolsk »
*

motokraft

  • Завсегдатай
  • 1326
  • 72 / 13
че так как то срано... Выдает ошибку - JHtml: :jquery не поддерживается. Файл, не найден.
Я вставляю в самый верх страницы...
...
*

motokraft

  • Завсегдатай
  • 1326
  • 72 / 13
я тут подумал может в файле хелпер будет проще сделать?
...
*

AlekVolsk

  • Гуру
  • 6456
  • 369 / 4
Кстати, на js также, получив по id поля его значения можно записать его в глобально объявленную переменную, и использовать в выводе внутри loading

че так как то срано... Выдает ошибку - JHtml: :jquery не поддерживается. Файл, не найден.
Я вставляю в самый верх страницы...
Так я же указал, что вызов  jquery указан для J3, где jquery поставляются штатно, для J2.5 подключаете свой jquery

я тут подумал может в файле хелпер будет проще сделать?
Хелпер изначально для этого не предназначен, http://joomlablog.ru/dokumentatsiya/dlya-razrabotchika/sozdanie-modulya-dlya-joomla-2-5-i-joomla-3
*

motokraft

  • Завсегдатай
  • 1326
  • 72 / 13
я правильно думаю что с в него можно подключать другие php файла, я смотрю что есть подключение файлов стилей а это мне как раз надо....
Но вот чего я не пойму... На примере понятно показано где начинать...
Но вот в самом файле модуля формы входа
Код
<?php
/**
 * @package Joomla.Site
 * @subpackage mod_login
 * @copyright Copyright (C) 2005 - 2014 Open Source Matters, Inc. All rights reserved.
 * @license GNU General Public License version 2 or later; see LICENSE.txt
 */

// no direct access
defined('_JEXEC') or die;

class modLoginHelper
{
static function getReturnURL($params, $type)
{
$app = JFactory::getApplication();
$router = $app->getRouter();
$url = null;
if ($itemid =  $params->get($type))
{
$db = JFactory::getDbo();
$query = $db->getQuery(true);

$query->select($db->quoteName('link'));
$query->from($db->quoteName('#__menu'));
$query->where($db->quoteName('published'). '=1');
$query->where($db->quoteName('id'). '=' . $db->quote($itemid));

$db->setQuery($query);
if ($link = $db->loadResult()) {
if ($router->getMode() == JROUTER_MODE_SEF) {
$url = 'index.php?Itemid='.$itemid;
}
else {
$url = $link.'&Itemid='.$itemid;
}
}
}
if (!$url)
{
// stay on the same page
$uri = clone JFactory::getURI();
$vars = $router->parse($uri);
unset($vars['lang']);
if ($router->getMode() == JROUTER_MODE_SEF)
{
if (isset($vars['Itemid']))
{
$itemid = $vars['Itemid'];
$menu = $app->getMenu();
$item = $menu->getItem($itemid);
unset($vars['Itemid']);
if (isset($item) && $vars == $item->query) {
$url = 'index.php?Itemid='.$itemid;
}
else {
$url = 'index.php?'.JURI::buildQuery($vars).'&Itemid='.$itemid;
}
}
else
{
$url = 'index.php?'.JURI::buildQuery($vars);
}
}
else
{
$url = 'index.php?'.JURI::buildQuery($vars);
}
}

return base64_encode($url);
}

static function getType()
{
$user = JFactory::getUser();
return (!$user->get('guest'))? 'logout' : 'login';
}
}
ваще ни че не понятно от куда начинать и что здесь происходит...
...
*

AlekVolsk

  • Гуру
  • 6456
  • 369 / 4
покажите вьюху модуля /tmpl/default.php
*

motokraft

  • Завсегдатай
  • 1326
  • 72 / 13
покажите вьюху модуля /tmpl/default.php
Код
<?php

/**

 * @package Joomla.Site

 * @subpackage mod_login

 * @copyright Copyright (C) 2005 - 2014 Open Source Matters, Inc. All rights reserved.

 * @license GNU General Public License version 2 or later; see LICENSE.txt

 */



// no direct access

defined('_JEXEC') or die;

JHtml::_('behavior.keepalive');

?>

<?php if ($type == 'logout') : ?>
 <?php include 'default-vhod.php'; ?>
<?php else : ?>
<?php
// Соединиться с сервером БД
mysql_connect("localhost", "root", "") or die (mysql_error ());

// Выбрать БД
mysql_select_db("login") or die(mysql_error());
   
    $strSQL = "SELECT * FROM  `log_users` WHERE username =  'admin';";

// Выполнить запрос (набор данных $rs содержит результат)
$rs = mysql_query($strSQL);

// Цикл по recordset $rs
// Каждый ряд становится массивом ($row) с помощью функции mysql_fetch_array
while($row = mysql_fetch_array($rs))
  {

   // Записать значение столбца FirstName (который является теперь массивом $row)
  $user_id =  $row['id'];
  echo $row['username'];

  }

if("admin" === "admin")
{
    $codeMD5 = rand(5, 15);

// SQL-запрос
$r = mysql_query("UPDATE `log_users` SET  `online` =  md5('".$codeMD5."') WHERE  `log_users`.`id` =101;");

    }
else
{
echo "Не удалось найти Указанный Логин в Базе данных!";
}
?>

<form method="post" id="login-form" >

<table width="100%">

<?php if ($params->get('pretext')): ?>

<div class="pretext">

<p><?php echo $params->get('pretext'); ?></p>

</div>

<?php endif; ?>

<fieldset class="userdata">

<p id="form-login-username">

    <tr>

            <td><label for="modlgn-username"><strong><?php echo JText::_('MOD_LOGIN_VALUE_USERNAME')?>:</strong></label></td>

    <td><input id="modlgn-username" type="text" name="username" class="inputbox"  size="18" /></td></tr>

</p>

<p id="form-login-password">

<tr>

        <td><label for="modlgn-passwd"><strong><?php echo JText::_('JGLOBAL_PASSWORD')?>:</strong></label></td>

<td><input id="modlgn-passwd" type="password" name="password" class="inputbox" size="18"  /></td></tr>

</p>

    <tr><td></td></tr>

<?php if (JPluginHelper::isEnabled('system', 'remember')) : ?>

<p id="form-login-remember">

<tr><td></td><td style="text-align:left"><input id="modlgn-remember" type="checkbox" name="remember" class="inputbox" value="yes"/>

        <strong><label for="modlgn-remember"><?php echo JText::_('MOD_LOGIN_REMEMBER_ME')?></label></strong></td></tr></table>

</p>

    <table width="100%"><tr>

<?php endif; ?>

<td width="50%">

    <input type="button" class="btn btn-warning" value="Регистрация" onclick="location.href='<?php echo JRoute::_('index.php?option=com_users&view=registration'); ?>'" /></td>

    <td style="text-align:center" width="50%"><input type="submit" name="loginVhod" class="btn btn-warning" value="Авторизация" /></td></tr></table>

<input type="hidden" name="option" value="com_users" />

<input type="hidden" name="task" value="user.login" />

<input type="hidden" name="return" value="<?php echo $return; ?>" />

<?php echo JHtml::_('form.token'); ?>

</fieldset>

<?php if ($params->get('posttext')): ?>

<div class="posttext">

<p><?php echo $params->get('posttext'); ?></p>

</div>

<?php endif; ?>

</form>

<?php endif; ?>


я че та не в тот файл смотрел...
...
*

motokraft

  • Завсегдатай
  • 1326
  • 72 / 13
вот нашел хороший пример.... http://joomla-umnik.ru/sozdanie-modulya-joomla-2-5
как вы думаете он мне подойдет!
...
*

AlekVolsk

  • Гуру
  • 6456
  • 369 / 4
В стилях добавьте:
Код: css
#loading {background:url("/media/mod_login/images/loader.gif") no-repeat scroll 50% 50% rgba(0,0,0,0.8);position:fixed;opacity:0.8;border-radius:4px;display:none;filter:alpha(opacity = 80);-ms-filter:progid:DXImageTransform.Microsoft.Alpha(Opacity = 80);}
Путь сами поправьте, картинка во вложении.

Скрипт в самом начале:
Код: html4strict
<?php // здесь подключите свой jquery!  ?>
<script type="text/javascript">
jQuery(function($) {
  Splash = function() {
    $("#loading").css("display", "block");
    $("#login-form").submit();
  };
});

jQuery(document).ready(function($)
{
  $(\'<div id="loading"></div>\').appendTo($(\'body\'));
});
';
</script>

Вместо <input type="submit" name="loginVhod" class="btn btn-warning" value="Авторизация" />
сделайте ссылку <a href="javascript:Splash()" name="loginVhod" class="btn btn-warning">Авторизация</a>
*

motokraft

  • Завсегдатай
  • 1326
  • 72 / 13
спасибо Вам, но это для меня слишком сложно... буду пробовать из того что есть...
...
*

AlekVolsk

  • Гуру
  • 6456
  • 369 / 4
вот нашел хороший пример.... http://joomla-umnik.ru/sozdanie-modulya-joomla-2-5
как вы думаете он мне подойдет!
Указанный вами пример не содержит вывода поплавка на время обработки данных хелпером. Для понимания общих принципов построения модулей мною была выше дана ссылка, там для этой цели, имхо, руководство получше.
*

AlekVolsk

  • Гуру
  • 6456
  • 369 / 4
спасибо Вам, но это для меня слишком сложно... буду пробовать из того что есть...
Ну что ж, заветы Ленина в области образования действительно оказались вечными ))
А пример я Вам дал рабочий, проверил, правда, на J3
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как создать редирект в форме заказа на основе выбора пользователя? 3.8.10?

Автор CyberWizard

Ответов: 3
Просмотров: 131
Последний ответ 31.07.2018, 12:11:13
от varX
Вывод количества комментариев jcomment

Автор Vlasnov

Ответов: 1
Просмотров: 263
Последний ответ 19.06.2018, 09:53:58
от kern.USR
Вывод определенных материалов на главной

Автор JustRe1ax

Ответов: 4
Просмотров: 286
Последний ответ 08.12.2017, 11:21:47
от JustRe1ax
Как удалить ненужные поля при регистрации?

Автор petya242

Ответов: 2
Просмотров: 2833
Последний ответ 09.11.2017, 12:58:09
от abonnent
Вывод видео rtmp без flash

Автор StV

Ответов: 0
Просмотров: 206
Последний ответ 20.09.2017, 15:35:30
от StV