Отправленный почтовый запрос с использованием Zend_Http_Client - PullRequest
2 голосов
/ 21 февраля 2012

Я хочу отправить запрос с перенаправлением URL-адреса на страницу запроса.Jest думаю, что страница запроса в настоящее время используется для обработки формы отправки.

Я попробовал следующий код на моей странице запроса.

<?php

$myFile = "test.txt";
$fh = fopen($myFile, 'w') or die("can't open file");
$stringData = "Request come to the page\n";
fwrite($fh, $stringData);

if (isset($_POST)) {
        $stringData = $_POST['user'];
        fwrite($fh, $stringData);
}

fclose($fh);
echo 'page found';

Я пытался Zend_Http_Client сделать это.Это мое простое действие.

public function indexAction()
{   
    $client = new Zend_Http_Client('http://localhost/test/test.php');

    $client->setParameterPost(array('user' => 'dinuka'));
    $client->setConfig(array('strictredirects' => true));

    $response = $client->request(Zend_Http_Client::POST); 
}

Теперь запрос отправляем на test.php.Но не перенаправлять на страницу http://localhost/test/test.php.Я хочу отправить запрос + редирект.Я задавал этот вопрос ранее.Но это закрыто как чистый вопрос.Пожалуйста, помогите мне.У меня нет хороших знаний о запросе http.Что такое strictredirects?

1 Ответ

1 голос
/ 22 февраля 2012

Я думаю, что это может охватывать основы того, что вы хотите:

<?php

class IndexController extends Zend_Controller_Action {

    public function init() {
    }

    public function indexAction() {
        //set form action to indexController nextAction
        $form = My_Form();
        $form->setAction('/index/next');
        //asign form to view
        $this->view->form = $form;
    }

    public function nextAction() {
        //if form is posted and valid
        if ($this->getRequest()->isPost()) {
            if ($form->isValid($this->getRequest()->getPost())) {
                $data = $form->getValues();

                //Do some stuff
            }
        } else {
            //if form not posted go to form in indexAction
            $this->_forward('index');
        }
    }
}

кажется, что это форма вашего вопроса, но вы действительно хотите знать, как отправить данные сообщения в перенаправлениивместо получения данных, если я на правильном пути, пожалуйста, прокомментируйте, как еще мы можем изменить это, чтобы помочь вам решить вашу проблему.

public function indexAction()
{   
    $client = new Zend_Http_Client('http://localhost/test/test.php');

    $client->setParameterPost(array('user' => 'dinuka'));
    $client->setConfig(array('strictredirects' => true));

    $response = $client->request(Zend_Http_Client::POST); 
}

Я понимаю, что вы хотите с этим кускомКод для отправки запроса на этот URL и одновременного перенаправления вашего браузера.Это должно быть возможно, и согласно тому, что я могу найти, оно должно быть таким же простым, как $response->location, но я не могу заставить его работать.->location должен быть элементом заголовка, но я не могу его найти.Может быть, один из наших других гуру может помочь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...