Цитата (chee @ 27.01.2015 - 23:09) |
Цитата (Invis1ble @ 27.01.2015 - 21:00) | с чего это лишний запрос на сервер лучше? |
дело не в запросах, дело в разделении обязоностей в коде
|
И правда зачем лишний запрос? Разделять тут нечего.
Передавать JSON в js можно как хочешь.
Например вот так:
$varsToJS = array();
function addVarToJS($name, $var){
global $varsToJS;
$jsVarsp[$name] = $var;
}
function includeJsVars(){
global $varsToJS;
echo 'var varsFromPHP = '.json_encode($varsToJS).';';
}
Игорь_Vasinsky
27.01.2015 - 23:45
ну эт у меня поход загон такой. если я должен распарсить что-то в JS - то до конца делать это в JS
и да - тут он и не нужен.
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Invis1ble
27.01.2015 - 23:47
Цитата |
дело не в запросах |
теперь понятно, откуда на простеньких по функционалу сайтах набирается под 200 запросов на одну страницу
_____________
Профессиональная разработка на заказЯ на GitHub |
второй профиль
volter9
27.01.2015 - 23:55
Игорь_VasinskyЛол, я скопировал часть твоего кода, у себя сам и спрашивай. А массивы не надо парсить?
JSON.parse может оказатся полезным если там будет юникод закодированные "кракозябры" в виде \u100.
_____________
Мой блог
Игорь_Vasinsky
28.01.2015 - 06:25
не спорю. тока согласно пунктуации - запятая лишняя тут.
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
volter9
28.01.2015 - 07:50
Игорь_VasinskyСпасибо за поправку
А это точно верно что "," не нужна там?
_____________
Мой блог
Игорь_Vasinsky
28.01.2015 - 07:58
Ну вот так несколько раз прочитай про себя или вслух.
если зпт там ставить - то смысл теряется.
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Invis1ble, теперь я понимаю откуда куча inline js кода сгенерированого php'шкой в сложных сайтах.
_____________
Люди, имеющие низкий уровень квалификации, делают ошибочные выводы, принимают неудачные решения и при этом неспособны осознавать свои ошибки в силу низкого уровня своей квалификации
Invis1ble
28.01.2015 - 10:07
Цитата (chee @ 28.01.2015 - 08:51) |
Invis1ble, теперь я понимаю откуда куча inline js кода сгенерированого php'шкой в сложных сайтах. :) |
Какая еще куча кода? Такая
var data = [...];
?
_____________
Профессиональная разработка на заказЯ на GitHub |
второй профиль
Invis1ble, какая сегодня хорошая погода, птички поют! О чем вы там?
_____________
Люди, имеющие низкий уровень квалификации, делают ошибочные выводы, принимают неудачные решения и при этом неспособны осознавать свои ошибки в силу низкого уровня своей квалификации
Invis1ble
29.01.2015 - 00:49
Цитата (chee @ 28.01.2015 - 11:49) |
Invis1ble, какая сегодня хорошая погода, птички поют! О чем вы там? |
Не знаю о каких птичках и погоде речь, но я веду дискуссию на тему передачи данных на клиентскую сторону.
Вот ты предложил нормальный стандартный способ с помощью inline-json, сам таким пользуюсь, а далее написал про аякс.
_____________
Профессиональная разработка на заказЯ на GitHub |
второй профиль
На счет inline-js
echo '<script type="text/javascript" src="' . getJSPath('include/javascript/jquery/noty/jquery.noty.js') . '"></script>';
echo '<script type="text/javascript" src="' . getJSPath('include/javascript/jquery/noty/themes/default.js') . '"></script>';
echo '<script type="text/javascript" src="' . getJSPath('include/javascript/jquery/noty/layouts/bottomRight.js') . '"></script>';
echo '<script type="text/javascript" src="' . getJSPath('include/javascript/sugar_notifications.js') . '"></script>';
echo
'<script type="text/javascript">'.
'sugarNotifierInit({'.
'notyLayout: "bottomRight",'.
'initSugarTimestamp: '.time().','.
'notifications: '.getJSONobj()->encode(SugarNotification::getUnseenNotifications(Registry::get('current_user')->id, -5 * 60, 10 * 60)).
'});'.
'</script>';
echo '<script type="text/javascript" src="' . getJSPath('include/javascript/jquery/autosize/jquery.autosize-min.js') . '"></script>';
echo '<script type="text/javascript" src="' . getJSPath('include/javascript/jquery/ui/jquery-ui-current.js') . '"></script>';
echo '<link rel="stylesheet" type="text/css" media="all" href="' . getJSPath('include/javascript/jquery/ui/themes/sugar/jquery-ui-current.css') . '">';
echo '<script type="text/javascript" src="' . getJSPath('include/javascript/jquery/jquery.maskedinput.js') . '"></script>';
echo '<script type="text/javascript" src="' . getJSPath('include/Ajax/Ajax.js') . '"></script>';
require_once('modules/PhoneCalls/PhoneCall.php');
echo '<script type="text/javascript" src="' . getJSPath('modules/PhoneCalls/js/PhoneCalls.js') . '"></script>';
if (SugarConfig::get('disable_phone_calls_listener') !== true && PhoneCall::listenPhoneCalls())
{
$call_listener_settings = PhoneCall::getListenPhoneCallsSettings();
$call_listener_settings = getJSONobj()->encode($call_listener_settings);
echo
'<script type="text/javascript">'.
'if (typeof(window.PhoneCallsListener) != "undefined") {'.
'window.PhoneCallsListener.setSettings('.$call_listener_settings.');'.
'window.PhoneCallsListener.listen();'.
'}'.
'</script>';
}
if ($this->_getOption('view_print'))
{
echo '<script>$(function() {
if ( document.getElementById("leftCol").style.display != "none" ) {
hideLeftCol("leftCol", false);
closeMenus();
}
});
</script>';
}
Айс, да?
_____________
Люди, имеющие низкий уровень квалификации, делают ошибочные выводы, принимают неудачные решения и при этом неспособны осознавать свои ошибки в силу низкого уровня своей квалификации
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.