نامه ارسال شده توسط فرم فارسى!

h_a_s_co

Member
دوستان سلام.

كسى ميدونه چطوره ميشه فرم فارسى رو كه به ايميل فرستاده شده است را همونطور فارسى ديد؟ :?:
مثلا در ياهو همه چيز اجق وجق مياد و بايد هر بار اون رو به يونى كد تبديلش كنى و اگر هم اين كار رو بكنى فونت آن در حالت Arial و يا Times در مياد نه Tahoma ٫ كه براى ارسالهاى‌زياد اين كار خسته كننده خواهد بود. :?

راهى هست كه بشه اون رو به يك صفحه تبديل كرد و بعد فرستاد و يا راههاى ديگه؟

ممنون ميشم كه كمكم كنيد.
 

platina

Member
ممكنه كه از encoding باشه:
موقعي كه داري ميل رو مي خوني (اجق وجق) راست كليك كرده و از encoding گزینه auto-select رو انتخاب كن.
اگه بازم مشكل حل نشد اينبار از همون جا utf-8 رو انتخاب كن.
اگه بازم نشد arabic(windows) رو انتخاب كن.
و اگه بازم حل نشد معلوم مي شه كه از encoding نيست.و احتمال اين 1 در صد است.
 

saman_sweden

Active Member
h_a_s_co گفت:
دوستان سلام.

كسى ميدونه چطوره ميشه فرم فارسى رو كه به ايميل فرستاده شده است را همونطور فارسى ديد؟ :?:
مثلا در ياهو همه چيز اجق وجق مياد و بايد هر بار اون رو به يونى كد تبديلش كنى و اگر هم اين كار رو بكنى فونت آن در حالت Arial و يا Times در مياد نه Tahoma ٫ كه براى ارسالهاى‌زياد اين كار خسته كننده خواهد بود. :?

راهى هست كه بشه اون رو به يك صفحه تبديل كرد و بعد فرستاد و يا راههاى ديگه؟

ممنون ميشم كه كمكم كنيد.
برادر عزيز سلام
اگر اون صفحه ارسال ايميل بصورت html است بايد كد زير نوشته شود

کد:
<head>
....
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>

اگر اون صفحه ارسال ايميل بصورت php است بايد كد زير نوشته شود

کد:
<?php
echo"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">"
 ."";
?>
درضمن برنامه تان را هم بصورت unicode سيو كنيد
حالا اون مشكل بالا را نخواهيد داشت
 

saman_sweden

Active Member
اينم يه مثال ساده

کد:
<?

$subject_array = array();
$recipient_array = array();
///////////////////////////////////

$this_script = "ONLYTEST.php"; // The name of THIS file, if you change it.

$subject_array[] = "Subject Choice 1";
$subject_array[] = "Subject Choice 2";
$subject_array[] = "Subject Choice 3";
$subject_array[] = "Subject Choice 4";
$subject_array[] = "Subject Choice 5";

$recipient_array["Your Email"] = "[email protected]";
$recipient_array["Creator of this Script"] = "[email protected]";



////////////////////////////////////////////////////////////////////////////////////
// Saman_sweden
////////////////////////////////////////////////////////////////////////////////////
if ($_POST["send"] == "true") {
	echo"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">" ;
    $to = $_POST["to"];
    $name = $_POST["name"];
    $email = $_POST["email"];
    $the_subject = $_POST["subject"];
    $message = $_POST["message"];
    if (($name == "") OR ($email == "") OR ($message == "")) {
	print ("<div id=\"sectionContent\">");
	print ("<font color=\"red\">One of the fields was left blank. Please put something in all fields.</font><br><br>");
	print ("</div><br>");
	email_form();
    } elseif (ereg("([[:alnum:]\.\-]+)(\@[[:alnum:]\.\-]+\.+)", $email)) {
	$recipient = $to;
	$subject = $the_subject;
	$additional_headers = ("From: $email\n");
	$body = ("Name: $name\nEmail: $email\n\nMessage:\n\n" . $message);
	if (mail($recipient, $subject, $body, $additional_headers)) {
	    print ("<div id=\"sectionContent\">");
	    print ("The Mail was sent successfully to $recipient.<br><br>");
	    print ("</div><br>");
	} else {
	    print ("<div id=\"sectionContent\">");
	    print ("<font color=\"red\">Uh-Oh! Something went wrong with the script! Please try again.</font><br><br>");
	    print ("</div><br>");
	    $send = "false";
	    email_form();
	}
    } else {
	print ("<div id=\"sectionContent\">");
	print ("<font color=\"red\">That email address does not appear to be valid. Please try again.</font><br><br>");
	print ("</div><br>");
	$send = "false";
	email_form();
    } 
} else {
    print ("<div id=\"sectionContent\">");
    print ("Select who you want to mail from the box below and fill out the form.<br><br>");
    print ("</div><br>");
    email_form();
}

function email_form()
{
    global $subject_array, $recipient_array, $this_script, $PHP_SELF;
    
    print ("<div id=\"sectionContent\">");
    print ("<form METHOD=POST action=\"$PHP_SELF\">\n");
    print ("<input type=\"hidden\" name=\"send\" value=\"true\">\n");
    print ("<select name=\"to\">\n");
    foreach ($recipient_array as $key => $value) {
	print ("<option value=\"" . $value . "\">" . $key . "</option>\n");
    }
    print ("</select><br><br>\n");
    print ("Name:<br><input type=\"text\" name=\"name\"><br><br>\n");
    print ("Your Email Address:<br>\n");
    print ("<input type=\"text\" name=\"email\" size=\"40\"><br><br>\n");
    print ("<select name=\"subject\">\n");
    foreach ($subject_array as $value2) {
	print ("<option value=\"" . $value2 . "\">" . $value2 . "</option>\n");
    }
    print ("</select><br><br>\n");
    print ("Your Message:<br>\n");
    print ("<textarea cols=\"50\" rows=\"5\" name=\"message\"></textarea><br><br>\n");
    print ("<input type=\"submit\" value=\"Submit\">  \n");
    print ("<input type=\"reset\" value=\"Reset Fields\">\n");
    print ("</form>\n");
    print ("</div>");
}
?>
 

h_a_s_co

Member
سامان جان ممنون.
ولى انگار من كمى گيج شدم. راستشو بخواى من هيچ چيز درمورد PHP نمى دونم ولى‌ فرمم توسط PHP فرستاده ميشه. در ضمن من اين فرم رو از سايت webilix گرفتم. ميشه دقيق بگى كجاش بايد بزارم. اين php اونه:
کد:
<?
$email_address = "my email [email][email protected][/email]";
$email_name = "Admin";
$next_page = "contact.thanks.html";

$body = "";
$body .= "Name: " . $name . "\n";
$body .= "Company: " . $company . "\n";
$body .= "Location: " . $location . "\n";
$body .= "Phone: " . $phone . "\n";
$body .= "eMail: " . $email . "\n";
$body .= "website: " . $website . "\n";
$body .= "Message:\n  " . ereg_replace("\n", "\n  ", $message) . "\n";

$headers = "";
$headers .= "From: " . $email_name . " <" . $email_address . ">\n";
$headers .= "X-Sender: <" . $email_address . ">\n"; 
$headers .= "X-Mailer: PHP\n";
$headers .= "X-Priority: 1\n";
$headers .= "Return-Path: <" . $email_address . ">\n";
$headers .= "Content-Type: text/html; charset=UTF-8\n";

@mail($email_address, "New Contact From Site", "<pre>" . $body . "</pre>", $headers);

header("Location: " . $next_page);
?>

خداوند بركتت بده
 

h_a_s_co

Member
سامان جان چى‌ شد؟
برادر جان هنوز منتظر جواب شما هستم. :wink:
ميدونم برات درد سر شد ولى‌ من واقعا احتياجش دارم.

بازم هم ممنون
 

saman_sweden

Active Member
h_a_s_co گفت:
سامان جان چى‌ شد؟
برادر جان هنوز منتظر جواب شما هستم. :wink:
ميدونم برات درد سر شد ولى‌ من واقعا احتياجش دارم.

بازم هم ممنون
سلام عزيزم
ببخشيد من دير به انجمن ميام ووقتي هم تايپكي رو نباشه آدم فراموش مي كنه دنبالش بگرده
در هر حال براي سادگي كار اين دوتا كد را داشته باشيد خوب كار مي كنه امتحانش كردم
اون كد هاي بالا يه مقدار مشكله پس اونا را فراموش كنيد
اولي html است كه ميدونيد ساده است

کد:
<html>
<head>
<title>Anonymous E-mail</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<script language="JavaScript">
<!--
function MM_reloadPage(init) {  
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
// -->
</script>
</head>

<body bgcolor="#FFFFFF" text="#000000">

<div id="Layer1" style="position:absolute; width:557px; height:384px; z-index:1; left: 244px; top: 144px">
<table width="100%" border="1" height="377" bgcolor="#CCCCCC" bordercolor="#FFFFFF">
<tr>
<td width="24%">To:</td>
<td width="76%">
<form name="form" method="post" action="mail.php">
<input type="text" name="recipient" size="35">

</td>
</tr>
<tr>
<td width="24%">From:</td>
<td width="76%">

<input type="text" name="sender" size="35">

</td>
</tr>
<tr>
<td width="24%">Subject:</td>
<td width="76%">

<input type="text" name="subject" size="35">

</td>
</tr>
<tr>

</tr>
<tr>
<td width="24%">Message:</td>
<td width="76%">

<textarea name="message" cols="44" rows="11" wrap="VIRTUAL"></textarea>

</td>
</tr>
<tr>
<td width="24%">Send </td>
<td width="76%">
<input type="submit" name="Submit" value="Send">
<input type="reset" name="Clear" Value="Clear">
</form>
</td>
</tr>
</table>

</div>

</body>
</html>
كه راي نوشتن فارسي او كاراكتر را به اونيكد تبديل مي كنيد منظورم اين كد
<
کد:
meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

دومي هم كاري نداشته باشيد فقط با نام mail.php سيوش كنيدو همراه اين فايلتان باهرنامي است مثلا name.html را توي يه فولدر قرار مي دهيد
اما اون كد mail.php

کد:
<?PHP

$today=date("M-d-Y");

               if {
               $base="http://your site.com/mail";
               
       $message_n="<html>
                  Message from:$sender        Send date:$today
                   <font color=$color size=$size>$message</font >
           <html>";

   }
   
   else {


   $message_n="<html><head>
           </head>
           <body bgcolor=$bgcolor>
           <font size=+1 color=yellow>Message from:$sender <hr>$today<br></font>
           <center>
           <u><font size=+2 color=$color>Subject:</u>$subject
            <center>
            </font>
           </u><font size=+2 color=$color>Message:</font><font color=$color size=$size></u>$message
           </font>
           </body><html>";





       }




$headers .= "MIME-Version: 1.0  \n" ;
$headers .= "From:$sender  \n";
$headers .= "X-Sender:Admin<[email protected]>  \n";
$headers .= "X-Mailer:webFormMailer v1.0001  \n";
$headers .= "X-Priority:$Priority  \n";
$headers .= "Return-Path: <@softf.eurosoft.bg> \n";
$headers .= "Content-Type:text/html;charset=iso-8859-1  \n";

 $mail_fn=mail($recipient,$subject,$message_n,$headers);




     if($mail_fn==0)
     {
      echo"Oops....";
      }

      else
      echo"Done";
      echo"<br><a href=javascript:history.go(-1)>Back </a>";


?>
 

جدیدترین ارسال ها

بالا