• 29-08-2012, 15:54:49
    #1
    Üyeliği durduruldu
    Merhaba;
    iletisim.html
    <form class="cmxform" id="CommentForm" method="post" action="#">
    								<fieldset>
    									<legend>İletişim</legend>
    									<div>
    										<label for="ContactName" class="overlabel">İsim Soyisim</label>
    										<input id="ContactName" name="ContactName" class="textInput required" />
    									</div>
    									<div>
    										<label for="ContactEmail" class="overlabel">E-Mail</label>
    										<input id="ContactEmail" name="ContactEmail" class="textInput required email" />
    									</div>
    									<div>
    										<label for="ContactPhone" class="overlabel">Telefon</label>
    										<input id="ContactPhone" name="ContactPhone" class="textInput digits" value="" />
    									</div>
    									<div>
    										<label for="ContactComment" class="overlabel">Mesajınız</label>
    										<textarea id="ContactComment" name="ContactComment" class="textInput required" rows="10" cols="4"></textarea>
    									</div>
    									<div>
    										<button type="submit" class="btn"><span>&nbsp; G&ouml;nder &nbsp;</span></button>
    										<label id="loader" style="display:none;"><img src="images/ajax-loader.gif" alt="Loading..." id="LoadingGraphic" /></label>
    			
    										<!-- The subject line of the email -->
    										<input class="" type="hidden" name="subject" value="Message from website contact form" />
    									</div>
    								</fieldset>
    							</form>
    Formu kontrol eden Js
    // initialize form validation
    // -------------------------------------------------------------------
    jQuery(document).ready(function($) {
    	$("#CommentForm").validate({
    		submitHandler: function(form) {
    			// form is valid, submit it
    			ajaxContact(form);
    			return false;
    		}
    	});
    });
    
    // Ajax send email submit contact form
    // -------------------------------------------------------------------
    function ajaxContact(theForm) {
    	var $ = jQuery;
    
    	$('#loader').fadeIn();
    
    	var formData = $(theForm).serialize(),
    		note = $('#Note');
    
    	$.ajax({
    		type: "POST",
    		url: "gonder.php",	
    		data: formData,
    		success: function(response) {
    			if ( note.height() ) {			
    				note.fadeIn('fast', function() { $(this).hide(); });
    			} else {
    				note.hide();
    			}
    
    			$('#LoadingGraphic').fadeOut('fast', function() {
    				if (response.indexOf("success") != -1) {
    					if (jQuery.browser.msie && parseInt(jQuery.browser.version, 10) <= 8) {
    						$(theForm).css('display','none');
    					} else {
    						$(theForm).animate({'opacity': 0},'fast');
    					}
    				}
    
    				// Show success or error message.
    				result = '';
    				c = '';
    				if (response === 'success') { 
    					result = 'Mesajiniz alinmistir.En kisa zamanda geri donus yapilacaktir.';	// The thank you message shown after sending
    					c = 'success';
    				} else {
    					result = response;
    					c = 'error';
    				}
    
    				note.removeClass('success').removeClass('error').text('');
    				var i = setInterval(function() {
    					if ( !note.is(':visible') ) {
    						note.html(result).addClass(c).slideDown('fast');
    						clearInterval(i);
    					}
    				}, 40);    
    			}); // end loading image fadeOut
    		}
    	});
    
    	return false;
    }
    ve gonder.php
    <?php
    
    // TO EMAIL
    //
    // Enter the email address you want to recieve the messages sent
    // from your website contact form. 
    // ----------------------------------------------------------------
    
    
    $YourEmailAddress = "eposta@xxxx.com";	
    
    
    
    // Do not edit beyond this point if you are not familiar with php
    // ----------------------------------------------------------------
    error_reporting (E_ALL ^ E_NOTICE);
    $post = (!empty($_POST)) ? true : false;
    if($post) {
    	function ValidateEmail($email){
    
    		$regex = "^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$^";
    		$eregi = preg_replace($regex,'', trim($email));
    		
    		return empty($eregi) ? true : false;
    	}
    
    	$name = stripslashes($_POST['ContactName']);
    	$to = $YourEmailAddress; //trim($_POST['to']);
    	$email = trim($_POST['ContactEmail']);
    	$subject = stripslashes($_POST['subject']);
    	$message = stripslashes($_POST['ContactComment']);
    	$phone = stripslashes($_POST['ContactPhone']);
    	$error = '';
    	$Reply=$to;
    	$from=$to;
    	
    	// Check Name Field
    	if(!$name) {
    		$error .= 'Lütfen Adınızı Yazınız.<br />';
    	}
    	
    	// Checks Email Field
    	if(!$email) { 
    		$error .= 'Lütfen E-Mailinizi Yazınız.<br />';
    	}
    	if($email && !ValidateEmail($email)) {
    		$error .= 'Lütfen Geçerli e-mail yazınız.<br />';
    	}
    	if(is_numeric($phone) && strlen($phone) < 8) {
    		$error .= "Lütfen Telefon numarasınızı yazınız.<br />";
    	}
    
    	// Checks Subject Field
    	if(!$subject) {
    		$error .= 'Lütfen mesajınızı yazınız.<br />';
    	}
    	
    	// Checks Message (length)
    	if(!$message || strlen($message) < 3) {
    		$error .= "Mesajınız 5 karakteri geçmiş olması lazım.<br />";
    	}
    	
    	// Let's send the email.
    	if(!$error) {
    		$messages="From: $email <br>";
    		$messages.="Name: $name <br>";
    		$messages.="Email: $email <br>";
    		$messages.="Phone: $phone <br>";
    		$messages.="Message: $message <br>";
    		$emailto=$to;
    		
    		$mail = mail($emailto,$subject,$messages,"from: $from <$Reply>\nReply-To: $Reply \nContent-type: text/html; charset=iso-8859-9\n");	
    	
    		if($mail) {
    			echo 'success';
    		}
    	} else {
    		echo '<div class="error">'.$error.'</div>';
    	}
    
    }
    ?>
    arkadaşlar bu konu hakkında epey konu açılmış ve hepsine tek tek baktım ve uygulamasını yaptım ama sonuç 0.
    elimde internetten bulduğum bi html template var. Bunun herşeyini yaptım ama bir tek formda gonderirken "ÖÇŞİĞÜöçşiğü" türkçe karakterleri gönderdiğimde karşı tarafın mailinde tuhaf tuhaf karakterler çıkıyor. anlamadım gitti. Php dosyasına türkçe desteğide ekledim tık yok. Tıkandım. Yardımcı olursanız çok sevinirim
  • 29-08-2012, 16:05:25
    #2
    Üyeliği durduruldu
    sayfayı UTF-8 BOM olarak kaydedin
  • 29-08-2012, 16:16:47
    #3
    kodlamayı UTF-8 yap olmazsa from dosyasına başına charset=iso-8859-9 ekle kodlamayı türkçe 8859-9 yap

    mail gittigini sonradan okudum mail kodlarında bunu kullan

    $headers = 'MIME-Version: 1.0' . "\r\n";
    $headers .= 'Content-type: text/html; charset=windows-1254"' . "\r\n";
    $headers .= 'To: Web Siteniz <yanitlamayin@websiteniz.com>' . "\r\n";
    $headers .= 'From: '.$isim.' <'.$email.'>' . "\r\n";
  • 29-08-2012, 18:26:56
    #4
    Üyeliği durduruldu
    yaptım yine aynı yine aynı

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 16:28:55 -->-> Daha önceki mesaj 16:22:07 --

    venessabilisim adlı üyeden alıntı: mesajı görüntüle
    kodlamayı UTF-8 yap olmazsa from dosyasına başına charset=iso-8859-9 ekle kodlamayı türkçe 8859-9 yap

    mail gittigini sonradan okudum mail kodlarında bunu kullan

    $headers = 'MIME-Version: 1.0' . "\r\n";
    $headers .= 'Content-type: text/html; charset=windows-1254"' . "\r\n";
    $headers .= 'To: Web Siteniz <yanitlamayin@websiteniz.com>' . "\r\n";
    $headers .= 'From: '.$isim.' <'.$email.'>' . "\r\n";
    ekledim dostum yine aynı yine aynı saçma sapan karakterler çıkıyor.

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 18:26:56 -->-> Daha önceki mesaj 16:28:55 --

    Halledildi

    Nasıl mı?

    İletisim.html ye
    <head>
    	<meta http-equiv="Content-Type" content="text/html; charset=windows-1254" />
    	<meta http-equiv="Content-Language" content="tr" /> 
    </head>
    ekledim
    Sonra
    gonder.php ye
    en üste
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1254" />
    <meta http-equiv="Content-Language" content="tr" />
    ve
    $mail = mail($emailto,$subject,$messages,"from: $from <$Reply>\nReply-To: $Reply \nContent-type: text/html; \nContent-language:TR; charset=windows-1254\n");
    ekledim.
    En Son olarak ise Dreamweaver da Değiştir-Sayfa Özellikleri(ctrl+j)-Başlık/Dilkodlaması kısmını da Türkçe(Windows) yaptım, karakterler bozuldu html de onlarıda düzelttim.
    Denedim ve sonrasında ÖÇŞŞİĞÜöçşiğü karakterleri yazdığım gibi geldi maile
    İlgilenen okuyan mesaj yazan bütün arkadaşlara teşekkür ederim