$string['blocknameconflict'] = 'Naming conflict: block $a->name has the same title with an existing block: $a->conflict!';
$string['backupcontainexternal'] = 'This backup file contains external Moodle Network Hosts that are not configured locally';
$string['backuptablefail'] = 'Backup tables could NOT be set up successfully!';
-$string['boundsyntaxnotsupport'] = 'Pg \$1, \$2 bound syntax not supported yet :-(';
$string['cannotassignanthing'] = 'Cannot assign moodle/site:doanything';
$string['cannotassignrole'] = 'Cannot assign role in course';
$string['cannotassignselfasparent'] = 'Cannot assign self as parent!';
} else if ($type == SQL_PARAMS_DOLLAR) {
if ($target_type & SQL_PARAMS_DOLLAR) {
return array($sql, array_values($params), SQL_PARAMS_DOLLAR); // 0-based required
- } else {
- throw new dml_exception('boundsyntaxnotsupport');
+ } else if ($target_type & SQL_PARAMS_QM) {
+ $sql = preg_replace('/\$[0-9]+/', '?', $sql);
+ return array($sql, array_values($params), SQL_PARAMS_QM); // 0-based required
+ } else { //$target_type & SQL_PARAMS_NAMED
+ $sql = preg_replace('/\$([0-9]+)/', ':param\\1', $sql);
+ $finalparams = array();
+ foreach ($params as $key=>$param) {
+ $key++;
+ $finalparams['param'.$key] = $param;
+ }
+ return array($sql, $finalparams, SQL_PARAMS_NAMED);
}
} else { // $type == SQL_PARAMS_QM