Различные вопросы по PHP и MySQL

242K
.
Udesign, Да куда еще проще? Там проще уже некуда, скачиваешь архив и даж композер по моему не нужен

// подключение и инициализация класса
require_once 'Mobile_Detect.php';
$detect = new Mobile_Detect;
 
// Любое мобильное устройство
if ( $detect->isMobile() ) {
 //какие-то действия
}
 
// Любой планшетный ПК.
if( $detect->isTablet() ){
 //какие-то действия
}
 
// Exclude tablets.
if( $detect->isMobile() && !$detect->isTablet() ){
 //какие-то действия
}
 
// Check for a specific platform with the help of the magic methods:
if( $detect->isiOS() ){
 //какие-то действия
}
 
if( $detect->isAndroidOS() ){
 //какие-то действия
}
.
Jahak, Да лучше свой

function qurilmaturi($usagent) {
  $komp_agent = array('windows', 'macintosh');
    $agent = strtolower($usagent);
    foreach ($komp_agent as $value) {
        if (strpos($agent, $value) !== false) $qur = 'com.png';
    }
  //------------
  $android_agent_array = array('android', 'symbian', 'htc_', 'samsung', 'smartphone');
    $agent = strtolower($usagent);
    foreach ($android_agent_array as $value) {
        if (strpos($agent, $value) !== false) $qur = 'and.png';
    }
  //----------
  $apple_agent_array = array('ipad', 'iphone');
    $agent = strtolower($usagent);
    foreach ($apple_agent_array as $value) {
        if (strpos($agent, $value) !== false) $qur = 'ipon.png';
    }
 
  //------------------
  $mobile_agent_array = array('pocket', 'palm', 'windows ce', 'windowsce', 'cellphone', 'opera mobi', 'small', 'sharp', 'sonyericsson', 'opera mini', 'nokia', 'motorola', 'blackberry', 'playstation portable', 'tablet browser');
    $agent = strtolower($usagent);
    foreach ($mobile_agent_array as $value) {
        if (strpos($agent, $value) !== false) $qur = 'java.png';
    }
   return $qur;
}
///bazadan olingan user $_SERVER['HTTP_USER_AGENT']
$usagent = $user['ustun'];
 
echo ' <img src="'.qurilmaturi($usagent).'" alt="" />';
.
# fanatos (12.12.2016 / 17:57)
http://mobiledetect.net/
говнокласс в духе аплоада используемого в джоне
автор чукот, на прочь игнорирующий правила построения юзерагента андроидом\вп и бб
/**
 * @param string $ua [user agent string]
 * @return string [type name string]
 */
function browser_type($ua)
{

    $type = 'pc';

    if(preg_match('#(Android|Andr;|iPhone|iPad|blackberry|bb;|windows phone|WM;|PPC;|IEMobile|Symbian|S60;|j2me|MIDP-)#is', $ua, $match)){

        switch (str_replace(';', '', strtolower($match[1]))){

            case 'iphone':
            case 'ipad':
                $type = 'iphone';
                break;
            case 'android':
            case 'andr':
                $type = 'android';
                break;
            case 'blackberry':
            case 'bb':
                $type = 'blackberry';
                break;
            case 'windows phone':
            case 'wm':
            case 'IEMobile':
            case 'PPC':
                $type = 'wp';
                break;
            case 'Symbian':
            case 'S60':
                $type = 'symbian';
                break;
            case 'j2me':
            case 'midp-':
                $type = 'java';
                break;
        }

    }

    return $type;


}

вот простейшая определялка без свистоперделок
.
ДоХтор
На кейсах код громоздким выглядит, имхо. Компактнее загнать всё необходимое в массив, и фильтровать браузеры.
Сократил твой вариант (+/-)
.
(\/)____o_O____(\/)
ДоХтор, думаю будет не лишним передавать значение по умолчанию, если не будет совпадений
.
# Koenig (12.12.2016 / 23:01)
ДоХтор, думаю будет не лишним передавать значение по умолчанию, если не будет совпадений
Это не мой код, а Рамзес - у него не было значения по умолчанию. Я его просто сократил.
.
Is it good to use echo many times in a one script?
does it cause the page loads slower?
I modify the Johncms modded by simba and removed all the shortand php <? .....?> and <?= .... ?>
it caused the use of echo '' to much !

Any suggestion?
.
Всем добрый вечер

как можно очистит данный с базы старше 30 дней например почту джона
.
Crack
человек И пароход
$mon = 30 * 24 * 60 * 60  //сколько секунд в 30 днях
//Узнаем дату перед которой все удаляем
$date = time() - $mon;
mysql_query("DELETE FROM `mail` WHERE `time` < '".$date."' "); //Удаляем все записи которые старше 30 дней

Под себя запрос измени тк я не помню как хранится почта джона
.
Crack, спасибо большой
Всего: 7969