Remove data from a defined table depending on the ID of the user



  • How to put the data on a page from different tables for each user. For example, if in the session a user with ID=5 then remove the data from the user table. And so for different users. We need to get this out when the page is downloaded.



  • If I've got it right, that's it. ♪ ♪

    $id = $_SESSION['user_id'];
    if ( is_numeric( $id) && intval( $id ) > 0 ) {
        //Формируем sql-запрос к таблице групп которые курирует наш пользователь
        //Конечно же нужно делать через PDO и bindParams, но мы упростим
        $query = 'SELECT groupname, tablename FROM groups WHERE curator_id='.$id;
    
    //Далее мы выполняем sql-запрос после которого все записи нам вернуться в переменную $groupsList как массив
    foreach( $groupsList as $group ) {
        //Идем по списку таблиц связанных с указанным пользователем и выбираем из них то, что нам нужно
        $tableName = $group['tablename'];
        //Исходим из того, что набор полей в этих таблицах одинаковый - поэтому и запрос для всех одинаковый, иначе в чем смысл всего этого огорода с разными таблицами?
    
        $query = 'SELECT id, field1, field2, field3 FROM '.$tableName;
        //Опять выполняем sql-запрос, получаем то что нужно и обрабатываем это все
    }
    
    $tableName = '';
    

    }



Suggested Topics

  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2