Как передать данные переменной в другой файл?

Обсуждение смены дизайна, дополнительного функционала, SEO и т.п.

Модераторы: Xpycm, Koduc

Правила форума
ВНИМАНИЕ! Форум не является средством гарантированной поддержки клиентов и пользователей. Поэтому на быстрый ответ тут рассчитывать не нужно, как и на ответ вообще. Сотрудники отвечают по мере своих возможностей.

На форуме действует ограничение в 3 сообщения / сутки.
Если Вы хотите сказать "спасибо", то воспользуйтесь функцией "Повысить репутацию" - зелёная иконка "плюс" под ником ответившего.

Как передать данные переменной в другой файл?

Сообщение vanred79 » 18 сен 2018, 15:22

Здравтствуйте! Установил в папку /js epub ридер для книг, но не могу понять как передать данные переменной $model->cost, которая находится в файле /protected/modules/catalog/views/view.php в файл /js/epubjs/reader/index.html.
В файле /js/epubjs/reader/index.html есть такой код:
Код: Выделить всё
<script>
            
"use strict";

            
document.onreadystatechange = function () {
              if (
document.readyState == "complete") {
                
window.reader ePubReader("/books/menin_atim_koja.epub", {
                   
restoretrue
                 
});
              }
            };

        
</script>

В переменной $model->cost я задал урл книги и хотелось бы, чтобы он автоматически вставлялся вместо /books/menin_atim_koja.epub.
Может можно как то по другому решить такую задачу? Подскажите пожалуйста.

Нужно при клике по ссылке Читать для каждой книги открывать свой epub файл
Вся недвижимость Астаны у нас на сайте
vanred79
Местная знаменитость
Местная знаменитость
 
Сообщения: 660
Зарегистрирован: 02 фев 2013, 18:42
Откуда: Казахстан
Очки репутации: 2

Re: Как передать данные переменной в другой файл?

Сообщение Xpycm » 18 сен 2018, 15:26

Как передавать значения переменных в функции, ровно как и программированию учат в специальных учебных заведениях.
Либо можно на дому:
https://www.google.com/search?q=учебник+по+php
https://www.google.com/search?q=учебник+по+yii
Dropbox
Open Real Estate CMS: FAQ | FAQ 2 | FAQ 3
Изображение
Xpycm
Разработчик
Разработчик
 
Сообщения: 1592
Зарегистрирован: 30 дек 2011, 11:06
Откуда: Йошкар-Ола
Очки репутации: 50

Re: Как передать данные переменной в другой файл?

Сообщение vanred79 » 18 сен 2018, 16:45

Здравствуйте Хруст!
Попробовал метод, который вы ранее рекомендовали:
- создал переменную public $epuburl в контроллере /protected/components/Controller.php
- затем в файл /protected/modules/catalog/views/view.php вставил код
Код: Выделить всё
Yii::app()->controller->epuburl $model->cost

- затем хотел использовать переменную в php файле в корне сайта, используя следующий код
Код: Выделить всё
$urlbook Yii::app()->controller->epuburl;
echo 
"var bookurl=".$urlbook.";"

но результат не вышел.
Вышестоящий код работает только между файлами view?
Второй вопрос этот код только для ORE или в этом движке он тоже должен работать?
Вся недвижимость Астаны у нас на сайте
vanred79
Местная знаменитость
Местная знаменитость
 
Сообщения: 660
Зарегистрирован: 02 фев 2013, 18:42
Откуда: Казахстан
Очки репутации: 2

Re: Как передать данные переменной в другой файл?

Сообщение Xpycm » 18 сен 2018, 17:20

Если я правильно понял, то библиотека эта https://github.com/futurepress/epubjs-reader
В /js/epubjs/reader/index.html вообще ничего не надо передавать. Это демонстрационный файл.

Нужно при клике открывать новую страницу в модальном окне или просто новую вкладку, это не важно, со ссылкой, например: http://example.com/catalog/read/тут_значение_из_model->cost
В правилах построения ЧПУ сделать так, чтобы такие страницы ссылались на catalog/main/read. Добавить контроллер ReadController.php и в нём описать обработку. А именно открытие файла отображения (view) и в этом представлении уже вставлять js, в котором вместо https://s3.amazonaws.com/moby-dick/ будет ваша ссылка
Код: Выделить всё
document.onreadystatechange = function () {
  if (
document.readyState == "complete") {
    
window.reader ePubReader("https://s3.amazonaws.com/moby-dick/", {
       
restoretrue
     
});
  }
}; 
Dropbox
Open Real Estate CMS: FAQ | FAQ 2 | FAQ 3
Изображение
Xpycm
Разработчик
Разработчик
 
Сообщения: 1592
Зарегистрирован: 30 дек 2011, 11:06
Откуда: Йошкар-Ола
Очки репутации: 50

Re: Как передать данные переменной в другой файл?

Сообщение vanred79 » 19 сен 2018, 13:59

Хруст спасибо за ответ! Задачу решил
Вся недвижимость Астаны у нас на сайте
vanred79
Местная знаменитость
Местная знаменитость
 
Сообщения: 660
Зарегистрирован: 02 фев 2013, 18:42
Откуда: Казахстан
Очки репутации: 2


Вернуться в Вопросы и помощь по изменениям

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6