أهلاً شباب.. كل عام وانتم بخير، ومن العايدين قبل لا أسافر وانقطع عن النت. 
فعلاً موضوع مهم وأنا شخصياً كنت أظن كما ظن أخوي ضيف، وتفاجأت بالنتيجة!! :con2:
عموماً عندي لكم أحد حلين:
الأول: بتشييك المحتوى (وهذا على قول المصريين "ما يخرش الميه" :1power:، بإذن الله) بس عيبه انه بيفتش جوّا الملف، طبعاً يبطئ شويتين لو صار الملف كبير (وممكن نحط شرط ان يكون الملف أصغر من 1ميجا مثلاً)
كود PHP:
if ($_FILES['fileup']['size'] < 1048576) {
// If a9'3ar min 1 Meg (performance wise only)
if ( preg_match( '/<[?](php|)\s+(.*)\s+[?]>/Usi',
file_get_contents($_FILES['fileup']['tmp_name']) ) ) {
die ('<h1>7asbi Allah 3laik, Yal MIJRIM!!</h1>');
}
}
الثاني: أنك تصلح اسم الملف حسب المحاولات اللي فوق، وطريقتي كالتالي:
كود PHP:
// الامتداد بلحال
$ext = get_ext($_FILES['fileup']['name']);
// الاسم الفعلي بلحال
$name = strip_ext($_FILES['fileup']['name']);
// تبديل النقط بمدات
$name = str_replace ('.', '_', $name);
// تركيب الاسم من جديد
$new_name = "$name.$ext";
function strip_ext($name){
$ext = strrchr($name, '.');
if($ext !== false){
$name = substr($name, 0, -strlen($ext));
}
return $name;
}
function get_ext($name){
return strtolower(substr(strrchr($name, '.'),1));
}
وعلى فكرة :deal: هالطريقة تصلح حتى للامتدادات اللي أكثر من 3 حروف مثل jpeg. و mpeg. وهي غير حساسة لحالة الحرف (يعني تزبط معاها سمول وكبتل، مع اني أفضل انك تسمّلها باستخدام
كود PHP:
$new_name = strtolower($new_name);
هاه؟ما استاهل دعوة!