بسم الله الرحمن الرحيم
انا من جديد تعلمت البرمجة بالكائنات وفكرت اعمل شي خاص فيّ ,فقلت احسن شي اعمل سكربت ادارة محتوى واعمل له قالب فعال (مع العلم اني بالبرمجة العادية(او القديمة) مستواي متقدم وهذي المشاكل لأني بتعلم من النت من دون استاذ),
فعملت صفحة القالب وهي temp.html:
كود PHP:
<head>
<meta http-equiv="Content-Language" content="en-us">
</head>
<table border="0" cellspacing="0" id="table1" width="100%" height="100%">
<tr>
<td colspan="3">
<p align="center">{head}</td>
</tr>
<tr>
<td>
<p align="center">{left}</td>
<td>
<p align="center">{midlle}</td>
<td>
<p align="center">{right}</td>
</tr>
<tr>
<td colspan="3">
<p align="center">{foot}</td>
</tr>
</table>
وصفحة تانية وهي تحوي على الكلاس او الكائنclass.php:
كود PHP:
<?php
class templete{
var $file;
function get_temp(){
$open=@ fopen($this->file,"r");
$read=@ fread($open,filesize($this->file));
$close=@ fclose($open);
return $read;
}
function replace($head,$foot,$left,$right,$where){
$r=@ str_replace("/","",$_SERVER['PHP_SELF']);
$read= file_get_contents($r);
$old= array('{head}','{foot}','{midlle}','{right}','{left}');
$new= array($head,$foot,$read,$right,$left);
$temp=@ str_replace($old,$new,$where);
echo $temp;
}
}
$templete= new templete();
$templete->file="temp.html";
$templete->replace("فوق","تحت","يسار","يمين",$templete->get_temp());
?>
لاحظ المشكلة في قراءة الملف في هذا المقطع :
كود PHP:
function replace($head,$foot,$left,$right,$where){
$r=@ str_replace("/","",$_SERVER['PHP_SELF']);
$read= file_get_contents($r);
$old= array('{head}','{foot}','{midlle}','{right}','{left}');
$new= array($head,$foot,$read,$right,$left);
$temp=@ str_replace($old,$new,$where);
echo $temp;
}
فلو نفذت السكربت بيعرضلي :
كود:
فوقيسارfile,"r"); $read=@ fread($open,filesize($this->file)); $close=@ fclose($open); return $read; } function replace($head,$foot,$left,$right,$where){ $r=@ str_replace("/","",$_SERVER['PHP_SELF']); $read= file_get_contents($r); $old= array('{head}','{foot}','{midlle}','يمين','يسار'); $new= array($head,$foot,$read,$right,$left); $temp=@ str_replace($old,$new,$where); echo $temp; } } $templete= new templete(); $templete->file="temp.html"; $templete->replace("فوق","تحت","يسار","يمين",$templete->get_temp()); ?>يمين
تحت
مع العلم اني اذا غيرت القراءة من الملف وعملت نص عادي متل "i love php" بيظهر من دون مشاكل.
فما الحل برأيكم ؟؟ .. ارجو الرد بسرعة .