Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: PHP: вызов консольного скрипта из Web-скрипта

Сообщения:  [1-10]   [11-18] 

 
 автор: sl1p   (17.04.2011 в 11:23)   письмо автору
 
   для: cheops   (17.04.2011 в 10:52)
 

Спасибо большое за ответы!

  Ответить  
 
 автор: cheops   (17.04.2011 в 10:52)   письмо автору
 
   для: sl1p   (17.04.2011 в 10:48)
 

>хм а почему так?..
Браузеру нужна динамическая библиотека, а в консоли нужен полноценный модуль. Да они могут быть из одной сборки, но как правило, на UNIX-серверах это не так, так как там модули используются не готовые, а компилируемые. Поэтому тот PHP, который нужен для Apache компилируют по ближе к нему, а тот, который нужен в консоли, компилируют отдельно. Хотя удаленно сложно сказать, может конкретно на этом сервере все по-другому. В любом случае проблема того, что в Apache и в консоли разные версии, и по-разному настроены встречается на каждом втором сервере в интернет.

>Возможно строку нужно както закодировать?
Для начала в кавычки возьмите.

  Ответить  
 
 автор: sl1p   (17.04.2011 в 10:50)   письмо автору
 
   для: sl1p   (17.04.2011 в 10:48)
 

тьху, всегда так, сначала пишу, потом думаю :(

base64_encode помогла.

  Ответить  
 
 автор: sl1p   (17.04.2011 в 10:48)   письмо автору
 
   для: cheops   (17.04.2011 в 10:44)
 

хм а почему так?..

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

  Ответить  
 
 автор: cheops   (17.04.2011 в 10:44)   письмо автору
 
   для: sl1p   (17.04.2011 в 10:34)
 

>В данном случае используется же пхп тот же что и при запросе веб-скрипта, правильно?
Не факт, вернее 100% используется другой исполняемый модуль, но возможно, они используют единый конфигурационный файл php.ini.

  Ответить  
 
 автор: sl1p   (17.04.2011 в 10:34)   письмо автору
 
   для: sl1p   (17.04.2011 в 10:12)
 

зы всё поехало указав команду так:

system('php /test.php');

В данном случае используется же пхп тот же что и при запросе веб-скрипта, правильно?

  Ответить  
 
 автор: sl1p   (17.04.2011 в 10:12)   письмо автору
 
   для: cheops   (17.04.2011 в 09:41)
 

Это сами смотрите... кому что нужно, первое что приходит в голову MySQL, сокеты, mb_string(untf-8).
хм, чтото совсем запутался, а какой же пхп тогда используется если там ничего не подключено?..
Имелось ввиду что не работают функции вообще, по типу intval, strlen их же подключать не нужно вроде:)

Вернуть куда? Консольный скрипт может сохранять файлы, это подходит?
Вообще подходит но было отлично если бы результат работы через консоль вернулся бы в веб-скрипт который эту консоль запустил. Там же чтото возвращать то можно:)

  Ответить  
 
 автор: cheops   (17.04.2011 в 09:41)   письмо автору
 
   для: sl1p   (17.04.2011 в 09:19)
 

>• а какие нужны расширения?..
Это сами смотрите... кому что нужно, первое что приходит в голову MySQL, сокеты, mb_string(untf-8).

>• зы. и как насчет вопроса возможно ли вернуть из консоли сгенереный ексель?) Если нет то
>тема для меня будет бессмыслена(
Вернуть куда? Консольный скрипт может сохранять файлы, это подходит?

>А как же тогда при работе с кроном эти переменные таки приходят?
Может только часть переменных в $_SERVER, но лучше на это не расчитывать, на другом хосте может не быть и их.

  Ответить  
 
 автор: sl1p   (17.04.2011 в 09:19)   письмо автору
 
   для: cheops   (17.04.2011 в 09:11)
 

хм да я так и подумал насчет теребить:)

• а какие нужны расширения?..

• зы. и как насчет вопроса возможно ли вернуть из консоли сгенереный ексель?) Если нет то тема для меня будет бессмыслена(

• зыы. PS Следует так же учитывать, что в консольном варианте у вас не будет никаких серверных переменных
А как же тогда при работе с кроном эти переменные таки приходят? В моём случае используется только $_SERVER['DOCUMENT_ROOT'] и она определена... возможно она есть везде?

  Ответить  
 
 автор: cheops   (17.04.2011 в 09:11)   письмо автору
 
   для: sl1p   (17.04.2011 в 09:03)
 

Могут быть расширения не подключены (или php.ini не настроен или вообще отсутствует) - нужно теребить службу тех.поддержки, пока консольный PHP не заработает как вам нужно.

PS Следует так же учитывать, что в консольном варианте у вас не будет никаких серверных переменных и суперглобальных массивов, а текущую директорию следует указывать в обязательном порядке или использовать абсолютные пути.

  Ответить  

Сообщения:  [1-10]   [11-18] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования