PDA

View Full Version : سوال: مشکل با کاراکترهای فارسی ذخیره شده در فایل txt در هاست



abbas3zaar
جمعه 10 مهر 1394, 23:17 عصر
دوستان من مشکل در نمایش مقادیر فارسی در فایل txt دارم. عکس زیر رو ببینید:

http://8pic.ir/images/1o0opuguhk388giy0ujb.jpg


این محتویات فایل index هست:


<?php
include ('counter.php');
include ('jdf.php');
$day_number = jdate('j');
$month_number = jdate('n');
$year_number = jdate('y');
$day_name = jdate('l');
?>
<!DOCTYPE html>
<html lang="fa">
<head>
<meta charset="utf-8">
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>Website</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0" />
<link type="text/css" rel="stylesheet" href="assets/css/visual.css" media="screen" />
<script src="ajaxsbmt.js" type="text/javascript"></script>
</head>
<body>
<!-- Progress bar -->
<div id="progressbar" data-perc="45">
<div class="bar"></div>
<div class="label"><span></span></div>
</div>
<!-- Wrap this content into a container that sets a default width. Progress is outside of this because it's width is 100%. -->
<div id="container">
<!-- Logo text -->
<section id="logo">
<h1>طراحی و توسعه وب</h1>
</section>
<!-- Description text -->
<section id="tagline">
<p>در حال انجام تغییرات هستیم. بزودی باز میگردیم!</p>
</section>

<!-- Subscription form -->
<div id="form-sefaresh" class="main">
<form name="MyForm" action="save-email.php" method="post" onsubmit="xmlhttpPost('save-email.php', 'MyForm', 'MyResult', '<img src=\'pleasewait.gif\'>'); return false;">
<div id="subscribe">
<input type="text" name="yourname" placeholder="نام و نام خانوادگی" id="in1"><br />
<input type="text" name="email" placeholder="آدرس ایمیل" id="in3" required//><br />
<input type="text" name="message" placeholder="پیام شما" id="in4" size="50" ><br />
<input type="hidden" name="date" id="in5" value="<?php echo "$day_name-$day_number-$month_number-$year_number";?>">

</div>
<div class="submit">
<input type="submit" onclick="showresult()" id="sub1" value="به من اطلاع بده" /><br /><br />
<div id="MyResult"></div>
</div>
</form>

</div>

<!-- Copyright message -->
<footer id="footer">Copyright © <?=date('Y')?> - All right reserved <div style="color:#fff;"></div>کلیه حقوق مادی و معنوی برای وب سایت محفوظ می باشد</footer>
</div>
</body>
</html>






این هم کدهای PHP


<?php
// write user data to file
$name = $_POST["yourname"];
$email = $_POST["email"];
$message = $_POST["message"];
$date = $_POST["date"];
$ip = $_SERVER['REMOTE_ADDR'];
$ref = $_SERVER['HTTP_REFERER'];
$entry_line = " Date: " . $date . "\r\n IP: " . $ip . "\r\n Name: " . $name . "\r\n Email: " . $email . "\r\n Message: " . $message . "\r\n==============================\r\n";

$fp = fopen("logs.txt", "a+");
fputs($fp, $entry_line);
fclose($fp);

$response = "اطلاعات شما ثبت شد، به شما اطلاع خواهیم داد." . "<br>";
echo $response;
?>

مشکل از کجاست؟

فایل های php رو در برنامه notepad++ باز کردم . utf8کردم بازم نشد.

kabootar_y
شنبه 11 مهر 1394, 00:17 صبح
کد زیر رو جایگزین کدهای php تون بکنید همین!









<?php
// write user data to file
$name = urldecode($_POST["yourname"]);
$email = urldecode($_POST["email"]);
$message = urldecode($_POST["message"]);
$date = urldecode($_POST["date"]);
$ip = urldecode($_SERVER['REMOTE_ADDR']);
$ref = urldecode($_SERVER['HTTP_REFERER']);
$entry_line = " Date: " . $date . "\r\n IP: " . $ip . "\r\n Name: " . $name . "\r\n Email: " . $email . "\r\n Message: " . $message . "\r\n==============================\r\n";
$fp = fopen("logs.txt", "a+");
fputs($fp, $entry_line);
fclose($fp);
$response = "اطلاعات شما ثبت شد، به شما اطلاع خواهیم داد." . "<br>";
echo $response;
?>

abbas3zaar
شنبه 11 مهر 1394, 01:02 صبح
کد زیر رو جایگزین کدهای php تون بکنید همین!









<?php
// write user data to file
$name = urldecode($_POST["yourname"]);
$email = urldecode($_POST["email"]);
$message = urldecode($_POST["message"]);
$date = urldecode($_POST["date"]);
$ip = urldecode($_SERVER['REMOTE_ADDR']);
$ref = urldecode($_SERVER['HTTP_REFERER']);
$entry_line = " Date: " . $date . "\r\n IP: " . $ip . "\r\n Name: " . $name . "\r\n Email: " . $email . "\r\n Message: " . $message . "\r\n==============================\r\n";
$fp = fopen("logs.txt", "a+");
fputs($fp, $entry_line);
fclose($fp);
$response = "اطلاعات شما ثبت شد، به شما اطلاع خواهیم داد." . "<br>";
echo $response;
?>






کدها فایل save-email.php رو پاک کردم و اینایی که شما دادید رو جایگزین کردم بازم اینجوری قاطی پاتی ( %u0641%u063A%u062A ) ذخیره میشه درفایل.

pbm_soy
یک شنبه 12 مهر 1394, 00:43 صبح
فرمت فایل متنی شما چیست؟ آنرا مشخص کنید
حتی در notepad هم میتوانید با save as زدن آنرا ببینید