PHP Выбор и группировка и сохранение в файлы - PullRequest
0 голосов
/ 11 января 2019

У меня есть таблица "org_st" следующим образом: enter image description here

Значения TYPE_ID - это имена папок, которые необходимо создать
Значения CHKPT_ID являются именами папок, которые должны быть созданы внутри относительного TYPE_ID
Значения SECT_ID - это имена текстовых файлов, которые должны быть созданы в относительном CHKPT_ID с содержанием ELMT_ID

Пример: Папка (3) / папка (54) / файл (4) .txt, содержащая значение (13). как это:

enter image description here

и здесь относительное содержание текстового файла (13) в выбранном примере:

enter image description here

Можно ли выбирать и фильтровать в пределах одного оператора PDO, или мне нужно пройти несколько SQL-запросов?

Я действительно потерялся в том, как справиться с этим вопросом .. $ stmt = $ this-> conn-> prepare ("выберите ЧТО?")

Большое спасибо заранее за любую помощь!

1 Ответ

0 голосов
/ 11 января 2019

Итак, как я ранее прокомментировал, я упустил некоторую ясность при рассмотрении вопроса: это звучит сложно, когда это довольно легко. Каждая запись ($ row) - это уже готовый путь! здесь царапается на захваченном столе: enter image description here

Теперь нам нужно просто запустить PDO. Выберите * ... здесь функцию, которая создает красивое дерево папок:

            public  function fire_all_lists()       
            {   
            try             
            {                       
            $stmt = $this->conn->prepare("select TYPE_ID,CHKPT_ID,SECT_ID,ELMT_ID FROM org_st");    
            $stmt->execute();
            $row=$stmt->fetch(PDO::FETCH_ASSOC);                
            if(!$row) exit('<h1>nothing Bro!</h1>');
            $s= array('en','fr','de','bg','ru','ar') ;
            $ta=count($s);  
            do {
            for ($i = 0; $i < $ta; $i++) {
            $path='lists/'.$s[$i].'/'.$row['TYPE_ID'].'/'.$row['CHKPT_ID'].'/'.$row['SECT_ID'].'.txt';
            $dir='lists/'.$s[$i].'/'.$row['TYPE_ID'].'/'.$row['CHKPT_ID'];
            if(!file_exists($dir)) {
            mkdir($dir, 0755, true);
            }
            file_put_contents($path, '<option>'.$row['ELMT_ID'].'</option>'.PHP_EOL, FILE_APPEND | LOCK_EX);

            }

            } while($row = $stmt->fetch(PDO::FETCH_ASSOC)); 
            return true;
            $stmt = null;                   
            }                   
            catch(PDOException $e)              
            {                       
            echo $e->getMessage();                  
            }
            }

Спасибо за ваше терпение. Я надеюсь, что вы найдете какой-либо интерес.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...