Публикация текстового файла с использованием командной строки cURL и сценария php на стороне получателя - PullRequest
2 голосов
/ 17 ноября 2011

Используя интерфейс командной строки, я не могу за всю жизнь отправить текстовый файл.

Вот командная строка

curl -F "comments=@myfile.txt" -F "name = Scott" http://www.mydomain.com/go.php

вот PHP, взятый с этого сайта, но в примере использовался php для curl, а не для командной строки.

<code><?php
$recipient = "scott@mydomain.com";
if (empty($_POST)) {
    // We only accpet POSTs
    header('HTTP/1.0 403 Forbidden');
    exit;
} else {
    // Handle a POST
    $message .= "Submitted at ".date("F j, Y, g:i a")."\n\n";
    $message .= "Name:\n";
    $message .= $_POST['name']."\n\n";
    $message .= "-------------------------------------------\n\n";
    $message .= "Comments:\n\n";
    $message .= $_POST['comments']."\n\n";
    // Send message to email address
    $sent = mail($recipient, "Feedback", 
        $message, "From: Feedback <noreply@some_host.com>\r\n");

    if ($sent) {
?>
        <html>
        <body>
            Got POST and sent email:
            <pre><? echo $message; ?>
<? PHP } еще { // Вернуть ошибку заголовок («HTTP / 1.0 500 Internal Server Error», true, 500); выход; } } ?>

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

1 Ответ

2 голосов
/ 17 ноября 2011

Синтаксис -F у меня тоже не сработал.Но это делает:

curl --data-urlencode comments@myfile.txt --data-urlencode "name=Scott" http://www.mydomain.com/go.php
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...