Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.11.2017, 15:48
Профессор
Отправить личное сообщение для Sonya Посмотреть профиль Найти все сообщения от Sonya
 
Регистрация: 07.07.2016
Сообщений: 273

Переход по ссылке с переменной.
Здравствуйте! Надеюсь на помощь, что-то совсем голова кругом, проверяю большой код, устала с документацией. Корректен ли кусок кода:
foreach ($ulink->data as $val){
    $string1 = URLpage;
    $string2 = '/url/'.$val->data['Id'];
    if ($string1 !== $string2){
      print "<meta http-equiv='refresh' content='0; url=https://{$_SERVER['SERVER_NAME']}$string2'>"; 
     }
   }

Т.е. проверяем, если переменная $string1 не равна переменной $string2, то перенаправляем на $string2, и вот это перенаправление правильно записано?
"<meta http-equiv='refresh' content='0; url=https://{$_SERVER['SERVER_NAME']}$string2'>"
или надо так:
"<meta http-equiv='refresh' content='0; url=https://{$_SERVER['SERVER_NAME']}" . $string2 . "'>"
Ответить с цитированием
  #2 (permalink)  
Старый 15.11.2017, 17:03
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,121

Sonya, это точно в тему "Общие вопросы Javascript"?
Ответить с цитированием
  #3 (permalink)  
Старый 15.11.2017, 17:16
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,723

Sonya,
http://redirekt.info/article/redirek...a-refresh.html
echo '<meta http-equiv="refresh" content="0;https://'.$_SERVER['SERVER_NAME'].$string2.'">';
Ответить с цитированием
  #4 (permalink)  
Старый 15.11.2017, 17:20
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от Sonya
перенаправление правильно записано?
Оба случая рабочие - переменные заключенные в двойные кавычки будут обработаны. Второй случай менее нагруженный для парсера, то тогда и применять кавычки надо иначе: двойные в одинарных:

echo '<meta http-equiv="refresh" content="0; url=https://' .  $_SERVER['SERVER_NAME'] . $string2 . '">';
Ответить с цитированием
  #5 (permalink)  
Старый 15.11.2017, 17:46
Профессор
Отправить личное сообщение для Sonya Посмотреть профиль Найти все сообщения от Sonya
 
Регистрация: 07.07.2016
Сообщений: 273

Nexus,
laimas,
Большое спасибо!
Ответить с цитированием
  #6 (permalink)  
Старый 15.11.2017, 17:48
Профессор
Отправить личное сообщение для Sonya Посмотреть профиль Найти все сообщения от Sonya
 
Регистрация: 07.07.2016
Сообщений: 273

Да, только сейчас обратила внимание - вместо print лучше здесь echo?
Ответить с цитированием
  #7 (permalink)  
Старый 15.11.2017, 17:54
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,723

Sonya, почитайте тут про отличия этих функций:
http://php.net/manual/ru/function.print.php
Ответить с цитированием
  #8 (permalink)  
Старый 15.11.2017, 18:36
Кандидат Javascript-наук
Отправить личное сообщение для Lion777 Посмотреть профиль Найти все сообщения от Lion777
 
Регистрация: 04.11.2017
Сообщений: 117

Сообщение от Sonya Посмотреть сообщение
Да, только сейчас обратила внимание - вместо print лучше здесь echo?
ничем echo не лучше за print, почти одно и тоже, тесты на скорость проводили, тоже практически одинаково. И зачем вопросы о php в js ?
Ответить с цитированием
  #9 (permalink)  
Старый 15.11.2017, 21:47
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от Lion777
ничем echo не лучше за print, почти одно и тоже, тесты на скорость проводили
Причем тут скорости?
Ответить с цитированием
  #10 (permalink)  
Старый 15.11.2017, 22:08
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

А почему бы не сделать так?

foreach ($ulink->data as $val){
    $string1 = URLpage;
    $string2 = '/url/'.$val->data['Id'];
    if ($string1 !== $string2){
      header("Location: https://{$_SERVER['SERVER_NAME']}$string2");
    }
}
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Переход по локальной ссылке срабатывает только один раз gnplsk Events/DOM/Window 1 09.07.2016 18:50
Переход по ссылке metlick Общие вопросы Javascript 2 26.12.2015 18:11
Плавный переход к элементу по внешней ссылке deniskutovskiy jQuery 13 16.10.2015 22:30
Вырубить переход по ссылке mycoding Общие вопросы Javascript 11 05.11.2010 22:44
переход по ссылке через N секунд jerryfish Events/DOM/Window 4 23.02.2010 17:05