4images Forum & Community

International => Arabic / قسم الدعم الفني => Topic started by: baghdad4ever on November 30, 2007, 04:19:44 PM

Title: مشكلة في سكربت 4images 1.7.4
Post by: baghdad4ever on November 30, 2007, 04:19:44 PM
السلام عليكم

بعد ترقية سكربت مكتبة الصور للاصدار الاخير

حدثت مشكلة الا وهي

عدم تقبل الاسماء العربية

يعني من واحد اسمه عربي يسجل دخول يرجع للصفحة وكانه لم يسجل الدخول


كيف الحل؟؟



علما ان السيرفر

php5

mysql 5


وجربت ارجعه للاصدار القديم

1.7

الاسماء تنقبل عربي

لكن حدثت مشكلة وهي عدم قدرتنا على رفع الصور

ارجوا الرد
Title: Re: مشكلة في سكربت 4images 1.7.4
Post by: sammas on November 30, 2007, 04:42:54 PM
اولا اهلا باهل العراق
ثانيا انت شيعي ولا سني  :mrgreen:

لا أتغشمر معاك عيني وردة

امممممممممممم
المشكلة واجهتني قبل ايام
ونفس خصائص السيرفر
والحل
تكلم المستضيف يوقف بعض من خصائص
mod security
وتنحل اغلب المشاكل
اما الرفع بسبب
mode save on
حلها تخليه
mode save off وهذا خطر من ناحية الاختراقات
ولايوجد حل للمود سيف الى الآن
وشكرا
Title: Re: مشكلة في سكربت 4images 1.7.4
Post by: sammas on November 30, 2007, 04:51:54 PM
mode save = save mode sorry
Title: Re: مشكلة في سكربت 4images 1.7.4
Post by: baghdad4ever on November 30, 2007, 06:16:40 PM
شكرا اخوي سما

هههههههه

انا مسيحي :lol: :lol:

اتشاقى وياك

مشكلة الرفع فقط في الاصدار القديم

يعني من سويت ترقية للاصدار 1.7.4

ماكو مشكلة برفع الصور

مع العلم

السيف مود شغال

لكن

المشكلة في تسجيل الدخول


في الاصدار القديم

المشكلة في الرفع فقط


ارجوا الحل يالغالي
Title: Re: مشكلة في سكربت 4images 1.7.4
Post by: sammas on November 30, 2007, 06:34:21 PM
كنت متوقع تزعل علي :)
اممممممم
بما انه ماعندك مشاكل بالرفع فالمشكلة الوحيدة هي نفس الي مريت فيها
اذكر للمستضيف ان السيكيورتي \ الحماية تسبب شوية مشاكل مع السكربت
فا يرفع لك
php.ini
وهذا الملف لعمل خصائص السيرفر مفصلة لموقعك أو بمعنى آخر بيكون اي امر يتم اطفائة او تشغيلة بيكون لموقعك فقط دون المواقع الاخرى على السيرفر
فا اذكر له ان الحماية يجب اغلاق بعض خصائصة لأنه يمنع الدخول باللغة العربية او استخدامها

baghdad4ever
اذا تبي تتأكد انه من الحماية
سو بحث باللغة العربية ماراح تطلع نتائج
وان طلعت معناها انا على خطأ ومشكلتك لها حل آخر
Title: Re: مشكلة في سكربت 4images 1.7.4
Post by: waleed on December 26, 2007, 07:53:26 PM
كنت متوقع تزعل علي :)
اممممممم
بما انه ماعندك مشاكل بالرفع فالمشكلة الوحيدة هي نفس الي مريت فيها
اذكر للمستضيف ان السيكيورتي \ الحماية تسبب شوية مشاكل مع السكربت
فا يرفع لك
php.ini
وهذا الملف لعمل خصائص السيرفر مفصلة لموقعك أو بمعنى آخر بيكون اي امر يتم اطفائة او تشغيلة بيكون لموقعك فقط دون المواقع الاخرى على السيرفر
فا اذكر له ان الحماية يجب اغلاق بعض خصائصة لأنه يمنع الدخول باللغة العربية او استخدامها

baghdad4ever
اذا تبي تتأكد انه من الحماية
سو بحث باللغة العربية ماراح تطلع نتائج
وان طلعت معناها انا على خطأ ومشكلتك لها حل آخر

اخوي مشكلة تسجيل الدخول باللغة العربية ليست من الحماية والدليل حتى على اللوكال هوست لا يقبل العربية
Title: Re: مشكلة في سكربت 4images 1.7.4
Post by: baghdad4ever on December 28, 2007, 08:15:34 AM
تم حل المشكلة اخوان

وهذا هو الحل



في ملف

global.php

ابحث عن



Code: [Select]
function clean_array($array) {
  $search = array(
    // Remove any attribute starting with "on" or xmlns
    '#(<[^>]+[\x00-\x20\"\'])(on|xmlns)[^>]*>#iUu',
    // Remove javascript: and vbscript: protocol
    '#([a-z]*)[\x00-\x20]*=[\x00-\x20]*([\`\'\"]*)[\\x00-\x20]*j[\x00-\x20]*a[\x00-\x20]*v[\x00-\x20]*a[\x00-\x20]*s[\x00-\x20]*c[\x00-\x20]*r[\x00-\x20]*i[\x00-\x20]*p[\x00-\x20]*t[\x00-\x20]*:#iUu',
    '#([a-z]*)[\x00-\x20]*=([\'\"]*)[\x00-\x20]*v[\x00-\x20]*b[\x00-\x20]*s[\x00-\x20]*c[\x00-\x20]*r[\x00-\x20]*i[\x00-\x20]*p[\x00-\x20]*t[\x00-\x20]*:#iUu',
    //<span style="width: expression(alert('Ping!'));"></span>
    // Only works in ie...
    '#(<[^>]+)style[\x00-\x20]*=[\x00-\x20]*([\`\'\"]*).*expression[\x00-\x20]*\([^>]*>#iU',
    '#(<[^>]+)style[\x00-\x20]*=[\x00-\x20]*([\`\'\"]*).*behaviour[\x00-\x20]*\([^>]*>#iU',
    '#(<[^>]+)style[\x00-\x20]*=[\x00-\x20]*([\`\'\"]*).*s[\x00-\x20]*c[\x00-\x20]*r[\x00-\x20]*i[\x00-\x20]*p[\x00-\x20]*t[\x00-\x20]*:*[^>]*>#iUu'
  );

  $replace = array(
    "$1>",
    '$1=$2nojavascript...',
    '$1=$2novbscript...',
    "$1>",
    "$1>",
    "$1>"
  );

  // Remove all control (i.e. with ASCII value lower than 0x20 (space),
  // except of 0x0A (line feed) and 0x09 (tabulator)
  $search2 =
      "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x0B\x0C\x0E\x0F\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1A\x1B\x1C\x1D\x1E\x1F";
  $replace2 = //str_repeat("\r", strlen($search2));
      "\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D";

  foreach ($array as $key => $val) {
    if (is_array($val)) {
      $val = clean_array($val);
    } else {
      $val = preg_replace($search, $replace, $val);

      $val = str_replace("\r\n", "\n", $val);
      $val = str_replace("\r",   "\n", $val);
      $val = strtr($val, $search2, $replace2);
      $val = str_replace("\r", '', $val);  // \r === \x0D

      do {
        $oldval = $val;
        $val = preg_replace('#</*(applet|meta|xml|blink|link|style|script|embed|object|iframe|frame|frameset|ilayer|layer|bgsound|title|base)[^>]*>#i', "", $val);
      } while ($oldval != $val);
    }

    $array[$key] = $val;
  }

  return $array;
}


استبدله ب


Code: [Select]
function clean_string($string) {
  $canCheckUTF8Error = defined('PREG_BAD_UTF8_ERROR') && function_exists('preg_last_error');

  // Remove any attribute starting with "on" or xmlns
  $tmp = preg_replace('#(<[^>]+[\x00-\x20\"\'])(on|xmlns)[^>]*>#iUu',"$1>",$string);
  if ($canCheckUTF8Error && (PREG_BAD_UTF8_ERROR == preg_last_error())) {
      $tmp = preg_replace('#(<[^>]+[\x00-\x20\"\'])(on|xmlns)[^>]*>#iU',"$1>",$string);
  }
  $string = $tmp;

  // Remove javascript: and vbscript: protocol
  $tmp = preg_replace('#([a-z]*)[\x00-\x20]*=[\x00-\x20]*([\`\'\"]*)[\x00-\x20]*j[\x00-\x20]*a[\x00-\x20]*v[\x00-\x20]*a[\x00-\x20]*s[\x00-\x20]*c[\x00-\x20]*r[\x00-\x20]*i[\x00-\x20]*p[\x00-\x20]*t[\x00-\x20]*:#iUu','$1=$2nojavascript...',$string);
  if ($canCheckUTF8Error && (PREG_BAD_UTF8_ERROR == preg_last_error())) {
      $tmp = preg_replace('#([a-z]*)[\x00-\x20]*=[\x00-\x20]*([\`\'\"]*)[\x00-\x20]*j[\x00-\x20]*a[\x00-\x20]*v[\x00-\x20]*a[\x00-\x20]*s[\x00-\x20]*c[\x00-\x20]*r[\x00-\x20]*i[\x00-\x20]*p[\x00-\x20]*t[\x00-\x20]*:#iU','$1=$2nojavascript...',$string);
  }
  $string = $tmp;
  $tmp = preg_replace('#([a-z]*)[\x00-\x20]*=[\x00-\x20]*([\`\'\"]*)[\x00-\x20]*v[\x00-\x20]*b[\x00-\x20]*s[\x00-\x20]*c[\x00-\x20]*r[\x00-\x20]*i[\x00-\x20]*p[\x00-\x20]*t[\x00-\x20]*:#iUu','$1=$2novbscript...',$string);
  if ($canCheckUTF8Error && (PREG_BAD_UTF8_ERROR == preg_last_error())) {
      $tmp = preg_replace('#([a-z]*)[\x00-\x20]*=[\x00-\x20]*([\`\'\"]*)[\x00-\x20]*v[\x00-\x20]*b[\x00-\x20]*s[\x00-\x20]*c[\x00-\x20]*r[\x00-\x20]*i[\x00-\x20]*p[\x00-\x20]*t[\x00-\x20]*:#iU','$1=$2novbscript...',$string);
  }
  $string = $tmp;

  // <span style="width: expression(alert('Ping!'));"></span>
  // only works in ie...
  $string = preg_replace('#(<[^>]+)style[\x00-\x20]*=[\x00-\x20]*([\`\'\"]*).*expression[\x00-\x20]*\([^>]*>#iU',"$1>",$string);
  $string = preg_replace('#(<[^>]+)style[\x00-\x20]*=[\x00-\x20]*([\`\'\"]*).*behaviour[\x00-\x20]*\([^>]*>#iU',"$1>",$string);
  $tmp = preg_replace('#(<[^>]+)style[\x00-\x20]*=[\x00-\x20]*([\`\'\"]*).*s[\x00-\x20]*c[\x00-\x20]*r[\x00-\x20]*i[\x00-\x20]*p[\x00-\x20]*t[\x00-\x20]*:*[^>]*>#iUu',"$1>",$string);
  if ($canCheckUTF8Error && (PREG_BAD_UTF8_ERROR == preg_last_error())) {
      $tmp = preg_replace('#(<[^>]+)style[\x00-\x20]*=[\x00-\x20]*([\`\'\"]*).*s[\x00-\x20]*c[\x00-\x20]*r[\x00-\x20]*i[\x00-\x20]*p[\x00-\x20]*t[\x00-\x20]*:*[^>]*>#iU',"$1>",$string);
  }
  $string = $tmp;

  // Remove namespaced elements (we do not need them...)
  $string = preg_replace('#</*\w+:\w[^>]*>#i',"",$string);

  // Remove all control (i.e. with ASCII value lower than 0x20 (space),
  // except of 0x0A (line feed) and 0x09 (tabulator)
  $search =
    "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x0B\x0C\x0E\x0F\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1A\x1B\x1C\x1D\x1E\x1F";
  $replace = //str_repeat("\r", strlen($search2));
    "\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D\x0D";

  $string = str_replace("\r\n", "\n", $string);
  $string = str_replace("\r",   "\n", $string);
  $string = strtr($string, $search, $replace);
  $string = str_replace("\r", '', $string);  // \r === \x0D

  // Remove really unwanted tags
  do {
    $oldstring = $string;
    $string = preg_replace('#</*(applet|meta|xml|blink|link|style|script|embed|object|iframe|frame|frameset|ilayer|layer|bgsound|title|base)[^>]*>#i',"",$string);
  } while ($oldstring != $string);

  return $string;
}

function clean_array($array) {
  foreach ($array as $key => $val) {
    $key = clean_string($key);

    if (is_array($val)) {
      $val = clean_array($val);
    } else {
      $val = clean_string($val);
    }

    $array[$key] = $val;
  }

  return $array;
}



وحياكم الله