Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

मूडल का उपयोग करके उपयोगकर्ता बनाएं और उन्हें SQL के माध्यम से पाठ्यक्रमों में नामांकित करें

आपको SQL - https://docs.moodle.org/dev/Creating_a_web_service_client का उपयोग करने के बजाय वेब सेवाओं का उपयोग करना चाहिए

  1. वेब सेवाएं सक्षम करें /admin/search.php?query=enablewebservices
  2. बाकी प्रोटोकॉल सक्षम करें /admin/settings.php?section=webserviceprotocols
  3. एक सेवा जोड़ें /admin/settings.php?section=externalservices
    • संक्षिप्त नाम जोड़ें =myservice
    • सक्षम =सत्य
  4. सेवा के लिए फ़ंक्शन पर क्लिक करें।
  5. core_user_create_usersजोड़ें और enrol_manual_enrol_users
    • आपको पैरामीटर के लिए एपीआई दस्तावेज़ देखना होगा
    • /admin/webservice/documentation.php
  6. एक भूमिका बनाएं - /admin/roles/manage.php
  7. उपयोगकर्ता स्तर + सिस्टम संदर्भ चुनें
  8. क्षमता जोड़ें - webservice/rest:use
  9. एक परीक्षक बनाएं और ऊपर बनाई गई भूमिका में जोड़ें
  10. उपयोगकर्ता /admin/settings.php?section=webservicetokens
  11. के लिए एक टोकन बनाएं

एक बार जब आप इसे सेट कर लें, तो कुछ इस तरह का उपयोग करें:

// First get the token.
$tokenurl = 'http://www.yourmoodlesite.com/login/token.php?username=testuser&password=xx&service=myservice';

$tokenresponse = file_get_contents($tokenurl);

$tokenobject = json_decode($tokenresponse);

if (!empty($tokenobject->error)) {
    echo $tokenobject->error;
    die();
}

// Then call the create user and enrol functions
// Remember to add the question mark after "server.php" because http_build_query() won't add it on its own and you'll end up with a 404 error
$baseurl = 'http://www.yourmoodlesite.com/webservice/rest/server.php?';

// Then add these parameters to the url.

$users = array();
// See the api documentation /admin/webservice/documentation.php
// for core_user_create_users for building the $users array
// e.g.
// $users = array(array(
// 'username' => 'lecapitaine',   //Username policy is defined in Moodle security config
// 'password' =>  'EngageNCC-1701', //Plain text password consisting of any characters
// 'firstname' =>  'William', //The first name(s) of the user
// 'lastname' => 'Shatner',  //The family name of the user
// 'email' => '[email protected]',
// 'lang' => 'en',
// ));

$params = array(
    'wstoken' => $tokenobject->token,
    'wsfunction' => 'core_user_create_users',
    'moodlewsrestformat' => 'json',
    'users' => $users,
);

$url = $baseurl . http_build_query($params);

$response = file_get_contents($url);

$newusers = json_decode($response);

// Newusers will be an array of objects containing the new user ids.

$enrolments = array();
// See the api documentation /admin/webservice/documentation.php
// for enrol_manual_enrol_users for building the $enrolments array

// Then enrol the users.
$params = array(
    'wstoken' => $tokenobject->token,
    'wsfunction' => 'enrol_manual_enrol_users',
    'moodlewsrestformat' => 'json',
    'enrolments' => $enrolments,
);

$url = $baseurl . http_build_query($params);

$response = file_get_contents($url);

$enrolled = json_decode($response);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. टाइमस्टैम्प कॉलम से वर्तमान महीनों के रिकॉर्ड mysql का चयन करें

  2. लिक्विबेस ग्रेडल प्लगइन से अंतर उत्पन्न करने में असमर्थ

  3. mysql में यूटीसी में तारीख

  4. चेतावनी:mysqli ::mysqli ():(HY000/1045):उपयोगकर्ता 'डेटाबेस' @ 'लोकलहोस्ट' (पासवर्ड का उपयोग करके:नहीं) के लिए प्रवेश निषेध

  5. SQL अनेक से अनेक का चयन करें