History | Log In     View a printable version of the current page.  
We are currently focused especially on Moodle 2.0, Moodle 1.9.x bugs and Moodle 1.9.x testing.    Confused? Lost? Please read this introduction to the Tracker.
Issue Details (XML | Word | Printable)

Key: MDL-14967
Type: Sub-task Sub-task
Status: Resolved Resolved
Resolution: Fixed
Priority: Critical Critical
Assignee: Petr Škoda
Reporter: Nicolas Connault
Votes: 0
Watchers: 3
Operations

If you were logged in you would be able to see more operations.
Moodle
MDL-14679

M2-M3-M4 Upgrade all code using DML

Created: 23/May/08 10:51 PM   Updated: 15/Jun/08 06:13 PM
Component/s: Database SQL/XMLDB
Affects Version/s: 2.0
Fix Version/s: 2.0

Issue Links:
Cloners
 

Participants: Nicolas Connault and Petr Škoda
Security Level: None


 Description  « Hide
Since the new DML 2.0 API is now in place, all code using the old dmllib needs to be upgraded. In essence, this means the following changes:

1. Wherever old functions are used (get_record*, get_field*, set_field, insert_record, update_record), the global $DB must be used as the object on which these functions are called (e.g. get_record_select becomes $DB->get_record_select).
2. All the functions that used to accept a list of string params in the form "param1, value1, param2, value2" now need to be given an array of key=>value pairs as a replacement for these params. Other params remain as before. Check the new API for any exceptions.
3. rs_fetch_next_record($rs) is deprecated, in favour of the simple foreach($rs as $var). Calls to rs_close() must be replaced by $rs->close();

As an example to #3, if you have the original code:

     while($result = rs_fetch_next_record($rs)) {
         ...
     }
     rs_close();

you would replace it with

     foreach ($rs as $result) {
          ....
     }
     $rs->close();

 All   Comments   Change History   Version Control      Sort Order: Ascending order - Click to sort in descending order
Petr Škoda - 23/May/08 11:10 PM
todo:
1/ remove addslashes
2/ use placeholders in SQL
3/ fix function parameters, each $sql part needs $params array


Petr Škoda - 09/Jun/08 08:31 PM
done, yay!

Petr Škoda - 15/Jun/08 06:13 PM
done