صفحه 5 از 9 نخستنخست 123456789 آخرینآخرین
نمایش نتایج: از شماره 41 تا 50 , از مجموع 86

موضوع: آموزش ساخت سيستم كاربري - ورود/عضويت

Hybrid View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1
    عضو انجمن
    تاریخ عضویت
    Aug 2009
    نوشته ها
    257
    تشکر تشکر کرده 
    174
    تشکر تشکر شده 
    142
    تشکر شده در
    125 پست

    پیش فرض پاسخ : آموزش ساخت سيستم كاربري - ورود/عضويت

    سلام میشه یه راهنمایی در مورد فارسی کردن تیبلها بکنید؟
    کد PHP:
    mysql_query("SET SESSION collation_connection = 'utf8_persian_ci'"); 
    یا

    کد PHP:
    mysql_query("SET CHARACTER SET utf8;",$connection1); 
    یا

    کد PHP:
    mysql_query("SET CHARACTER SET utf8;"); 
    یا

    کد PHP:
    ENGINE=MyISAM DEFAULT CHARSET=utf8 

    من کدوم یک از اینا رو استفاده کنم؟ تا وقتی تیبل میسازم فارسی بشه؟



    کد PHP:
    if (mysql_query("create table $pagestable(
    id            int(9) unsigned not null auto_increment,
    userid            int(13) default '0' not null,
    block            text not null,

    primary key(id),
    key userid(userid)
    );ENGINE=MyISAM DEFAULT CHARSET=utf8"
    )) {
        echo 
    "table $pagestable created successfully<br>"; }
      else { echo 
    "<b>table $pagestable was not created ",mysql_error(),"</b><br>"; } 

    هر کردوم رو بعد mysql_query گذاشتم خطا میده
    Warning: require_once(vimax.php) [function.require-once]: failed to open stream: No such file or directory in /home/webhostingtalk/public_html/forum.php on line 2475

  2. #2
    عضو دائم Rezash آواتار ها
    تاریخ عضویت
    Feb 2010
    محل سکونت
    مشهد
    نوشته ها
    1,923
    تشکر تشکر کرده 
    889
    تشکر تشکر شده 
    2,385
    تشکر شده در
    1,535 پست

    پیش فرض پاسخ : آموزش ساخت سيستم كاربري - ورود/عضويت

    من خودم به اين صورت عمل مي كنم و مشكلي ندارم :
    موقع ساخت جدول :
    کد PHP:
    CREATE TABLE `testing`.`test` (
    `
    test1INTNOT NULL ,
    `
    test2INTNOT NULL
    ENGINE InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci 
    هنگام اتصال :
    کد PHP:
    mysql_query("SET CHARACTER SET utf8;");
    mysql_query("SET SESSION collation_connection = 'utf8_general_ci'"); 
    بک آپ بگیرید قبل از آنکه پشیمان شوید!
    تشخیص سیستم مدیریت محتوای سایت - سایت شخصی

  3. تعداد تشکر ها ازRezash به دلیل پست مفید


  4. #3
    عضو انجمن
    تاریخ عضویت
    Aug 2009
    نوشته ها
    257
    تشکر تشکر کرده 
    174
    تشکر تشکر شده 
    142
    تشکر شده در
    125 پست

    پیش فرض پاسخ : آموزش ساخت سيستم كاربري - ورود/عضويت

    کد PHP:
    ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_persian_ci
    اینو گذاشتم درست شد دی:
    ممنون
    Warning: require_once(vimax.php) [function.require-once]: failed to open stream: No such file or directory in /home/webhostingtalk/public_html/forum.php on line 2475

  5. #4
    عضو دائم Rezash آواتار ها
    تاریخ عضویت
    Feb 2010
    محل سکونت
    مشهد
    نوشته ها
    1,923
    تشکر تشکر کرده 
    889
    تشکر تشکر شده 
    2,385
    تشکر شده در
    1,535 پست

    پیش فرض پاسخ : آموزش ساخت سيستم كاربري - ورود/عضويت

    سعي مي كنم تا فردا شب بذارم
    md5 يك الگوريتم برگشت ناپذير هست كه يك رشته ورودي رو ميگيره و مقدار 32 كاراكتري و منحصر به فردي رو به ما ميده.
    ما به جاي ذخيره كردن پسورد به صورت خام ، اون رو به صورت md5 شده و حتي استفاده از الگوريتم هاي ديگه مثل sha1 استفاده مي كنيم و اين مقدار رو ذخيره مي كنيم.
    اينجوري حتي اگه ديتابيس دست كسي بيوفته نميتونه به سادگي پسورد يوزر ها رو بدست بياره.
    اما مورد مهمتر sql_injection كه بايد در اينجا رعايت بشه كه قبلا چكيده اي ازش صحبت كرديم : www.webhostingtalk.ir/f148/16193/
    سپاس
    بک آپ بگیرید قبل از آنکه پشیمان شوید!
    تشخیص سیستم مدیریت محتوای سایت - سایت شخصی

  6. تعداد تشکر ها از Rezash به دلیل پست مفید


  7. #5
    عضو انجمن aghaee آواتار ها
    تاریخ عضویت
    Dec 2009
    محل سکونت
    نت
    نوشته ها
    492
    تشکر تشکر کرده 
    497
    تشکر تشکر شده 
    319
    تشکر شده در
    214 پست

    پیش فرض پاسخ : آموزش ساخت سيستم كاربري - ورود/عضويت

    نقل قول نوشته اصلی توسط Rezash نمایش پست ها
    سعي مي كنم تا فردا شب بذارم
    md5 يك الگوريتم برگشت ناپذير هست كه يك رشته ورودي رو ميگيره و مقدار 32 كاراكتري و منحصر به فردي رو به ما ميده.
    ما به جاي ذخيره كردن پسورد به صورت خام ، اون رو به صورت md5 شده و حتي استفاده از الگوريتم هاي ديگه مثل sha1 استفاده مي كنيم و اين مقدار رو ذخيره مي كنيم.
    اينجوري حتي اگه ديتابيس دست كسي بيوفته نميتونه به سادگي پسورد يوزر ها رو بدست بياره.
    اما مورد مهمتر sql_injection كه بايد در اينجا رعايت بشه كه قبلا چكيده اي ازش صحبت كرديم : www.webhostingtalk.ir/f148/16193/
    سپاس
    با تشکر فروان
    ولی آموزش sql_injection کامل نبود و در حد توضیح گفته شده بود

    منتظر آموزش امن کردن این فرم هستیم!
    + اینکه logut این فرم درست کار نمی کنه! اگه میشه یه تستی بکنید

    با تشکر

  8. #6
    عضو دائم Rezash آواتار ها
    تاریخ عضویت
    Feb 2010
    محل سکونت
    مشهد
    نوشته ها
    1,923
    تشکر تشکر کرده 
    889
    تشکر تشکر شده 
    2,385
    تشکر شده در
    1,535 پست

    پیش فرض پاسخ : آموزش ساخت سيستم كاربري - ورود/عضويت

    با توجه به قولي كه به دوستان داده بودم بخش جديد برنامه رو دارم آماده و تكميل مي كنم ،‌فعلا فايلي شامل تغييرات زير رو اتچ مي كنم كه توضيحاتش رو فردا مينويسم.
    - فيـلتر گذاري روي كليه ورودي هاي كاربر جهت جلوگيري از حملات SQL INJECTION و ...
    - اعتبار سنجي سشن ها باتوجه به آي پي و مشخصات مرورگر كاربر
    - ارسال ايميل به مدير در هنگام عضوي جديد
    مباحثي كه در آينده دنبال خواهيم كرد : (البته همه مباحث مربوطه به سيستم لوگين /عضويت نيست اما در كنار هم بودن اين عناصر ميتونه جذابيت خاصي به برنامه بده )
    - جلوگيري از ارسال مكرر فرم توسط ربات ها با كد امنيتي
    - ارسال sms يا yahoo pm در هنگام عضويت به كاربر
    - ارسال كد فعال سازي عضويت به ايميل يا sms يا yahoo مسنجر كاربر
    - شناسايي خود كار كشور كاربر و تغيير خودكار زبان براي كاربر
    - قابليت شارژ آنلاين اعتبار كاربر از طريق درگاه زرين پال
    - قابليت ويرايش پروفايل
    - اختصاص يك دفترچه يادداشت شخصي به هر كاربر
    - استفاده از قالب هاي html بدون دخالت php
    - استفاده آموزشي از ajax
    - و مباحثي كه طرفدار داشته باشند.
    فایل های پیوست شده فایل های پیوست شده
    بک آپ بگیرید قبل از آنکه پشیمان شوید!
    تشخیص سیستم مدیریت محتوای سایت - سایت شخصی

  9. تعداد تشکر ها ازRezash به دلیل پست مفید


  10. #7
    عضو انجمن aghaee آواتار ها
    تاریخ عضویت
    Dec 2009
    محل سکونت
    نت
    نوشته ها
    492
    تشکر تشکر کرده 
    497
    تشکر تشکر شده 
    319
    تشکر شده در
    214 پست

    پیش فرض پاسخ : آموزش ساخت سيستم كاربري - ورود/عضويت

    نقل قول نوشته اصلی توسط Rezash نمایش پست ها
    با توجه به قولي كه به دوستان داده بودم بخش جديد برنامه رو دارم آماده و تكميل مي كنم ،‌فعلا فايلي شامل تغييرات زير رو اتچ مي كنم كه توضيحاتش رو فردا مينويسم.
    - فيـلتر گذاري روي كليه ورودي هاي كاربر جهت جلوگيري از حملات SQL INJECTION و ...
    - اعتبار سنجي سشن ها باتوجه به آي پي و مشخصات مرورگر كاربر
    - ارسال ايميل به مدير در هنگام عضوي جديد
    مباحثي كه در آينده دنبال خواهيم كرد : (البته همه مباحث مربوطه به سيستم لوگين /عضويت نيست اما در كنار هم بودن اين عناصر ميتونه جذابيت خاصي به برنامه بده )
    - جلوگيري از ارسال مكرر فرم توسط ربات ها با كد امنيتي
    - ارسال sms يا yahoo pm در هنگام عضويت به كاربر
    - ارسال كد فعال سازي عضويت به ايميل يا sms يا yahoo مسنجر كاربر
    - شناسايي خود كار كشور كاربر و تغيير خودكار زبان براي كاربر
    - قابليت شارژ آنلاين اعتبار كاربر از طريق درگاه زرين پال
    - قابليت ويرايش پروفايل
    - اختصاص يك دفترچه يادداشت شخصي به هر كاربر
    - استفاده از قالب هاي html بدون دخالت php
    - استفاده آموزشي از ajax
    - و مباحثي كه طرفدار داشته باشند.
    خیلی مخلصیم بامرام
    منتظر هستیم که ادامه آموزش رو هم بذارید

    با تشکر فراوان

  11. #8
    عضو انجمن
    تاریخ عضویت
    Aug 2009
    محل سکونت
    اندیشه ، فاز 1
    نوشته ها
    389
    تشکر تشکر کرده 
    977
    تشکر تشکر شده 
    314
    تشکر شده در
    195 پست

    پیش فرض پاسخ : آموزش ساخت سيستم كاربري - ورود/عضويت

    نقل قول نوشته اصلی توسط Rezash نمایش پست ها
    با توجه به قولي كه به دوستان داده بودم بخش جديد برنامه رو دارم آماده و تكميل مي كنم ،‌فعلا فايلي شامل تغييرات زير رو اتچ مي كنم كه توضيحاتش رو فردا مينويسم.
    - فيـلتر گذاري روي كليه ورودي هاي كاربر جهت جلوگيري از حملات SQL INJECTION و ...
    - اعتبار سنجي سشن ها باتوجه به آي پي و مشخصات مرورگر كاربر
    - ارسال ايميل به مدير در هنگام عضوي جديد
    مباحثي كه در آينده دنبال خواهيم كرد : (البته همه مباحث مربوطه به سيستم لوگين /عضويت نيست اما در كنار هم بودن اين عناصر ميتونه جذابيت خاصي به برنامه بده )
    - جلوگيري از ارسال مكرر فرم توسط ربات ها با كد امنيتي
    - ارسال sms يا yahoo pm در هنگام عضويت به كاربر
    - ارسال كد فعال سازي عضويت به ايميل يا sms يا yahoo مسنجر كاربر
    - شناسايي خود كار كشور كاربر و تغيير خودكار زبان براي كاربر
    - قابليت شارژ آنلاين اعتبار كاربر از طريق درگاه زرين پال
    - قابليت ويرايش پروفايل
    - اختصاص يك دفترچه يادداشت شخصي به هر كاربر
    - استفاده از قالب هاي html بدون دخالت php
    - استفاده آموزشي از ajax
    - و مباحثي كه طرفدار داشته باشند.
    من اون فایل پیوست member-area.zip رو دانلود کردم ، موقعی که کاربر ثبت نام میکنه ، و فایل میخواد با فایل signup.php ارتباط برقرار کنه ارور زیر رو میده :

    Parse error: parse error, expecting `')'' in C:\Program Files\EasyPHP 3.0\www\sc\config.php on line 7

    مشکل از چیه ؟
    این هم ساختار فایل :
    کد PHP:
    <?php
    $config 
    = array(
    'AdminEmail'=>'Yourmail@you.com',
    'SendMailonreg'=>true,
    'MailRegSubject'=>'New Member',
    'MailRegBody'=>'New Member Registered !',
    'headers' => 'From: Yourmail@you.com' "\r\n" .'Reply-To: Yourmail@you.com' "\r\n" .'X-Mailer: PHP/' phpversion();
    );
    //db connection
    $server 'localhost';
    $username 'root';
    $password 'mysql';
    $database 'mysql';
    $Connection mysql_connect$server $username $password ) or die(mysql_error());
    mysql_select_db$database $Connection ) or die(mysql_error());
    //data filtering
    function safe$value ){
    $value         trim$value );
    $value         mysql_real_escape_string$value );
    $value        htmlspecialchars($value);
    $value        strip_tags($value);
    $value         str_replace(array("<",">","'","ی","&amp;","ۜ"),array("&lt;","&gt;","'","ي","&","ي"),$value);
    return 
    $value;
    }
    function 
    autosafe(&$value,$key){
    $value safe($value);
    return 
    $value;
    }
    array_walk($_POST,'autosafe');
    array_walk($_GET,'autosafe');
    array_walk($_COOKIE,'autosafe');
    array_walk($_SESSION,'autosafe');

    ?>

  12. #9
    عضو دائم Rezash آواتار ها
    تاریخ عضویت
    Feb 2010
    محل سکونت
    مشهد
    نوشته ها
    1,923
    تشکر تشکر کرده 
    889
    تشکر تشکر شده 
    2,385
    تشکر شده در
    1,535 پست

    پیش فرض پاسخ : آموزش ساخت سيستم كاربري - ورود/عضويت

    در مورد SQL INJECTION :
    در آخرين فايلي كه براي دانلود گذاشتم :
    فايل config.php رو ببينيد :
    کد PHP:
    function safe$value ){
    $value         trim$value );
    $value         mysql_real_escape_string$value );
    $value        htmlspecialchars($value);
    $value        strip_tags($value);
    $value         str_replace(array("<",">","'","ی","&amp;","ۜ"),array("&lt;","&gt;","'","ي","&","ي"),$value);
    return 
    $value;
    }
    function 
    autosafe(&$value,$key){
    $value safe($value);
    return 
    $value;
    }
    array_walk($_POST,'autosafe');
    array_walk($_GET,'autosafe');
    array_walk($_COOKIE,'autosafe');
    array_walk($_SESSION,'autosafe'); 
    تابع safe:
    ابتدا مقدار ورودي رو trim مي كنيم يعني فضاهاي خالي اول و آخرش رو حذف مي كنيم
    mysql_real_escape_string : يك تابع فوق العاده سودمند براي حذف كاراكتر هاي ناخواسته و آماده سازي رشته ورودي براي استفاده در يك كوئري به صورت سالم . مثلا كاراكترهاي \x00, \n, \r, \, ', " and \x1a فيلتر ميشوند.
    PHP: mysql_real_escape_string - Manual
    htmlspecialchars
    تبديل كاراكترهاي html :
    مثال :

    * '&' (ampersand) becomes '&amp;'
    * '"' (double quote) becomes '&quot;' when ENT_NOQUOTES is not set.
    * ''' (single quote) becomes ''' only when ENT_QUOTES is set.
    * '<' (less than) becomes '&lt;'
    * '>' (greater than) becomes '&gt;'
    PHP: htmlspecialchars - Manual
    strip_tags :
    حذف تگ ها ، مثلا تگ اسكريپت و ...
    PHP: strip_tags - Manual
    تابع autosafe :
    تابعي دست نويس براي اجراي خودكار تابع safe روي متغير هاي ورودي . اگر از نحوه كاركرد اين تابع و تابع بعدي يعني array_walk اطلاع نداريد توصيه ميكنم "آرايه ها در php" رو كه قبلا در همين انجمن نوشتم مطالعه كنيد.
    -
    جلوگيري و مقابله با جعل سشن :
    کد PHP:
    $client =  md5($_SERVER['REMOTE_ADDR'].$_SERVER['HTTP_USER_AGENT'].$_SERVER['SERVER_NAME']);
            
    $_SESSION['client'] = $client
    يك راه كاملا ساده !
    در كد بالا من تركيبي از آي پي كاربر ، مشخصات مرورگر كاربر و آدرس سايت رو در يك رشته تركيب و md5 كردم و داخل يك سشن ريختم
    حالا در صفحات لوگين بايد چك كنم :
    کد PHP:
    $client =  md5($_SERVER['REMOTE_ADDR'].$_SERVER['HTTP_USER_AGENT'].$_SERVER['SERVER_NAME']);
    if(
    $client != $_SESSION['client'])
        die(
    "Dear User ! Your Login session expired,please re login"); 
    با اينكار حتي اگه سشن يك يوزر جعل و د.زديده بشه باز هم هويتش جعل نميشه.
    سعي كردم خلاصه بگم و بيشتر توابع رو php.ini ارجاع مي دم به دو دليل : 1. شلوغ نشدن غير ضروري تاپيك 2. درك سايت فوق العاده مفيد php.net
    منتظر ادامه آموزش ها باشيد
    بک آپ بگیرید قبل از آنکه پشیمان شوید!
    تشخیص سیستم مدیریت محتوای سایت - سایت شخصی

  13. تعداد تشکر ها ازRezash به دلیل پست مفید


  14. #10
    عضو انجمن
    تاریخ عضویت
    Jul 2012
    نوشته ها
    243
    تشکر تشکر کرده 
    88
    تشکر تشکر شده 
    478
    تشکر شده در
    173 پست

    پیش فرض پاسخ : آموزش ساخت سيستم كاربري - ورود/عضويت

    نقل قول نوشته اصلی توسط Rezash نمایش پست ها
    در مورد SQL INJECTION :
    در آخرين فايلي كه براي دانلود گذاشتم :
    فايل config.php رو ببينيد :
    کد PHP:
    function safe$value ){
    $value         trim$value );
    $value         mysql_real_escape_string$value );
    $value        htmlspecialchars($value);
    $value        strip_tags($value);
    $value         str_replace(array("<",">","'","ی","&amp;","ۜ"),array("&lt;","&gt;","'","ي","&","ي"),$value);
    return 
    $value;
    }
    function 
    autosafe(&$value,$key){
    $value safe($value);
    return 
    $value;
    }
    array_walk($_POST,'autosafe');
    array_walk($_GET,'autosafe');
    array_walk($_COOKIE,'autosafe');
    array_walk($_SESSION,'autosafe'); 
    تابع safe:
    ابتدا مقدار ورودي رو trim مي كنيم يعني فضاهاي خالي اول و آخرش رو حذف مي كنيم
    mysql_real_escape_string : يك تابع فوق العاده سودمند براي حذف كاراكتر هاي ناخواسته و آماده سازي رشته ورودي براي استفاده در يك كوئري به صورت سالم . مثلا كاراكترهاي \x00, \n, \r, \, ', " and \x1a فيلتر ميشوند.
    PHP: mysql_real_escape_string - Manual
    htmlspecialchars
    تبديل كاراكترهاي html :
    مثال :

    * '&' (ampersand) becomes '&amp;'
    * '"' (double quote) becomes '&quot;' when ENT_NOQUOTES is not set.
    * ''' (single quote) becomes ''' only when ENT_QUOTES is set.
    * '<' (less than) becomes '&lt;'
    * '>' (greater than) becomes '&gt;'
    PHP: htmlspecialchars - Manual
    strip_tags :
    حذف تگ ها ، مثلا تگ اسكريپت و ...
    PHP: strip_tags - Manual
    تابع autosafe :
    تابعي دست نويس براي اجراي خودكار تابع safe روي متغير هاي ورودي . اگر از نحوه كاركرد اين تابع و تابع بعدي يعني array_walk اطلاع نداريد توصيه ميكنم "آرايه ها در php" رو كه قبلا در همين انجمن نوشتم مطالعه كنيد.
    -
    جلوگيري و مقابله با جعل سشن :
    کد PHP:
    $client =  md5($_SERVER['REMOTE_ADDR'].$_SERVER['HTTP_USER_AGENT'].$_SERVER['SERVER_NAME']);
            
    $_SESSION['client'] = $client
    يك راه كاملا ساده !
    در كد بالا من تركيبي از آي پي كاربر ، مشخصات مرورگر كاربر و آدرس سايت رو در يك رشته تركيب و md5 كردم و داخل يك سشن ريختم
    حالا در صفحات لوگين بايد چك كنم :
    کد PHP:
    $client =  md5($_SERVER['REMOTE_ADDR'].$_SERVER['HTTP_USER_AGENT'].$_SERVER['SERVER_NAME']);
    if(
    $client != $_SESSION['client'])
        die(
    "Dear User ! Your Login session expired,please re login"); 
    با اينكار حتي اگه سشن يك يوزر جعل و د.زديده بشه باز هم هويتش جعل نميشه.
    سعي كردم خلاصه بگم و بيشتر توابع رو php.ini ارجاع مي دم به دو دليل : 1. شلوغ نشدن غير ضروري تاپيك 2. درك سايت فوق العاده مفيد php.net
    منتظر ادامه آموزش ها باشيد

    سلام دوست عزیز

    لطفا هشدار سایت php رو برای تابع mysql_real_escape_string جدی بگیرید

    Caution Security: the default character set

    The character set must be set either at the server level, or with the API function mysql_set_charset() for it to affect mysql_real_escape_string(). See the concepts section on character sets for more information.
    قبل از ست کردن charset لطفا ازین تابع استفاده نکنید

صفحه 5 از 9 نخستنخست 123456789 آخرینآخرین

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. پاسخ ها: 2
    آخرين نوشته: March 11th, 2013, 12:50
  2. پاسخ ها: 0
    آخرين نوشته: May 16th, 2011, 01:12
  3. آموزش ساخت يك سيستم وبلاگ دهي
    توسط Rezash در انجمن PHP-MySQL
    پاسخ ها: 12
    آخرين نوشته: December 17th, 2010, 18:09
  4. معرفی سيستم مديريت آموزشگاه اتود + نسخه نمايشی
    توسط amiri113 در انجمن مباحث دیگر
    پاسخ ها: 0
    آخرين نوشته: February 1st, 2010, 18:08

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •