Все ленты — последние статьи

CMS настроить подключение к MySQL

Wordpress /wp-config.php
Joomla /configuration.php
MODx /core/config/config.inc.php либо /manager/includes/config.inc.php
PHPShop /phpshop/inc/config.ini
1C-Bitrix /bitrix/php_interface/dbconn.php
Drupal /sites/default/settings.php
DLE /engine/data/dbconfig.php
HostCMS /hostcmsfiles/config_db.php
InstantCMS /includes/config.inc.php
Amiro /_local/config.ini.php
vBulletin /include/config.php
WebAsyst /kernel/wbs.xml /dblist/КЛЮЧ_БАЗЫ_ДАННЫХ.xml
/temp/scdb/.settings.КЛЮЧ_БАЗЫ_ДАННЫХ (кэш ключа, можно удалить)
Magento /app/etc/local.xml
Invision Power Board /conf_global.php

Setup the Facebook SDK for JavaScript

Setup the Facebook SDK for JavaScript
The following snippet of code will give the basic version of the SDK where the options are set to their most common defaults. You should insert it directly after the opening <body> tag on each page you want to load it:
<script>
window.fbAsyncInit =function(){
FB.init({
appId :'158127261224024',
xfbml :true,
version :'v2.5'
});
};
(function(d, s, id){
var js, fjs = d.getElementsByTagName(s)[0];
if(d.getElementById(id)){return;}
js = d.createElement(s); js.id = id;
js.src ="//connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document,'script','facebook-jssdk'));</script>
You can also configure the SDK with advanced settings.

*** Cross-domain ajax с помощью jQuery Принимаем данные с другого сервера JSON


 
 

Межсайтовый (cross-domain) ajax запрос подразумевает получение данных с сайта site2.ru для сайта site1.ru. Обычные ajax запросы работать не будут в связи с политикой безопасности, но в jQuery начиная с версии 1.5 появилась возможность отправлять кросс доменные запросы на ajax и получать ответ в JSON.

При использовании JSON мы можем обращаться к любому домену но результат прийдет в виде json ответа и мы не как не сможем его обработать. JSONP предлагает передавать серверу имя функции и получать не голые данные, а обернутые в эту же функцию данные. Например при отправки запроса на http://site2.ru/data.json?callback=parseFunction мы отправляем название callback функции — parseFunction и получаем некий ответ parseFunction({'result': 2, 'error': false}), после чего jQuery вызовет функцию parseFunction для парсинга результата.

Рассмотрим все это детально на примере, сделаем запрос который будем отправлять с сайта site1.ru на site2.ru и получать некий ответ в json.

HTML

Создадим простую страничку и подключим библиотеку jQuery:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>Cross-domain ajax с помощью jQuery — Frameworks.su</title>
  6. <script src="http://code.jquery.com/jquery-1.9.1.min.js" ></script>
  7. <script src="/js/script.js" ></script>
  8. </head>
  9. <body>
  10. <div class="text">Количество чего либо на сервере site2.ru — <span class="counter"><span></div>
  11. </body>
  12. </html>

PHP

Теперь мы нужно создать объект JSON с данными, в PHP. Предположим, что у нас на сервере site2.ru хранится некий счетчик, мы будем его запрашивать с сайта site1.ru и получать просто число (количество чего либо). Обратите внимание, что мы должны создать объект JSONP, вместо обычного объект JSON.

  1. // Создаем массив с данными которые хотим отправить json ответом
  2. $data = array(
  3. 'counter' => 5,
  4. );
  5.  
  6. //Переводим масив в JSON
  7. $json_data=json_encode($data);
  8.  
  9. // Выставляем кодировку и тип контента
  10. header("Content-type: application/json; charset=utf-8");
  11.  
  12. //JSONP — делаем JSONP объект
  13. echo $_GET['callback'] . ' (' . $json_data . ');';

Сохраните файлик как counter.php и залейте его на сервер site2.ru

JAVASCRIPT

Теперь нужно вызвать $.ajax в jQuery как описано ниже:

  1. $(document).ready(function () {
  2. $.ajax({
  3. type: "GET",
  4. url: "http://site2.ru/counter.php?callback=?",
  5. dataType: 'jsonp',
  6. success: function (data){
  7. $('.text .counter').html(data.counter);
  8. }
  9. });
  10. });

Если не указывать функцию обратного вызова, а просто написать callback = ? — то название функции jQuery подставить автоматически, но также можно явно указать название функции, например callback=parseFunction.

Теперь запустите HTML файл на сайте site1.ru. Вы должны получить ответ от сервера с json данными. Использовать этот кросс-браузерный ajax можно также и для $.getJSON, $.ajax, $.post и $.get.

P.S. Не забудьте в примере заменить site2.ru — на название своего удаленного сервера, к которому делаете запрос.

Если у вас есть какие-либо вопросы или дополнения, пишите в комментариях ниже.

Скачать рабочий пример

Определение и парсинг User Agent на PHP, JS, Python

реклама

Фраза «user agent» или «строка user agent» звучит как ругательство. Разработчики используют User Agent для определения типа браузера, чтобы знать какими свойствами он обладает. Хотя, гораздо проще и правильнее определять наличие самого свойства. Но, на сегодняшний день все еще есть применения для строки user agent. Одно из них, например, определить какую мобильную тему выставить на продажу; это можно определить как на серверной стороне, так и на стороне клиента. Для экономии времени и нервов, существует ua-parser, с помощью которого можно получить строку user agent, а также сделать ее парсинг. Информацию о клиенте мы получим в виде объекта. Проводить парсинг можно на PHP, JavaScript и Python.

Пример строки User Agent

'Mozilla/5.0 (iPhone; CPU iPhone OS 5_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9B179 Safari/7534.48.3'

Определение User Agent на JS

 

var uaParser = require('ua-parser'),
  uaParser.parse(navigator.userAgent);
 
console.log(ua.tostring());  // -> "Safari 5.0.1"
 
console.log(ua.toVersionString());  // -> "5.0.1"
 
console.log(ua.family);  // -> "Safari"
 
console.log(ua.major); // -> 5
 
console.log(ua.minor);  // -> 0
 
console.log(ua.patch);  // -> 1

 

Определение User Agent на PHP

 

// подключение библиотеки
require("UAParser.php");
 
// Парсинг UA
$result = UA::parse();
 
// выводим информацию :)
print $result->full;  // -> Chrome 16.0.912/Mac OS X 10.6.8
 
print $result->browserFull;  // -> "Chrome 16.0.912"
 
print $result->browser;  // -> "Chrome"
 
print $result->version;  // -> "16.0.912"
 
print $result->major;  // -> 16 (minor, build, & revision также доступно)
 
print $result->osFull;  // -> "Mac OS X 10.6.8"
 
print $result->os;  // -> "Mac OS X"
 
print $result->osVersion;  // -> "10.6.8"
 
print $result->osMajor;  // -> 10 (osMinor, osBuild, & osRevision также доступно)

 

Определение User Agent на Python

 

# Импорт библиотеки
from ua_parser import user_agent_parser
 
# Парсинг user agent
user_agent_parser.Parse(request.META.get('HTTP_USER_AGENT'))
 
print result_dict['user_agent']
# {'major''5''minor''1''family''Mobile Safari''patch': None}
 
print result_dict['os']
# {'major''5''patch_minor': None, 'minor''1''family''iOS''patch': None}
 
print result_dict['device']
# {'is_spider': False, 'is_mobile': True, 'family''iPhone'}

 

Код в примерах прост для тех кто будет его использовать. Нет потребности разъяснять, использование данных user agent простое. Спасибо разработчику Тоби Лангелсу за столь удобную библиотеку.

 

Источник материала …

Дальше: Может-ли плохое SEO убить ваш бизнес?