0

私は Xcode に比較的慣れていないので、より複雑なものに移る前に、非常に基本的なアプリのスタイルを設定して作成しようとしています。そのため、常に学習しています。

これで、Contact Form ビュー コントローラーのスタイルがすべて整ったので、ユーザーが [送信] をクリックすると、入力されたデータを定義済みのメール アドレスに送信する方法を見つけたいと思います。これには、私が満足しているPHPサーバー側が少し必要であることは承知していますが、問題を引き起こしているのはXcodeでの基本的な照合です-アクション/コードの割り当てなど.

フォームを最初から作成する方法を説明するチュートリアルはたくさんありますが、それを既存のプロジェクトに実装するのは難しいことがわかっています.必要なインターフェイスを備えたビューコントローラーのセットアップが既にあります.

ビュー コントローラーのスクリーンショットはこちら: http://pixelproofdesign.co.uk/stackoverflow/View%20Controller%20Screenshot.png

プロジェクト ファイルは次の場所にあります: http://pixelproofdesign.co.uk/stackoverflow/Pixel%20Proof_NEW.zip

どんな助けでも大歓迎です-それは私を曲がりくねらせています!

4

2 に答える 2

1

フォームの各テキスト フィールドを .H ファイルのアウトレットに接続します。これにより、ユーザーが [お問い合わせ] ボタンをタップしたときに text プロパティを取得できるようになります。

@property (弱い、非アトミック) IBOutlet UITextField *contactName; @property (弱い、非アトミック) IBOutlet UITextField *contactEmail; @property (弱い、非アトミック) IBOutlet UITextField *contactPhone; @property (弱い、非アトミック) IBOutlet UITextField *contactDescription;

そのボタンにアクションを追加し、テキスト フィールドを NSString に連結します。

NSString *message = [NSString stringWithFormat:@"name=%@&email=%@&phone=%@&description=%@",
                     self.contactName.text,
                     self.contactEmail.text,
                     self.contactPhone.text,
                     self.contactDescription.text];

次に、これを POST として送信すると、PHP が各フィールドを変数として取得します。HTTP POST によるフォーム データの送信も参照してください。

于 2012-09-15T08:59:47.953 に答える
0

データの収集が完了したら、NSDictionary を構築します

id dict = @{@"formField1": formField1.stringValue; @"FormField2": formField2.stringValue};

=>結果の辞書をエンコードして、htmlに配置できるようにします(カテゴリを取得してpostDataを取得します

id data = [dict postData];

=> NSURLConnection を使用して転送します

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"www.url.de"]];
[request setHTTPBody:data];
[request setHTTPMethod:@"POST"];
[request setValue:@"multipart/form-data, boundary=--------------BOUNDARY------------------" forHTTPHeaderField:@"Content-type"];

NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];

免責事項: 私はこれをインラインでここに書きましたが、タイプミスがないかテストしたことはありません

于 2012-09-15T08:21:57.527 に答える