• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
مدیریت خطاها
#1
Question 
سلام دوستان
دارم پروزه php مینویسم
استاد گفته باید هر جا خطا اتفاق می افته بتونه تو پایگاه داده ذخیره کنه
اما نمیدونم چطور؟؟/Confused
  پاسخ
تشکر شده توسط :
#2
مثلاً میتونید از تابع set_error_handler استفاده کنید. و داخل تابعی که set شده کد های insert به دیتابیس رو بزارید.
http://is.php.net/set_error_handler

به استاد (کم سوادتون) هم بگید این روش نامناسبیه
وبلاگ: Yousha.Blog.ir


 کد کمتر => خطای کمتر => قابل فهمتر => خوانایی بالاتر => نگهداری بهتر

  پاسخ
تشکر شده توسط : cyletech Reza
#3
اینو از دل و روده CI براتون کشیدم بیرون .
با توجه به
نقل قول:به استاد (کم سوادتون) هم بگید این روش نامناسبیه
فکرکنم طبق تمامی سیستم ها خطاهای پی اچ پی در یک فایل لاگ بشه بهتره ، چه بسا در زمان ذخیره در دیتابیس ممکنه دچار اررو بشه بعد اونو چیکار میکنیTongue
کد پی‌اچ‌پی:
set_error_handler('_exception_handler');

if ( ! 
function_exists('_exception_handler'))
{
    function 
_exception_handler($severity$message$filepath$line)
    {
        
header('Content-Type: text/html; charset=utf-8');
    
$save "# $severity: - "date("Y-m-d H:i:s")." -> "$_SERVER['REMOTE_ADDR']."\t-> ".$message."\n{$filepath} : {$line}\n\n";
    
    
$filename dirname(__FILE__).'/'.date('Y-m-d').'.php';
        if(!
file_exists($filename))
            
$save2="<?php die ?>\n\n".$save;
        else
            
$save2=$save;
        
            
$f=fopen($filename,'a');
            
fwrite($f,$save2);
            
fclose($f);
            
    }

وبلاگ rezaonline.net/blog
سفارش برنامه نویسی reza.biz
Php , mysql , postgresql , redis , Yii and ... Cool
  پاسخ
تشکر شده توسط : ali786
#4
خیلی ممنون
اما اگه این روش خوب نیس از چه روشی واسه مدیریت خطاها استفاده کنم بهتره؟
  پاسخ
تشکر شده توسط :
#5
(۱۳۹۱ مرداد ۱۹, ۰۲:۲۳ ب.ظ)behi نوشته: خیلی ممنون
اما اگه این روش خوب نیس از چه روشی واسه مدیریت خطاها استفاده کنم بهتره؟

سلام
اینکه خطا ها در دیتابیس ذخیره بشود روش خوبی نیست نه اینکه خطا ها ثبت بشود ،
نقل قول: چه بسا در زمان ذخیره در دیتابیس ممکنه دچار اررو بشه
همونطور که رضای عزیز گفت بهتره در یک فایل خطاها را ذخیره کنید که نمونه کد هم برای شما گذاشتن .

موفق باشید
  پاسخ
تشکر شده توسط : Reza payam
#6
اینکه شما نوشتین مدیریت خطا نیست بلکه لاگ کردن خطا هست
منظور از مدیریت خطا تغییر جریان برنامه متناسب با رخداد خطا هست که میتوان با ساختار try - catch و کلاس Exception اونهارو هندل کرد
  پاسخ
تشکر شده توسط : Reza payam
#7
سلام آقا رضا
اگه منظورتون بنده است من طبق این گفته
نقل قول:استاد گفته باید هر جا خطا اتفاق می افته بتونه تو پایگاه داده ذخیره کنه
اون دستورات رو نوشتم .

حرف شما صحیحه.
وبلاگ rezaonline.net/blog
سفارش برنامه نویسی reza.biz
Php , mysql , postgresql , redis , Yii and ... Cool
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان