0

お問い合わせフォームを作成しました。フォームには3つのテキストフィールド(名前、電子メール、電話番号)があり、フォームには1つのテキストビュー(メッセージ)と1つのアクションボタンがあります。私はすべての検証をフォームに入れましたが、私の問題は、誰かがフォームに入力してアクションボタンを押すと、フォーム内のすべての情報が私の個人メール ID で送信されることです。メールを送信するためのコードを書いてください

#import "ViewController.h"

@implementation ViewController
@synthesize name, phone_no,email,message,mylabel;

-(IBAction)submit:(id)sender

{
    NSString *ename = [[NSString alloc] initWithString:name.text];
    NSString *ephone = [[NSString alloc] initWithString:phone_no.text];
    NSString *eemail = [[NSString alloc] initWithString:email.text];
    NSString *emessage = [[NSString alloc] initWithString:message.text];
    if([ename isEqualToString:@""] && [ephone isEqualToString:@""] && [eemail isEqualToString:@""] && [emessage isEqualToString:@""] ) 
    {
        mylabel.text = @"enter all the field";
        alert = [[UIAlertView alloc] initWithTitle:@"Missing Fields" message:@"Enter all fields" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
        [alert show];
    }
    else if ([ename isEqualToString:@""])
    {
        alert = [[UIAlertView alloc] initWithTitle:@"Missing Fields" message:@"Must Enter your name" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
        [alert show];
    }
    else if ([ephone isEqualToString:@""])
    {
        alert = [[UIAlertView alloc] initWithTitle:@"Missing Fields" message:@"Must Enter your Phone" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
        [alert show];
    }
    else if ([eemail isEqualToString:@""] )
    {
        alert = [[UIAlertView alloc] initWithTitle:@"Missing Fields" message:@"Must Enter your email" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
        [alert show];
    }
    else if ([emessage isEqualToString:@""] || emessage.length < 30)
    {
        alert = [[UIAlertView alloc] initWithTitle:@"Missing Fields" message:@"your message lenght not less then 100" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
        [alert show];
    }
    else 
    {
        mylabel.text = @"login success";
    }

    [ename release];
    [ephone release];
    [eemail release];
    [emessage release];
    [alert release];
}
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range 
 replacementText:(NSString *)text
{
    // Any new character added is passed in as the "text" parameter
    if ([text isEqualToString:@"\n"]) {
        // Be sure to test for equality using the "isEqualToString" message
        [textView resignFirstResponder];

        // Return FALSE so that the final '\n' character doesn't get added
        return FALSE;
    }
    // For any other character return TRUE so that the text gets added to the view
    return TRUE;
}

- (IBAction)textFieldShouldReturn:(id) sender
{
    [name resignFirstResponder];
    [phone_no resignFirstResponder];
    [email resignFirstResponder];
}

- (IBAction)fields:(id) sender
{
    [sender resignFirstResponder];
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Release any cached data, images, etc that aren't in use.
}

#pragma mark - View lifecycle

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}

- (void)viewDidUnload
{
    [super viewDidUnload];
    // Release any retained subviews of the main view.
    // e.g. self.myOutlet = nil;
}
@END
4

2 に答える 2

1

こんにちは、カスタムフォームを作成するためのフレームワークです。以下の要件に合わせてカスタマイズできます。カスタムフォームを作成するためのリンクです。

1)QuickDialog

2)IBAForms

これが開発に大いに役立つことを願っています。

于 2012-10-31T06:43:21.547 に答える
1
    MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
    picker.mailComposeDelegate = self;
    [picker setToRecipients:[In Array your email Id]]; // to add your default email id.

    NSString *emailBody = @"add your text in emailBody";  
    [picker setMessageBody:emailBody isHTML:YES];
    [self presentModalViewController:picker animated:YES];
    [picker release];

すべての条件を確認したら、このコードを使用して MFMailComposeViewController を開くことができます。ヘッダー ファイルで MFMailComposeViewController をデリゲートすることを忘れないでください。

于 2012-10-31T07:13:05.947 に答える