Advertisement
Guest User

Untitled

a guest
Aug 6th, 2017
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.35 KB | None | 0 0
  1. <?php
  2.  
  3. $servername = "localhost";
  4. $username = "root";
  5. $password = "root";
  6. $dbname = "testing";
  7.  
  8. // Create connection
  9. $conn = new mysqli($servername, $username, $password, $dbname);
  10.  
  11. function getDataFromExternalApi ($url) {
  12. $ch = curl_init();
  13. curl_setopt($ch, CURLOPT_URL, $url);
  14. curl_setopt($ch, CURLOPT_POST, 0);
  15. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  16. $server_output = curl_exec($ch);
  17. curl_close($ch);
  18. $data = json_decode($server_output);
  19. return $data;
  20. }
  21.  
  22. function multiCurlReq($urlArray) {
  23. $nodes = $urlArray;
  24. $node_count = count($nodes);
  25.  
  26. $curl_arr = array();
  27. $master = curl_multi_init();
  28.  
  29. for($i = 0; $i < $node_count; $i++)
  30. {
  31. $url =$nodes[$i];
  32. $curl_arr[$i] = curl_init($url);
  33. curl_setopt($curl_arr[$i], CURLOPT_RETURNTRANSFER, true);
  34. curl_multi_add_handle($master, $curl_arr[$i]);
  35. }
  36.  
  37. do {
  38. curl_multi_exec($master,$running);
  39. } while($running > 0);
  40.  
  41.  
  42. for($i = 0; $i < $node_count; $i++)
  43. {
  44. $results[] = curl_multi_getcontent ( $curl_arr[$i] );
  45. }
  46. echo '<pre>';
  47. print_r($results);
  48. }
  49.  
  50. $playerUrl = "https://fantasy.premierleague.com/drf/bootstrap-static";
  51. $mainMetaData = getDataFromExternalApi($playerUrl);
  52.  
  53. function seedPlayer() {
  54. $detailUrlArray = array();
  55. // further processing ....
  56. if($mainMetaData && $mainMetaData->elements) {
  57. foreach ($mainMetaData->elements as $key => $value) {
  58. $playerId = $value->id;
  59. $playerDetailUrl = "https://fantasy.premierleague.com/drf/element-summary/".$playerId;
  60. array_push($detailUrlArray,$playerDetailUrl);
  61. // $sql = "INSERT INTO players (data, player_id) VALUES ('John', '.$playerId)";
  62. }
  63. multiCurlReq($detailUrlArray);
  64. // var_dump($detailUrlArray);die();
  65. }
  66. }
  67.  
  68. function seedEvents ($mainMetaData, $conn) {
  69. if($mainMetaData && $mainMetaData->events) {
  70. // $cSQLt = "TRUNCATE TABLE events";
  71. foreach ($mainMetaData->events as $key => $value) {
  72. $eventId = $value->id;
  73. $eventData = json_encode($value);
  74. $sqlSel = "select * from events where event_id = $eventId";
  75. $result = $conn->query($sqlSel);
  76. // if (db_query("SELECT COUNT(*) FROM {events} WHERE id = :id", array(':id' => $eventId))->fetchField()) {
  77. // db_update('node') // Table name no longer needs {}
  78. // ->fields(array(
  79. // 'data' => $eventData,
  80. // ))
  81. // ->condition('event_id', $eventId, '=')
  82. // ->execute();
  83. // }
  84. // else {
  85. // $data = array(
  86. // 'data' => $eventData,
  87. // 'event_id' => $event_id,
  88. // 'created' => REQUEST_TIME,
  89. // );
  90. // drupal_write_record('node', $data);
  91. // }
  92.  
  93. if ($result->num_rows > 0) {
  94. $sql = "UPDATE events set data = '$eventData' where event_id=$eventId";
  95. }
  96. else {
  97. $sql = "INSERT INTO events (data, event_id) VALUES ('$eventData', '$eventId')";
  98. }
  99.  
  100.  
  101. if ($conn->connect_error) {
  102. die("Connection failed: " . $conn->connect_error);
  103. }
  104. if ($conn->query($sql) === TRUE) {
  105. echo "New record created successfully";
  106. }
  107. else {
  108. echo "Error: " . $sql . "<br>" . $conn->error;
  109. }
  110. }
  111.  
  112. }
  113. }
  114.  
  115. seedEvents($mainMetaData, $conn);
  116.  
  117. // $a = new stdClass();
  118. // $a->test = 'name';
  119. // $a->b = new stdClass();
  120. // $a->b->name = 'what';
  121. // $a->b->place = 'what';
  122. // $c = json_encode($a);
  123. // var_dump(json_decode($c));die();
  124.  
  125. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement