2017-03-22 5 views
2

フォームを送信するために、コマンドラインからCURLを実行しようとしています。フォームは、URLを介してアクセスすることができるPHPスクリプト(下記参照)から作成されます。Curlはフォームを送信しません。何故なの?

http://london.scripts.mit.edu/z.php

私は、Linuxからの多数のCURLのコマンドを試してみた、そしてそれらのどれも動作しません。たとえば:

カール-X POST -F「名=テスト」https://london.scripts.mit.edu/z.php

私は、この機能はとてもよく文書化されているので、私は見下ろしてるいくつかの明白な欠陥があることを認識しています。しかし、それは私のためには機能しません。ありがとう。 - Mark

<?php 
print "<!DOCTYPE html>"; 
print "<html><body>"; 
print "<p>Enter name:</p>"; 
print "<form action=\"./request_account.php\" method=\"post\" id=\"form\">\n"; 
print "<input type = \"text\" name = \"name\" id = \"name\"><br />\n"; 
print "<input type = \"submit\" value = \"Submit\" id = \"submit\">\n"; 
print "</form></body></html>"; 
?> 
+2

https://superuser.com/questions/149329/what-is-the-curl-command-line-syntax-to-do-a-post-request -fの代わりにデータを試してみてください – Nitesh

+0

またcurl bookに書かれています:[-d vs -F](https://ec.haxx.se/http-postvspost.html) –

+0

私は、コマンドラインでさまざまなオプションを試してみたことがあります。スクリプトを修正して、POSTデータを正しく受信していることを示すために$ _POSTを出力しますが、送信ボタンは単に押されていません。これをデバッグする方法に関するアイデアはありますか? – user1993015

答えて

1

問題は、curlがhtml formコマンドで指定されたアクションスクリプトを直接実行しないことです。 Web上の回避策がありますが、別のアクションスクリプトを使用しないでください。

関連する問題