示例#1
0
function error($description, $error_place='', $params=array())
{
  trigger_error('error', E_USER_WARNING);

  if(isset($GLOBALS['error_recursion']) && $GLOBALS['error_recursion'])
    die($description . ' - (error recursion!!!)');

  $description = $description . "\n\nback trace:\n" . get_trace_back();

  $GLOBALS['error_recursion'] = true;

  rollback_user_transaction();

  debug :: set_message_output(DEBUG_OUTPUT_MESSAGE_STORE | DEBUG_OUTPUT_MESSAGE_SEND);
  debug :: write_error($description, $error_place, $params);

  if (debug :: is_console_enabled())
  {
    debug :: write_error($description, $error_place, $params);
    echo debug :: parse_console();
  }

  ob_end_flush();

  exit();
}
示例#2
0
function error($description, $error_place = '', $params = array())
{
    if (defined('DEVELOPER_ENVIROMENT')) {
        trigger_error('error', E_USER_WARNING);
        echo $description . '<br>' . $error_place . '<br><pre>';
        print_r($params);
        echo '</pre>';
    }
    debug::write_error($description, $error_place, $params);
    rollback_user_transaction();
    if (debug::is_console_enabled()) {
        echo debug::parse_html_console();
    } else {
        $message = '';
        if ($user_id = user::get_id()) {
            $message .= "user id:\t{$user_id}\nlogin:\t\t" . user::get_login() . "\ne-mail:\t\t" . user::get_email() . "\n";
        }
        $message .= "ip:\t\t" . sys::client_ip() . "\nrequest:\t" . REQUEST_URI . "\nerror:\t\t{$title}\ndescription:\t{$msg}";
        $mail = new mime_mail();
        $mail->set_body($message);
        $mail->build_message();
        $mail->send('developer', DEVELOPER_EMAIL, '', WEBSITE_EMAIL, $_SERVER['HTTP_HOST'] . ' internal error!');
    }
    ob_end_flush();
    exit;
}
示例#3
0
function error($description, $error_place='', $params=array()) 
{
	if(isset($GLOBALS['error_recursion']) && $GLOBALS['error_recursion'])
		die();
		
	$GLOBALS['error_recursion'] = true;
	
	if(defined('DEVELOPER_ENVIROMENT'))
	{
		trigger_error('error', E_USER_WARNING);
		
		echo(  $description . '<br>' . $error_place . '<br><pre>');
		print_r($params);
		echo('</pre>');
	}
	
	$description = $description . "\n\nback trace:\n" . get_trace_back();
		
	rollback_user_transaction();

	debug :: set_message_output(DEBUG_OUTPUT_MESSAGE_STORE | DEBUG_OUTPUT_MESSAGE_SEND);
	debug :: write_error($description, $error_place, $params);
	
	if (debug :: is_console_enabled())
	{
		debug :: write_error($description, $error_place, $params);
		echo debug :: parse_console();
	}
		
	ob_end_flush();
			
	exit;
}
 function _end_transaction()
 {
     if (!$this->is_transaction_required()) {
         return;
     }
     if ($this->_response->is_success()) {
         commit_user_transaction();
     } else {
         rollback_user_transaction();
     }
 }
  function _end_transaction(&$request)
  {
    if(!$this->is_transaction_required())
      return;

    if($request->is_success())
      commit_user_transaction();
    else
      rollback_user_transaction();
  }
 function process()
 {
     if (!$this->_current_action) {
         return false;
     }
     if ($is_transacton = $this->_is_transaction_required()) {
         start_user_transaction();
     }
     $action =& $this->get_action_object();
     $perform_result = true;
     if (is_object($action)) {
         if ($view =& $this->get_view()) {
             $action->set_view($view);
         }
         $perform_result = $action->perform();
     }
     if ($is_transacton) {
         if ($perform_result) {
             commit_user_transaction();
         } else {
             rollback_user_transaction();
         }
     }
     return $perform_result;
 }
  function test_transactions()
  {
    $db =& db_factory :: instance();

    start_user_transaction();

    $db->sql_insert("founding_fathers", array('first' => 'Richard', 'last' => 'Nixon', 'dog_name' => null));
    $db->sql_insert("founding_fathers", array('first' => 'Richard', 'last' => 'Nixon2', 'dog_name' => null));
    $db->sql_insert("founding_fathers", array('first' => 'Richard', 'last' => 'Nixon3', 'dog_name' => null));

    rollback_user_transaction();

    $db->sql_select("founding_fathers", '*', 'last="Nixon"');
    $this->assertEqual(sizeof($db->get_array()), 0);

    start_user_transaction();

    $db->sql_insert("founding_fathers", array('first' => 'Richard', 'last' => 'Nixon', 'dog_name' => null));
    $db->sql_insert("founding_fathers", array('first' => 'Richard', 'last' => 'Nixon2', 'dog_name' => null));
    $db->sql_insert("founding_fathers", array('first' => 'Richard', 'last' => 'Nixon3', 'dog_name' => null));

    commit_user_transaction();

    $db->sql_select("founding_fathers", '*', 'last="Nixon" OR last="Nixon2" OR last="Nixon3"');
    $this->assertEqual(sizeof($db->get_array()), 3);

    start_user_transaction();

    $db->sql_insert("founding_fathers", array('first' => 'Richard', 'last' => 'Nixxxxx', 'dog_name' => null));

    $db->sql_select("founding_fathers", '*', 'last="Nixxxxx"');
    $arr = $db->get_array();
    $this->assertEqual(sizeof($arr), 1);
    $this->assertEqual($arr[0]['last'], 'Nixxxxx');

    rollback_user_transaction();

    $db->sql_select("founding_fathers", '*', 'last="Nixxxxx"');
    $arr = $db->get_array();
    $this->assertEqual(sizeof($arr), 0);
  }