PDA

View Full Version : سوال: مشکل با تابع ایمیل و ارسال نشدن آن....



khanlo.javid
شنبه 07 مرداد 1391, 11:37 صبح
سلام دوستان من از کد زیر برای ارسال ایمیل استفاده میکنم ولی جواب نمیده لطفا ببینید مشکلش کجاست .
تشکر از پاسخ هاتون.




<?php

define( "RECIPIENT_NAME", "فرم تماس" );
define( "RECIPIENT_EMAIL", "khanlo.javid@yahoo.com" );
define( "EMAIL_SUBJECT", "پیام بازدید کننده" );

$success = false;
$senderName = isset( $_POST['senderName'] ) ? preg_replace( "/[.\-\' a-zA-Z0-9]/u", "", $_POST['senderName'] ) : "";
$senderEmail = isset( $_POST['senderEmail'] ) ? preg_replace( "/[^\.\-\_\@a-zA-Z0-9]/", "", $_POST['senderEmail'] ) : "";
$message = isset( $_POST['message'] ) ? preg_replace( "/(From:|To:|BCC:|CC:|Subject:|Content-Type:)/", "", $_POST['message'] ) : "";

if ( $senderName && $senderEmail && $message ) {
$recipient = RECIPIENT_NAME . " <" . RECIPIENT_EMAIL . ">";
$headers = "From: " . $senderName . " <" . $senderEmail . ">";
$success = mail( $recipient, EMAIL_SUBJECT, $message, $headers );
}

if ( isset($_GET["ajax"]) ) {
echo $success ? "success" : "error";
} else {
?>
<?php if ( $success ) echo "<p style=\"direction: rtl;\">با تشکر از ارسال پیامتان.</p>" ?>
<?php if ( !$success ) echo "<p style=\"direction: rtl;\">در ارسال پیامتان مشکلی وجود داشت. لطفاً دوباره تلاش بفرمایید.</p>" ?>
<?php
}
?>



البته با استفاده از جی کوئری ارسال میشه .


var messageDelay = 2000; // How long to display status messages (in milliseconds)

// Init the form once the document is ready
$( init );


// Initialize the form

function init() {

// Hide the form initially.
// Make submitForm() the form's submit handler.
// Position the form so it sits in the centre of the browser window.
$('#contactForm').hide().submit( submitForm ).addClass( 'positioned' );

// When the "Send us an email" link is clicked:
// 1. Fade the content out
// 2. Display the form
// 3. Move focus to the first field
// 4. Prevent the link being followed

$('a[href="#contactForm"]').click( function() {
$('#content').fadeTo( 'slow', .2 );
$('#contactForm').fadeIn( 'slow', function() {
$('#senderName').focus();
} )

return false;
} );

// When the "Cancel" button is clicked, close the form
$('#cancel').click( function() {
$('#contactForm').fadeOut();
$('#content').fadeTo( 'slow', 1 );
} );

// When the "Escape" key is pressed, close the form
$('#contactForm').keydown( function( event ) {
if ( event.which == 27 ) {
$('#contactForm').fadeOut();
$('#content').fadeTo( 'slow', 1 );
}
} );

}


// Submit the form via Ajax

function submitForm() {
var contactForm = $(this);

// Are all the fields filled in?

if ( !$('#senderName').val() || !$('#senderEmail').val() || !$('#message').val() ) {

// No; display a warning message and return to the form
$('#incompleteMessage').fadeIn().delay(messageDela y).fadeOut();
contactForm.fadeOut().delay(messageDelay).fadeIn() ;

} else {

// Yes; submit the form to the PHP script via Ajax

$('#sendingMessage').fadeIn();
contactForm.fadeOut();

$.ajax( {
url: contactForm.attr( 'action' ) + "?ajax=true",
type: contactForm.attr( 'method' ),
data: contactForm.serialize(),
success: submitFinished
} );
}

// Prevent the default form submission occurring
return false;
}


// Handle the Ajax response

function submitFinished( response ) {
response = $.trim( response );
$('#sendingMessage').fadeOut();

if ( response == "success" ) {

// Form submitted successfully:
// 1. Display the success message
// 2. Clear the form fields
// 3. Fade the content back in

$('#successMessage').fadeIn().delay(messageDelay). fadeOut();
$('#senderName').val( "" );
$('#senderEmail').val( "" );
$('#message').val( "" );

$('#content').delay(messageDelay+500).fadeTo( 'slow', 1 );

} else {

// Form submission failed: Display the failure message,
// then redisplay the form
$('#failureMessage').fadeIn().delay(messageDelay). fadeOut();
$('#contactForm').delay(messageDelay+500).fadeIn() ;
}
}