Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.02.2015, 16:10   #1
Parallelogram
Недотепа
Форумчанин
 
Регистрация: 18.01.2011
Сообщений: 174
По умолчанию Как подгрузить переменную аяксом?

Здравствуйте, у меня есть код который выводит рандомную переменную при загрузки страницы, но из-за того, что страница кэшируется (Last-Modified), рандом не происходит. Скажите, это лечится ajax'ом?
PHP код:
$LastModified_unix 1422921226// время последнего изменения страницы
$LastModified gmdate("D, d M Y H:i:s \G\M\T"$LastModified_unix);
$IfModifiedSince false;
if (isset(
$_ENV['HTTP_IF_MODIFIED_SINCE']))
    
$IfModifiedSince strtotime(substr($_ENV['HTTP_IF_MODIFIED_SINCE'], 5));  
if (isset(
$_SERVER['HTTP_IF_MODIFIED_SINCE']))
    
$IfModifiedSince strtotime(substr($_SERVER['HTTP_IF_MODIFIED_SINCE'], 5));
if (
$IfModifiedSince && $IfModifiedSince >= $LastModified_unix) {
    
header($_SERVER['SERVER_PROTOCOL'] . ' 304 Not Modified');
    exit;
}
header('Last-Modified: '$LastModified);
 
if (
rand(1,100) < 50){$dek 'Yes';}
else {
$dek 'No';}
echo 
$dek
Parallelogram вне форума Ответить с цитированием
Старый 22.02.2015, 16:27   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А ты отключи кеширование.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.02.2015, 16:32   #3
Parallelogram
Недотепа
Форумчанин
 
Регистрация: 18.01.2011
Сообщений: 174
По умолчанию

В том-то и дело, что оно там нужно.
Parallelogram вне форума Ответить с цитированием
Старый 22.02.2015, 16:41   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну в целом так да. Лечится. Но тогда почему рандом не сгенерировать в самом JS на стороне клиента?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.02.2015, 16:56   #5
Parallelogram
Недотепа
Форумчанин
 
Регистрация: 18.01.2011
Сообщений: 174
По умолчанию

Потому что я не знаю как присвоить результат js random переменной php. И я об этом не подумал.
Parallelogram вне форума Ответить с цитированием
Старый 22.02.2015, 17:09   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Вот так: http://javascript.ru/Math.random
Хотя непонятно как ты переменную PHP сюда приплел...
Тебе рандомное значение нужно для чего?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.02.2015, 17:52   #7
Parallelogram
Недотепа
Форумчанин
 
Регистрация: 18.01.2011
Сообщений: 174
По умолчанию

PHP код:
echo "<script type='text/javascript'>
var ran = Math.floor((Math.random() * 100) + 1);
if (ran < 50){var dek = 'dek0';}
else {var dek = 'dek6';}
</script>"
;
$dek "<script>document.write(dek);</script>";
echo 
$dek
Выводит или dek0, или dek6, все хорошо... Но если вставить в класс, то все летит к чертям.
PHP код:
echo "<img src='/pic.png' class='$dek'>"
Так и выдает: <img src="/pic.png" class="<script>document.write(dek); </script>">

Последний раз редактировалось Parallelogram; 22.02.2015 в 17:55.
Parallelogram вне форума Ответить с цитированием
Старый 22.02.2015, 18:22   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Но если вставить в класс, то все летит к чертям.
Хоспдя, что ты делаешь? Зачем? Ты вообще понимаешь что такое JavaScript и и сто такое class?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.02.2015, 18:29   #9
Parallelogram
Недотепа
Форумчанин
 
Регистрация: 18.01.2011
Сообщений: 174
По умолчанию

Код HTML:
for(var k=1;k<=shh;k++) {
   var ran = Math.floor((Math.random() * 100) + 1);
   if (ran < 50){var dek = 'dek0';}
   else {var dek = 'dek6';}
   document.getElementById('dek_show'+k).className += dek;
}
Cдeлaл. Нужно-то было 3 строчки написать, а я мучился 2 часа.
Parallelogram вне форума Ответить с цитированием
Старый 22.02.2015, 19:48   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Но отето похоже на правду )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Описать процедуру Minmax(X, Y), записывает в переменную X минимальное из значений X и Y, а в переменную Y - максимальное kinash96 Помощь студентам 3 12.10.2013 19:49
Подгрузить файл из интернета tronuo Общие вопросы Delphi 4 05.10.2011 09:23
Подгрузить иконку в ресурс cargo29 Мультимедиа в Delphi 2 03.06.2011 22:23
Как подгрузить изображение с инета ? jkeks Работа с сетью в Delphi 4 03.07.2008 14:16
Подгрузить страницу в IFRAME Seqular HTML и CSS 1 20.08.2007 21:25