Logo

Вход

Войти с помощью соц. сетей
X
 
  • Фильтр
  • Время
  • Показать
Очистить всё
новые сообщения
ТОП СООБЩЕНИЙ
26.04.2015, 01:21
Лучший ответ
Выплачено: 99793 RUB
Сообщение от AIV Посмотреть сообщение
Как сделать корректный вызов WebRequest из скрипта (или из советника, все равно).
Мне надо передать в WebRequest значение переменной stroka и увидеть результат на странице
Понадобится преобразовать строку в массив с помощью функции StringToCharArray().

MQL код:
#property strict

string url = "http://www.mctrewards.ru/files/signal.php";
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
void OnStart()
{

string cookie = NULL,
referer = NULL,
headers;
char post[],
result[];
int res,
timeout = 1000;

//---

//Строка с данными
string send = "name=123,45678";
//Преобразование строки в массив
StringToCharArray(send,post);

ResetLastError();
//Отправка данных
res=WebRequest("POST",url,cookie,referer,timeout,p ost,0,result,headers);

//Ответ сервера. html с текстом "OK!"
Print(CharArrayToString(result));

//--- проверка ошибок
if(res == -1)
{
Print("Ошибка в WebRequest. Код ошибки =",_LastError);
//--- возможно URL отсутствует в списке, выводим сообщение о необходимости его добавления
MessageBox("Необходимо добавить адрес '"+url+"' в список разрешенных URL во вкладке 'Советники'","Ошибка",MB_ICONINFORMATION);
}

}
  • #1 Свернуть

    Как сделать корректный вызов WebRequest

    Как сделать корректный вызов WebRequest из скрипта (или из советника, все равно).
    Мне надо передать в WebRequest значение переменной stroka и увидеть результат на странице http://mctrewards.ru/files/signal.txt

    MQL код:
    void OnStart()
    {
    string cookie=NULL,headers;
    char result[];
    char post[];
    int res;
    string stroka="123,4567";

    int timeout=5000; //--- timeout менее 1000 (1 сек.) недостаточен при низкой скорости Интернета
    res=WebRequest("POST","http://www.mctrewards.ru/files/signal.php",cookie,NULL,timeout,post,0,result,head ers);

    }



    Есть форма для отправки
    http://www.mctrewards.ru/files/signal.htm

    PHP код:
    <!DOCTYPE html>
    <
    head>
        <
    title>Adding the line</title>
    </
    head>
        <
    body>
                <
    h1>To add information about the signal:</h1>
               <
    form action='signal.php' method='post'>
    String (signal) : <input type=text name=name
    <
    input type=submit name=send value=Send

    </
    form></body>
                </
    body>
        </
    html
    Есть файл скрипта, вызываемый из формы http://www.mctrewards.ru/files/signal.php
    PHP код:
        <html>
        <head>
        <title>Запись в текстовый файл</title>
        </head>
        <body>
        <?php
        
    // Открыть текстовый файл
        
    $f fopen("signal.txt"'w');
        
    // Записать строку текста
        
    fwrite($f$_POST["name"]."\r\n");  
        
    // Закрыть текстовый файл
        
    fclose($f);
        
    ?>
    OK!
        </body>
        </html>
    Есть возможность посмотреть результат

    http://www.mctrewards.ru/files/signal.txt

    Если я ввожу в форме 123,4567 То введенное вижу на странице http://mctrewards.ru/files/signal.txt Тоже самое хочу получить программным путем.
    Последний раз редактировалось Gold; 25.04.2015, 23:49.
  • <a href="https://www.instaforex.org/ru/?x=ruforum">InstaForex</a>
  • #2 Свернуть

    Сообщение от AIV Посмотреть сообщение
    Как сделать корректный вызов WebRequest из скрипта (или из советника, все равно).
    Мне надо передать в WebRequest значение переменной stroka и увидеть результат на странице
    Понадобится преобразовать строку в массив с помощью функции StringToCharArray().

    MQL код:
    #property strict

    string url = "http://www.mctrewards.ru/files/signal.php";
    //+------------------------------------------------------------------+
    //| Script program start function |
    //+------------------------------------------------------------------+
    void OnStart()
    {

    string cookie = NULL,
    referer = NULL,
    headers;
    char post[],
    result[];
    int res,
    timeout = 1000;

    //---

    //Строка с данными
    string send = "name=123,45678";
    //Преобразование строки в массив
    StringToCharArray(send,post);

    ResetLastError();
    //Отправка данных
    res=WebRequest("POST",url,cookie,referer,timeout,p ost,0,result,headers);

    //Ответ сервера. html с текстом "OK!"
    Print(CharArrayToString(result));

    //--- проверка ошибок
    if(res == -1)
    {
    Print("Ошибка в WebRequest. Код ошибки =",_LastError);
    //--- возможно URL отсутствует в списке, выводим сообщение о необходимости его добавления
    MessageBox("Необходимо добавить адрес '"+url+"' в список разрешенных URL во вкладке 'Советники'","Ошибка",MB_ICONINFORMATION);
    }

    }
    Правила форума | КИСА | Акция «Деньги за посты» | Как вставить картинку?

    Комментарий

    working...
    X