[Easymod-cvs] sql_parser/root/includes/sql sql_parser.php,1.3,1.4
Status: Beta
Brought to you by:
wgeric
From: Markus P. <mar...@us...> - 2005-09-29 19:32:29
|
Update of /cvsroot/easymod/sql_parser/root/includes/sql In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28672/root/includes/sql Modified Files: sql_parser.php Log Message: Fixed a minor bug in the ALTER TABLE parser. Index: sql_parser.php =================================================================== RCS file: /cvsroot/easymod/sql_parser/root/includes/sql/sql_parser.php,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** sql_parser.php 26 Sep 2005 09:59:13 -0000 1.3 --- sql_parser.php 29 Sep 2005 19:32:21 -0000 1.4 *************** *** 431,439 **** return true; } - if( preg_match('#msaccess#i', $this->sql_layer) ) - { - $builder_name = 'msaccess'; - return true; - } $builder_name = $this->sql_layer; return false; --- 431,434 ---- *************** *** 448,453 **** * @param bool TRUE to show the current table name in the message. * @param bool TRUE to translate table prefixes in the message. */ ! function format_message($message, $count = false, $show_table_name = false, $translate_prefix = true) { global $lang; --- 443,449 ---- * @param bool TRUE to show the current table name in the message. * @param bool TRUE to translate table prefixes in the message. + * @return array Associative array with the following elements: message, stmt_number and table_name */ ! function format_message($message, $stmt_number = false, $show_table_name = false, $translate_prefix = true) { global $lang; *************** *** 458,480 **** $message = str_replace($this->table_prefix, $this->phpbb_prefix, $message); } // Append additional information? ! if( $count !== false ) { ! $message .= sprintf($lang['SQL_in_statement'], $count); } if( $show_table_name ) { ! $table_name = ( $translate_prefix && $this->table_prefix != $this->phpbb_prefix ? str_replace($this->table_prefix, $this->phpbb_prefix, $this->sql_data['table_name']) : $this->sql_data['table_name'] ); ! $message .= sprintf($lang['SQL_in_table_name'], $table_name); } ! return $message; } ! function format_warning($message, $count = false, $show_table_name = false, $translate_prefix = true) { ! $this->warnings[] = $this->format_message($message, $count, $show_table_name, $translate_prefix); } ! function format_error($message, $count = false, $show_table_name = false, $translate_prefix = true) { ! $this->error_message = $this->format_message($message, $count, $show_table_name, $translate_prefix); } --- 454,485 ---- $message = str_replace($this->table_prefix, $this->phpbb_prefix, $message); } + else + { + $translate_prefix = false; + } + + $result = array(); + // Append additional information? ! if( $stmt_number !== false ) { ! $result['stmt_number'] = $stmt_number; ! $message .= sprintf($lang['SQL_in_statement'], $stmt_number); } if( $show_table_name ) { ! $result['table_name'] = ( $translate_prefix ? str_replace($this->table_prefix, $this->phpbb_prefix, $this->sql_data['table_name']) : $this->sql_data['table_name'] ); ! $message .= sprintf($lang['SQL_in_table_name'], $result['table_name']); } ! $result['message'] = $message; ! return $result; } ! function format_warning($message, $stmt_number = false, $show_table_name = false, $translate_prefix = true) { ! $this->warnings[] = $this->format_message($message, $stmt_number, $show_table_name, $translate_prefix); } ! function format_error($message, $stmt_number = false, $show_table_name = false, $translate_prefix = true) { ! $this->error_message = $this->format_message($message, $stmt_number, $show_table_name, $translate_prefix); } *************** *** 1368,1372 **** return false; } ! if( isset($match[2]) && $match[2] == 'COLUMN' ) { $alter_statement = substr($alter_statement, strlen($match[0])); --- 1373,1377 ---- return false; } ! if( isset($match[2]) && strtoupper($match[2]) == 'COLUMN' ) { $alter_statement = substr($alter_statement, strlen($match[0])); |