ASIFormDataRequestを使用していくつかの値を送信しようとしています。問題は、PHPスクリプトが実行されても、投稿データが受信されないということです。ここでASIFormDataRequestはポスト値を送信しません
は、私が何をすべきかです:
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request setPostValue:@"Ben" forKey:@"first_name"];
[request setPostValue:@"Copsey" forKey:@"last_name"];
[request startSynchronous];
サーバーは、私は次のPHPテスト・スクリプトを持って受け取るかどうか確認するために:
$handle = fopen("output.txt", "w");
fwrite($handle, count($_POST)."\n");
fwrite($handle, count($_GET)."\n");
fwrite($handle, count($_FILES)."\n");
foreach ($_POST as $key => $value)
{
fwrite($handle, "POST $key=$value\n");
}
foreach ($_GET as $key => $value)
{
fwrite($handle, "GET $key=$value\n");
}
fclose($handle);
同じスクリプトは、次のHTMLフラグメントで動作します:
<FORM action="http://......."
enctype="multipart/form-data"
method="post">
<P>
What is your name? <INPUT type="text" name="submit-name"><BR>
<INPUT type="submit" value="Send"> <INPUT type="reset">
</FORM>
htmlフラグメントはphpスクリプトで動作するため、私はphpとserveを疑うrは問題ではありません。
私のiPhoneからASIFormDataRequestが呼び出されないと、なぜ私は少しのアイデアはありません。
誰かが私を助けてくれますか?
よろしく、 サシャ
もう少しテストをしたところ、サーバー構成であることが分かりました。私は問題の原因を見つけ出していませんが、別のサーバーでは問題はありません。また、障害のあるサーバーでは、コンテンツタイプのヘッダーが見つからず、要求メソッドは常にGET(POSTではない方法)であることがわかりました。どちらのサーバーもWindows XPでxamppを実行します。欠陥のあるものは、PHP 5.3.1を持っています。 – Sascha
さて、私の結論は、私の問題はサーバーの設定から来ていると思います。あまりにも悪いことに、私はWindows上でXAMPPに固執しています。それは簡単ではありません。 – Sascha