false, PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_EMULATE_PREPARES => false, PDO::ATTR_STRINGIFY_FETCHES => false, PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8mb4', ]; $pdo = new PDO('mysql:host=' . $host . ';port=' . $dbport . ';dbname=' . $dbname . '', $dbuser, $dbpassword, $options); $pdo->exec('SET CHARACTER SET utf8mb4'); return $pdo; } catch (PDOException $e) { die("Something wrong: {$e->getMessage()}"); } } /** * 結束資料庫連線 */ function endConnectionDB($pdo) { unset($pdo); } // /** // * 取得下一個新的作番 // * @param string $facility_type : M:新梯 T:汰改 B:保養 // * @return array $new_facility_arr // */ function downloadBPMFilesByFormNo($tablename, $form_column_name, $form_no) { $fd_id = $this->getFd_id($tablename, $form_column_name, $form_no); $pdo = $this->connectionDB(); $pdo->exec('SET CHARACTER SET utf8mb4'); $sql = " SELECT * FROM sys_att_main AS b LEFT JOIN sys_att_file AS c ON b.fd_file_id = c.fd_id WHERE b.fd_model_id = :fd_id "; $sth = $pdo->prepare($sql); $sth->bindParam(':fd_id', $fd_id); $sth->execute(); $result = $sth->fetchAll(); foreach ($result as $row) { $fd_file_name = $row['fd_file_name']; $fd_file_path = "/public/bpm/" . $row['fd_file_path']; // $filePath = $_SERVER['DOCUMENT_ROOT'] . $fd_file_path; $str = ""; $str .= '' . $fd_file_name . ''; $str .= "
"; echo $str; } return $result; } function getFd_id($tablename, $form_column_name, $form_no) { $pdo = $this->connectionDB(); $pdo->exec('SET CHARACTER SET utf8mb4'); $sth = $pdo->prepare('SELECT fd_id FROM ' . $tablename . ' WHERE ' . $form_column_name . ' = ? '); $sth->bindValue(1, $form_no); $sth->execute(); $result = $sth->fetch(); return $result['fd_id']; } } $bdf = new Bpm_Download_files; // 映射的 table name $tablename = "ekp_test"; // 映射的 表單表單編號欄位名稱 $form_column_name = "fd_shen1"; // 映射的 表單編號 $form_no = "20231221001"; $bdf->downloadBPMFilesByFormNo($tablename, $form_column_name, $form_no);