Beef Ñ€ã‘æ’ã‘âã‘âãâºãâ¸ãâ¹ Ñ…ãâ¸ãâ¿ Ñ…ãâ¾ãâ¿ Ñâãâ¼ãâ¾ã‘‚ã‘€ãâµã‘‚ã‘å’ Ãâ¾ãâ½ãâ»ãâ°ãâ¹ãâ½

When someone enters foreign characters (like Cyrillic text, and Japanese/Chinese probably gives the same problem) into the mail form, the email that arrives is all gibberish.

For example this should read "test message from *name*" in Russian.

ТеÑтовое Ñообщение от Корин

I tried changing the header content-type thing from plain text to HTML but that didn't fix it.

The script I'm using is one I found online for free (eternal thanks to its author ;) some of the lines are in Dutch)

Does anyone know how to let the form accept foreign characters? Thanks a lot in advance !!

<? $your_email_address="theemail@whereitissentto.com";   if(empty($_GET) && empty($_POST)) { die('Ongeldige actie'); }  // Emular register_globals on if (!ini_get('register_globals')) { $superglobales = array($_SERVER, $_ENV, $_FILES, $_COOKIE, $_POST, $_GET); if (isset($_SESSION)) { 	array_unshift($superglobales, $_SESSION); } foreach ($superglobales as $superglobal) { 	extract($superglobal, EXTR_SKIP); } }  // to prevent header injection if (eregi("\r",$_POST['your_email_address']) || eregi("\n",$_POST['your_email_address'])){      exit; }  // kick anyone whoever tried to inject a header in the form foreach( $_POST as $value ){ if( strpos($value,'Content-Type:') !== FALSE ){ 	exit; } }   $fields = array_keys($_POST);  function headfunction($url) { header ("Location: $url"); }  // protect the variable $reserved_vars if(isset($reserved_vars)) { unset($reserved_vars); } $reserved_vars = array("css_file", "background_color", "background_image", "text_color", "link_color", "visited_link_color", "active_link_color", "font_name", "font_size", "highlight_color", "required_fields", "after_url", "check_email_address", "subject", "your_email_address", "env_report", "owner_name", "autoresponse", "response_subject", "response_mail", "dodosmail_header_file", "dodosmail_footer_file");  function include_dodosmail_header($dodosmail_header_file) { global $reserved_vars; foreach($reserved_vars as $reserved_var) { 	global $$reserved_var; }  if(is_file($dodosmail_header_file)) { 	include_once($dodosmail_header_file); 	return; } else { 	echo "<html>\n"; 	echo "<head>\n"; 	echo "<title>\n"; 	echo "DodosMail\n"; 	echo "</title>\n"; 	if($css_file != "") 		echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"$css_file\">\n"; 	echo "</head>\n"; 	echo "<body bgcolor=\"$background_color\" background=\"$background_image\" text=\"$text_color\" link=\"$link_color\" vlink=\"$visited_link_color\" alink=\"$active_link_color\">\n"; 	echo "<font face=\"$font_name\" size=\"$font_size\">\n"; } }  function include_dodosmail_footer($dodosmail_footer_file) { global $reserved_vars; foreach($reserved_vars as $reserved_var) { 	global $$reserved_var; } if(is_file($dodosmail_footer_file)) { 	include_once($dodosmail_footer_file); 	return; } else { 	echo "</font>\n</body>\n</html>"; } }  function dodosmail_error_handle($msg) { global $highlight_color; if(isset($highlight_color)) { 	$extra_begin = "<font color=\"".$highlight_color."\">"; 	$extra_end = "</font>"; } else { 	$extra_begin = "<span class=\"DodosMailErrorHighLight\">"; 	$extra_end = "</span>"; }  return $extra_begin.$msg.$extra_end; }  // checking required fields // in case they used comma and space, replace if(strstr($required_fields, ", ")) { $required_fields = str_replace(", ", ",", $required_fields); } else { $required_fields = $required_fields; } $required_fields = explode(",", $required_fields);  for($i = 0; $i < count($required_fields); $i++) { $required_var_name = $required_fields[$i]; if(empty($$required_var_name)) { 	include_dodosmail_header($dodosmail_header_file); 	echo "<p class=\"DodosMailError\">Fout! - het verplichte veld ".dodosmail_error_handle($required_var_name)." is niet ingevuld.\n"; 	echo "<br /><br /><a href=\"javascript:history.back(1)\">Terug</a>\n"; 	echo "</p>\n"; 	include_dodosmail_footer($dodosmail_footer_file); 	exit; } } if($check_email_address == "yes" && !empty($email)) { if(!check_email($email)) { 	include_dodosmail_header($dodosmail_header_file); 	echo "<p class=\"DodosMailError\">Fout - het adres ".dodosmail_error_handle($email)." is niet geldig.\n"; 	echo "<br /><br /><a href=\"javascript:history.back(1)\">Terug</a>\n"; 	echo "</p>\n"; 	include_dodosmail_footer($dodosmail_footer_file); 	exit; } }   for($i = 0; $i < count($fields); $i++) { $actual_var = $fields[$i]; if(in_array($actual_var, $reserved_vars)) { 	$inside_mail = $inside_mail; } else { 	if(is_array($$actual_var)) { 		$inside_mail.= "$actual_var: "; 		foreach($$actual_var as $actual_val) { 			$inside_mail.= "$actual_val "; 		} 		$inside_mail.= "\n"; 	} else { 		$actual_val = stripslashes($$actual_var); 		$inside_mail.= "$actual_var: $actual_val\n"; 	} } }  // getting other information from the form $cname = gethostbyaddr($_SERVER[REMOTE_ADDR]); $inside_mail.= " ----------------------------------------------------------------------- SENDER INFO: IP: $_SERVER[REMOTE_ADDR] Computer Name: $cname Browser Type: $_SERVER[HTTP_USER_AGENT] Page Referer: $_SERVER[HTTP_REFERER] ----------------------------------------------------------------------- ";     $headers .= "MIME-Version: 1.0\r\n"; $headers .= "X-Priority: 3\r\n"; $headers .= "X-MSMail-Priority: Normal\r\n"; $headers .= "X-Mailer: DodosMail 2.0 http://regretless.com/scripts/\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; //$headers .= "Date: ".date("R")."\r\n"; $headers .= "From: $name <$email>\r\n";    $success = mail($your_email_address, $subject, $inside_mail, $headers); if($success) { if($autoresponse == "yes") { 	$response_subject = stripslashes($response_subject); 	$response_mail = stripslashes($response_mail); 	mail($email, $response_subject, $response_mail, "From: $owner_name <$your_email_address>"); } if($after_url == "") { 	// out put send info 	include_dodosmail_header($dodosmail_header_file);   	echo "<p>\n";  	echo "Het formulier is verzonden!</p><ul>"; 	for($i = 0; $i < count($fields); $i++) { 		$actual_var = $fields[$i]; 		if(in_array($actual_var, $reserved_vars)) 			echo ""; 		else { 			if(is_array($$actual_var)) { 				echo "<li>$actual_var: "; 				foreach($$actual_var as $actual_val) { 					echo "$actual_val "; 				} 				echo "</li>\n"; 			} else { 				$actual_val = stripslashes($$actual_var); 				echo "<li>$actual_var: $actual_val</li>\n"; 			} 		} 	} 	echo "</ul>\n<p></p>"; 	include_dodosmail_footer($dodosmail_footer_file); 	exit; } else { headfunction($after_url); } } else { include_dodosmail_header($dodosmail_header_file); echo "<p class=\"DodosMailError\">Fout - Het formulier is tijdelijk niet bruikbaar, gebruik ".dodosmail_error_handle($your_email_address)." om contact op te nemen.\n"; echo "<br /><br /><a href=\"javascript:history.back(1)\">Terug</a>\n"; echo "</p>\n"; include_dodosmail_footer($dodosmail_footer_file); exit; }    function check_email($email) { if( (preg_match('/(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/', $email)) || 	(preg_match('/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/',$email)) ) { 	return true; } return false; }    ?>

hawkinshalas1936.blogspot.com

Source: https://forums.phpfreaks.com/topic/190219-mail-form-doesnt-send-russiancyrillic-characters-correctly/

0 Response to "Beef Ñ€ã‘æ’ã‘âã‘âãâºãâ¸ãâ¹ Ñ…ãâ¸ãâ¿ Ñ…ãâ¾ãâ¿ Ñâãâ¼ãâ¾ã‘‚ã‘€ãâµã‘‚ã‘å’ Ãâ¾ãâ½ãâ»ãâ°ãâ¹ãâ½"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel