0

私はワンプサーバーを使用しています.フォームの値を電子メールに送信するときに、このphpスクリプトを使用したことがあります..そして、以前は完璧に機能していました! コードで行ったことを見つけることができません。または、wamp サーバーで何かがおかしい可能性があります。送信が行われず、次のエラー メッセージが表示されるためです。メッセージの送信中に問題が発生しました。

コード:

// Create the form
$contactForm = new JFormer('contactForm', array(
    'submitButtonText' => 'Send Message',
));

// Add components to the form
$contactForm->addJFormComponentArray(array(
    new JFormComponentSingleLineText('artistname', 'Artist Name:', array(
         'validationOptions' => array('required'),
        'tip' => '<p>Enter your artist name.</p>'
    )),
    new JFormComponentSingleLineText('trackname', 'Track Name:', array(
        'tip' => '<p>Enter your track name.</p>',
         'validationOptions' => array('required'),
    )),
    new JFormComponentSingleLineText('email', 'E-mail Address:', array(
        'tip' => '<p>Enter your email address.</p>',
         'validationOptions' => array('required'),
    )),
    new JFormComponentSingleLineText('stream', 'Link to Stream:</br>(if applicable)', array(
        'tip' => '<p>Enter your link to stream.</p>'
    )),
    new JFormComponentSingleLineText('download', 'Download Link:', array(
        'tip' => '<p>Enter your download link.</p>',
         'validationOptions' => array('required'),
    )), 

    new JFormComponentMultipleChoice('multipleChoiceType', 'Full Track or Clip:',
    array(
        array('label' => 'Full Track', 'value' => 'fulltrack'),
        array('label' => 'Clip', 'value' => 'clip'),
    ),
    array(
        'multipleChoiceType' => 'radio',
    )),
    new JFormComponentSingleLineText('downloadorpurchase', 'Free Download or 
    Purchase Link</br>(To be included in video description)', array(
        'tip' => '<p>Enter your link.</p>',
    )),
    new JFormComponentSingleLineText('releasedate', 'Release Date:</br>(if applicable)', array(
        'tip' => '<p>Enter the release date.</p>',
    )),
    new JFormComponentTextArea('artistandlabel', 'Artist / Label Links:</br>(To be included in description.)', array(
        'validationOptions' => array('required'),
        'tip' => '<p>Enter your description.</p>',
    )),
    new JFormComponentMultipleChoice('iagree', 'I confirm that I own full 
    copyright rights and grant the THU Records to post my music in their videos. I 
    understand that content may be monetized with adverts.',
    array(
        array('label' => 'I Accept', 'value' => 'accepted'),
        array('label' => 'I Do Not Accept', 'value' => 'dontaccepted'),
    ),
    array(
        'iagree' => 'radio',
         'validationOptions' => array('required'),
    )),
));



// Set the function for a successful form submission
function onSubmit($formValues) {

    // Concatenate the name
    if(!empty($formValues->name->middleInitial)) {
        $name = $formValues->name->firstName . ' ' . $formValues->name->middleInitial . ' ' . $formValues->name->lastName;
    }
    else {
        $name = $formValues->name->firstName . ' ' . $formValues->name->lastName;
    }
    // Prepare the variables for sending the mail
    $to = 'lill_z4ck3@hotmail.com';
    $fromAddress = $formValues->email;
    $trackName = $formValues->trackname;
    $streamLink = $formValues->stream;
    $download = $formValues->download;
    $trackorclip = $formValues->multipleChoiceType;
    $downloadOrPurchase = $formValues->downloadorpurchase;
    $releaseDate = $formValues->releasedate;
    $artistAndLabel = $formValues->artistandlabel;
    $agreement = $formValues->iagree;
    $artistName = $formValues->artistname;
    $subject = "Submit from ".$formValues->artistname;
    $message = "Artist Name : ".$artistName."\nTrack Name : ".$trackName."\n
     Email : ".$fromAddress."\n Stream Link : ".$streamLink."\nDownload link 
     : ".$download."\nTrack or Clip : ".$trackorclip."\nDownload or Purchase 
     : ".$downloadOrPurchase."\n Release Date : ".$releaseDate."\n Artist
      and Label Info : ".$artistAndLabel."\n Agreement : ".$agreement;

    // Use the PHP mail function
    $mail = mail($to, $subject, $message);

    // Send the message
    if($mail) {
        $response['successPageHtml'] = '
            <h1>Thanks for Contacting Us</h1>
            <p>Your message has been successfully sent.</p>
        ';
    }
    else {
        $response['failureNoticeHtml'] = '
            There was a problem sending your message.
        ';
    }

    return $response;
}

// Process any request to the form
$contactForm->processRequest();

何が間違っている可能性があるか知っている人はいますか?:(

4

1 に答える 1

0

このmail()関数は通常、WAMP などのデフォルトでは機能しません。SMTP サーバーの詳細を php.ini ファイルに追加してから、その他の設定を構成する必要があります。

これは素晴らしいチュートリアルです: http://roshanbh.com.np/2007/12/sending-e-mail-from-localhost-in-php-in-windows-environment.html

お役に立てれば。

于 2013-06-27T03:02:04.527 に答える