Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Закрытая темаСоздание новой темы Создание опроса
> включен ли javascript, javascript и php 
V
    Опции темы
alexey___
Дата 27.7.2008, 00:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 12.3.2007
Где: Казахстан

Репутация: 1
Всего: 1



Здравствуйте!

подскажите пожалуйста как в php проверить включин ли на клиенте javascript?

Это сообщение отредактировал(а) alexey___ - 27.7.2008, 00:09
PM MAIL   Вверх
skyboy
Дата 27.7.2008, 00:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



никак. проверить конфигурацию клиента(в т.ч. настройки браузера) можно только на стороне клиента.
PHP выполняется на стороне сервера.
PM MAIL   Вверх
Dima 2015
Дата 27.7.2008, 01:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 16.3.2008
Где: SPb

Репутация: 2
Всего: 2



Мне вот тут подумалось... Ну на прямую конечно никак.

Но можно сделать скрытое поле формы:

<input type="hidden" name="is_JS" value="0">

И ф-цию JS, которая меняет value с 0 на 1. Если JS работает то на сервер придет 1, если нет - то 0.

Или ерунду говорю? smile

*
Не, наверное ерунду... если JS выключен то кто эту форму отправлять то будет... 

Но во время авторизации скажем точно должно прокатить...

Это сообщение отредактировал(а) Dima 2015 - 27.7.2008, 02:13
PM MAIL ICQ   Вверх
Dima 2015
Дата 27.7.2008, 03:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 16.3.2008
Где: SPb

Репутация: 2
Всего: 2



В общем можно сделать изврат типа такого:

Приходит юзер на index.php и получает:

Код

<script>
function set_JS(){
    document.getElementById('JS_check').submit();
}

</script>

<form id="JS_check" action="init.php" method="POST">
<input id="is_JS" type="hidden" name="is_JS" value="0">
</form>

<script>
set_JS();
</script>

<noscript>
<META HTTP-EQUIV="Refresh" Content="1; URL=init.php"> 
</noscript>


Воть, а в init.php:

Код

<?php

if (isset($_POST['is_JS'])) {
    
    echo 'JS включен';

} else {
    echo 'JS выключен';
}
?>

PM MAIL ICQ   Вверх
bars80080
Дата 27.7.2008, 09:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 71
Всего: 315



такой вопрос может возникнуть, если требуется отдать клиенту два разных типа страниц: с js и без js для тех у кого он отключён
самое простое в этом случае в начале страницы прописать:
Код

<script>
window.location.href = 'index1.php';
</script>
 дальше на странице разметка не содержащая javascript. если он включен то перебросит на другую страницу, где есть js
PM MAIL WWW   Вверх
Feldmarschall
Дата 27.7.2008, 09:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



класс.
просто интересно, кто-нибудь из теоретиков такое сам делал, или хотя бы видел?
и еще очень забавно предположение о том, что пользователи на сайт заходят исключительно через индекс.
PM   Вверх
alexey___
Дата 27.7.2008, 10:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 12.3.2007
Где: Казахстан

Репутация: 1
Всего: 1



Задача решена, всем спасибо!

Прошу прощенья, что сразу не сказал, что нужно сделать!
Задача заключалась в следующем: 
1. Если есть javascript, то делаем меню с использованием javscript - меню и выпадающее подменю (2 уровня)
2. Если нет javascript, то делаем простое меню с использованием css - просто основное меню (1 уровень)
Данные для меню берутся БД

Задачу решил следующим образом:
для 2 между <noscript> поместил div в который помещается меню. 

для 1 сформировал строку (Меню) на php, которая включает в себя набор тегов

и потом вызвал следующее
Код

echo '<script language="javascript" type="text/javascript">';
echo '$("#mainMenuBox").html("' . $newText . '");';
echo '</script>';


т.е. если javascript включен, моё меню построится - поместится в div
иначе выполнится действие в <noscript>
PM MAIL   Вверх
bars80080
Дата 27.7.2008, 10:36 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 71
Всего: 315



Цитата(Feldmarschall @  27.7.2008,  09:30 Найти цитируемый пост)
и еще очень забавно предположение о том, что пользователи на сайт заходят исключительно через индекс. 

ну, учитывая, что ты никак не расскажешь как же она выглядит "правильная" система построения сайта, все будут продолжать работать через индекс
PM MAIL WWW   Вверх
Feldmarschall
Дата 27.7.2008, 16:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



alexey___, осталось только объяснить, какое этот вопрос имеет отношение к разделу PHP: Общие вопросы
PM   Вверх
skyboy
Дата 27.7.2008, 18:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Feldmarschall, никакого, очевидно.
Но чтоб предотвратить появление хотя бы 1% вопросов из той же песочницы, я предпочтел бы эту тему оставить здесь.
тем более, в других разделах она не откроет ничего нового.
PM MAIL   Вверх
alexey___
Дата 27.7.2008, 18:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 12.3.2007
Где: Казахстан

Репутация: 1
Всего: 1



Feldmarschall. возможно никакого отношения нет! Но возникают вопросы о том как при загрузке php страницы обойти javascript.
Везде очень много красивого текста, красивых слов и т.д. Также видно, что существует много способов поверки "включен ли javascript" в броузере....
Если есть возможность дайте пожалуйста ссылки, где это можно почитать.
PM MAIL   Вверх
Feldmarschall
Дата 27.7.2008, 19:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



alexey___, я могу дать только ссылку, с помощью которой можно узнать, что такое РНР. Чтобы не возникало вопросов на тему, что он может, а что нет.
PM   Вверх
skyboy
Дата 27.7.2008, 19:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



alexey___, давай выясним раз и навсегда: PHP выполняетяся на стороне сервера. О клиенте он знает только то, что клиент сам "сообщит". Потому если тебя интересует что-то, работающее/отображающееся на стороне клиента - задай вопорс в разделе "Верстка" или "Javascript". Но не в "PHP: Общие вопросы"
PM MAIL   Вверх
alexey___
Дата 27.7.2008, 19:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 12.3.2007
Где: Казахстан

Репутация: 1
Всего: 1



skyboy, Feldmarschall
Спасибо, большое!

при решении данной проблемы я зациклился на php и думал решить эту задачу именно средствами php.

Но получив ответ от skyboy (27.7.2008, 00:12)
Цитата

никак. проверить конфигурацию клиента(в т.ч. настройки браузера) можно только на стороне клиента.
PHP выполняется на стороне сервера.


и все вопосы у мення отпали. и я перестал решать задачу средставми php.
думаю, что не нужно было выкладывать свой вариант решения.

а если посмотреть все ответы данной темы, то можно будет увидеть что ответ в тему только один от skyboy

Всем большое спасибо!
PM MAIL   Вверх
Feldmarschall
Дата 27.7.2008, 20:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



Цитата(alexey___ @  27.7.2008,  19:48 Найти цитируемый пост)
ответ в тему только один от skyboy

Не стоило давать такие оценки. У тебя недостаточно опыта, чтобы судить о том, какой ответ в тему. А какой-нет.
К тому же, это форум. Не стоит его путать с платной службой поддержки, которая подписала контракт облуживать исключительно твою драгоценную персону. 
Это форум. И в него могут писать свободно все желающие. В меру своих способностей и понимания вопроса.
Оценивать лучше не ответы, а свои знания. Которые сильно нуждаются в улучшении.
PM   Вверх
Закрытая темаСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0927 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.