السلام عليكم ورحمة الله وبركاته ..
لدي سكريبت عبارة عن ملف قاعدة بيانات وملف واحد بي اتش بي .. المشكلة ان السكريبت يظهر الكلمات العربية بحروف غريبة حاولت بشتى الطرق من ترميز قاعدة البيانات الا اضافة كود الترميز الى صفحة البي اتش بي ولكن دون فائدة لا يتغير نهائيا ..
هذه هي قاعدة البيانات
كود PHP:
-- phpMyAdmin SQL Dump
-- version 2.10.2
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Jun 20, 2008 at 02:44 PM
-- Server version: 5.0.45
-- PHP Version: 5.2.3
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
--
-- Database: `wap8`
--
-- --------------------------------------------------------
--
-- Table structure for table `shout`
--
CREATE TABLE `shout` (
`message` text NOT NULL,
`time` int(11) NOT NULL,
`ip` text NOT NULL,
`name` text NOT NULL,
`banned` tinyint(4) NOT NULL default '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
--
-- Dumping data for table `shout`
--
INSERT INTO `shout` VALUES ('ff', 1213922543, '127.0.0.1', 'ff', 0);
INSERT INTO `shout` VALUES ('ثقÙ<br />„ثقÙ<br />„ثق&Ugrav<br />e„', 1213922598, '127.0.0.1', 'يب&Ug<br />rave„Ø«&Ugr<br />ave‚Ù„', 0);
INSERT INTO `shout` VALUES ('ثقÙ<br />„ثقÙ<br />„ثق&Ugrav<br />e„', 1213922750, '127.0.0.1', 'يب&Ug<br />rave„Ø«&Ugr<br />ave‚Ù„', 0);
INSERT INTO `shout` VALUES ('wfewf', 1213923547, '127.0.0.1', 'dfw', 0);
INSERT INTO `shout` VALUES ('nn', 1213923587, '127.0.0.1', 'nnnn', 0);
وهذا هو السكريبت وهو عبارة عن صفحة واحدة اسمها shoutbox.php
كود PHP:
<style type="text/css">
body,textarea,input,h2 {font-size: 8pt; font-family: arial;}
h1 {font-size: 10pt; font-family: arial; color: #FFFFFF; background-color: #4C5D8D;}
</style>
<?PHP
$connection = mysql_connect('localhost','root','4530') or die(mysql_error());
mysql_select_db('wap8', $connection) or die(mysql_error());
function filter($text) {
$replace=array(':)'=>' <img src="smile.gif">',':('=>' <img src="sad.gif">',':D'=>' <img src="biggrin.gif">',':p'=>' <img src="tongue.gif">',';)'=>' <img src="wink.gif">','\''=>'',';'=>'','--'=>'');
foreach($replace as $old=>$new) $text = str_replace($old,$new,$text);
return $text ;
}
if(isset($_POST['submit'])) {
$result = mysql_query("select max(`time`), max(`banned`) from `shout` where `ip` = '".$_SERVER['REMOTE_ADDR']."'");
$result = mysql_fetch_array($result);
$name = filter(wordwrap(htmlentities($_POST['name']),25,'<br />',1));
$message = filter( substr( wordwrap( nl2br( htmlentities($_POST['message'])),32,'<br />',1),0,250));
if (((time() - $result[0]) > 1) && ($result[1]!=1))
mysql_query("insert into shout(`name`,`time`,`message`,`ip`) values('$name','".time()."','$message','".$_SERVER['REMOTE_ADDR']."')");
else echo "<div style=\"background-color:#99CCFF;\"><h2>Slow down!</h2 ></div>";
}
$resultSet = mysql_query("select `name`, `time`, `message` from `shout` order by `time` desc limit 7");
while ($record = mysql_fetch_assoc($resultSet))
echo "<div><h1>".$record['name']." - ".date("H:i",$record['time'])."</h1>\n".$record['message']."</div>" ;
?>
<form action="shout.php" method="post" name="shout">
<input name="name" type="text" value="" size="23" maxlength="20"><br />
<textarea name="message" cols="20" rows="5" maxlength="100"></textarea><br />
<input name="submit" type="submit" value="submit">
</form>
طبعا
طبعا المشكلة تظهر برموز غريبه
Ù�Ø«Ù
�Ø«Ù�Ø
¨Ø«Ù�&O
slash«Ù�Ø&l
aquoÙ�Ø
مهما كتبت عربي ما تظهر الحروف العربية وجربت جميع الاضافات في الهيدر لجميع الأكواد سواء ترميز utf او 1256 ولكن دون جدوى ...... كذلك انشئت قواعد بيانات بترمزات مختلفه وغيرت فيها ولكن لا فائدة بالاضافة لحفظي بالفكرة ملف البي اتش بي بترميز utf ولكن نفس المشكلة ..
امل المساعدة يا اخوان او اعطائي بعض الافكار لهذه المشكلة .. واللي يركب السكريبت يعرف المشكلة ... السكريبت بسيط كله امامكم يعني ما هو السطر المفقود