MDL-39572: Fix sql_order_by_text() to use length argument correctly
authorSimon Coggins <simon.coggins@totaralms.com>
Wed, 14 Aug 2013 23:54:19 +0000 (11:54 +1200)
committerSimon Coggins <simon.coggins@totaralms.com>
Thu, 15 Aug 2013 23:26:54 +0000 (11:26 +1200)
lib/dml/mssql_native_moodle_database.php
lib/dml/sqlsrv_native_moodle_database.php

index 2191b89..4000e8e 100644 (file)
@@ -1220,7 +1220,7 @@ class mssql_native_moodle_database extends moodle_database {
     }
 
     public function sql_order_by_text($fieldname, $numchars=32) {
-        return ' CONVERT(varchar, ' . $fieldname . ', ' . $numchars . ')';
+        return " CONVERT(varchar({$numchars}), {$fieldname})";
     }
 
    /**
index b5062b1..5761c7b 100644 (file)
@@ -1281,7 +1281,7 @@ class sqlsrv_native_moodle_database extends moodle_database {
     }
 
     public function sql_order_by_text($fieldname, $numchars = 32) {
-        return ' CONVERT(varchar, '.$fieldname.', '.$numchars.')';
+        return " CONVERT(varchar({$numchars}), {$fieldname})";
     }
 
     /**