Как передать, ДОБИРАЮТСЯ и данные POST до php исполняемого файла?

Это на самом деле проблема, с которой я столкнулся, и вот как я подошел к ней, моей главной целью было разделение даты

class InputRequest:
     "This class contain all inputs function that will be required in this program. "

      def __init__(self, stockTickerName = 'YHOO', stockSite='yahoo', startDate = None, 
             endDate = datetime.date.today()):

      def requestInput(self, requestType =''):
          "Fro requesting input from user"
          self.__requestInput = input(requestType)
          return self.__requestInput


def dateFormat(self, dateType=''):
    '''
        this function handles user date input
        this repeats until the correct format is supplied
        dataType: this is the type of date, eg: DOF, Date of Arriveal, etc 

    '''
    while True:
        try:
            dateString = InputRequest.requestInput(self,dateType)
            dtFormat = ('%Y/%m/%d','%Y-%m-%d','%Y.%m.%d','%Y,%m,%d','%Y\%m\%d') #you can add extra formats needed
            for i in dtFormat:
                try:
                    return datetime.datetime.strptime(dateString, i).strftime(i)
                except ValueError:
                    pass

        except ValueError:
            pass
        print('\nNo valid date format found. Try again:')
        print("Date must be seperated by either [/ - , . \] (eg: 2012/12/31 --> ): ")
5
задан The.Anti.9 3 June 2009 в 03:50
поделиться

5 ответов

Для GET: Легкий способ (который я нашел):

php-cgi.exe <script-file-name> <parameter1>=<value1> <parameter2>=<value2> [...] <parameterN>=<valueN>

Более сложный путь (через php-cgi и windows cli) будет:

SET "QUERY_STRING=<parameter1>=<value1>&<parameter2>=<value2>&[...]&<paramterN>=<valueN>"
SET SCRIPT_NAME=<script-file-name>
SET REQUEST_METHOD=GET
SET REDIRECT_STATUS=0
php-cgi.exe

Я предполагаю, что есть способ установить переменную среды через C # /. Net . Переменные среды должны быть сброшены после завершения php-cgi.exe.

Дополнительная информация о переменных среды CGI, которые вы можете установить (и CGI в целом), на http://www.ietf.org/rfc/ rfc3875.txt . Также может пригодиться документация PHP по переменной $ _SERVER. Вопросы безопасности для запуска PHP как CGI также приведены в документации PHP на php.net.

5
ответ дан 14 December 2019 в 13:45
поделиться

Если вы используете bash или аналогичную оболочку, попробуйте следующее: QUERY_STRING = "fruitKind = apple & basketId = 1000" php -q foo.php .

1
ответ дан 14 December 2019 в 13:45
поделиться

Вы знакомы с CGI ? Обычно именно так веб-серверы выполняют произвольные внешние программы.

Конечно, существуют более современные альтернативы CGI, но (почти) все современные веб-серверы и внешние программы будут поддерживать CGI.

1
ответ дан 14 December 2019 в 13:45
поделиться

Есть вы рассматривали возможность передачи данных GET / POST как STDIN в исполняемый файл PHP? т.е.

система ("echo" .GETOrPOSTData. "> foobar.php");

-1
ответ дан 14 December 2019 в 13:45
поделиться

Здесь есть объяснение http://stevedev.co.cc/php-curl-method-get-and-post/

0
ответ дан 14 December 2019 в 13:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: