[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: определитель OC
alex259
подскажите пожалуйста! как выглядит скрипт, который определил бы ОС и отправил бы браузер по нужному адресу. В частности разделил бы мобильные ОС от других.

<?php
function
opsys_info($agent) {

// сигнатура миниява
if ( strstr ($agent, 'mobile') ) : {header ('location: http://страница для мобильников');}

// сигнатура айфона
elseif ( strstr($agent, 'Linux') ) : {header ('location: http://страница для мобильников');}

// любая другая ОС
else : {header ('location: http://страница полная');}
}


?>


выдаёт ошибку:Parse error: syntax error, unexpected T_FUNCTION in ...index.php on line 9 (на этой строке: function opsys_info($agent) {)

пробовал написать на яве, выглядело так:

<script language="JavaScript">
<!--
if(navigator.userAgent == "iphone") "http://страница для мобильников";
else if(navigator.userAgent == "mobile") "http://страница для мобильников";
else window.location.href = "страница полная";
// -->
</script>


в обоих случаях пробовал заменить принцип на исключения всех не мобильных ОС (win mac...) и на else переход на мобильную стрницу. РНР там же выдаёт ошибку. ява всегда срабатывает на else. эксперементировал на разных мобильных - эффект аналогичен эффекту на компе.



Спустя 2 минуты, 27 секунд (31.03.2011 - 23:24) Basili4 написал(а):
if ( strstr ($agent, 'mobile') ) : двое точие убери

Спустя 10 минут, 36 секунд (31.03.2011 - 23:34) alex259 написал(а):
всё равно, ошибка на строке:
function opsys_info($agent) {

Спустя 1 минута, 53 секунды (31.03.2011 - 23:36) neadekvat написал(а):
А перед этим что есть? В приведенной строке все ок.

Спустя 2 минуты, 17 секунд (31.03.2011 - 23:39) inpost написал(а):
alex259
имя напиши без _

Спустя 56 секунд (31.03.2011 - 23:40) neadekvat написал(а):
Цитата (inpost @ 31.03.2011 - 23:39)
имя напиши без _

С чего бы? о_О

Спустя 15 минут, 41 секунда (31.03.2011 - 23:55) alex259 написал(а):
((( не помогает( вот всё содержимое с последними исправлениями:

<html>
<head>
<title>
Script</title>
</head>
<body>

<?php

error_reporting(E_ALL)

function opsys info($agent) {

if ( strstr ($agent, 'mobile') ) {header ('location: http://мобильный сайт');}

elseif ( strstr($agent, 'iphone') ) {header ('location: http://мобильный сайт');}

else {header ('location: http://сайт полный');}
}


?>
</body>
</html>

говорит ошибка там же

Спустя 1 минута, 11 секунд (31.03.2011 - 23:56) neadekvat написал(а):
Как обычно. Из всех вопросов увидели только самый простой.

А точку с запятой после error_reporting(E_ALL) будет Вася ставить. Или Петя. Не важно.

Спустя 2 минуты, 3 секунды (31.03.2011 - 23:58) Basili4 написал(а):
neadekvat
Не знаю насчет Пети но Я уж точно не буду.

Спустя 1 минута, 58 секунд (1.04.2011 - 00:00) alex259 написал(а):
ой)
поставил, ошибка сменилась на Parse error: syntax error, unexpected T_STRING на той же строке(

Спустя 21 секунда (1.04.2011 - 00:01) neadekvat написал(а):
Цитата (Basili4 @ 31.03.2011 - 23:58)
Не знаю насчет Пети но Я уж точно не буду.

Я сначала вспомнил "Спросите у любого на Тверском бульваре...", а потом посмотрел - выглядит так, будто это я свое имя назвал.
Не хотел вас обидеть, если чо smile.gif

Спустя 34 секунды (1.04.2011 - 00:01) neadekvat написал(а):
Цитата (alex259 @ 1.04.2011 - 00:00)
поставил, ошибка сменилась на Parse error: syntax error, unexpected T_STRING на той же строке(

Да что вы.. а разве имя функции может содержать пробел?

Спустя 23 минуты, 6 секунд (1.04.2011 - 00:24) Basili4 написал(а):
Не я не обиделся. Я шутю. Да пробел там явно лишний вот _ было к месту
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.