Advertisement
Guest User

Untitled

a guest
Jun 16th, 2019
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.81 KB | None | 0 0
  1. <?php
  2. require "db.php";
  3. if (isset($_SESSION['logged_user'])) {
  4. // Получаем id users чья сессия
  5. $userid = $_SESSION['logged_user']->id;
  6. // Загружаем данные об этом user
  7. $user = R::load( 'users', $userid );
  8.  
  9. // Дальше я не уверен в том правильно ли я сделал выборку
  10.  
  11. // ищем запись $_POST['name'] в поле "name" в таблице "tests"
  12. $findTest = R::findOne('tests', 'name = ?', array($_POST['name']));
  13. //Если такая запись есть
  14. if ($findTest) {
  15. //В цикле, который по идее перебирает именно данные юзера с id = $_SESSION['logged_user']
  16. foreach( $user->ownTestsList as $test ) {
  17. //Если найдено поле = $_POST['name']
  18. if ($test->name == $_POST['name']) {
  19. //При этом, если значение progress в базе < $_POST['score']
  20. if ($test->progress < $_POST['score']) {
  21. //То записываем новое значение в progress
  22. $test->progress = $_POST['score'];
  23. //И записываем новое значение в time
  24. $test->time = strtotime("now");
  25. //Записываем новые данные в бд к тому самому юзеру, чье id = $_SESSION['logged_user']
  26. $user->ownTestsList[] = $test;
  27. }
  28. }
  29. break;
  30. }
  31. }
  32. //Если запись не найдена $findTest
  33. else {
  34. //Создаем новое поле в таблице "tests"
  35. $test = R::dispense('tests');
  36. $test->name = $_POST['name'];
  37. $test->progress = $_POST['score'];
  38. $test->time = strtotime("now");
  39. $user->ownTestsList[] = $test;
  40. }
  41. //Сохраняем данные
  42. R::store($user);
  43. }
  44. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement