include './db_clear.php'; //читаем файл $txt = file($_FILES['file']['tmp_name']); //убираем первые 17 строк и последние 5 array_splice($txt, 0, 17); array_splice($txt, -5, 5); $txt = implode("", $txt); $f = fopen('test.txt', 'w'); fwrite($f, $txt); fclose($f); $txt = explode('*', $txt); for ($i = 0; $i < count($txt); $i += 2) { $document[trim($txt[$i])] = $txt[$i + 1]; } //разбираем узлы if (isset($document['JOINT COORDINATES'])) { $nodes = new TNode(); $nodes->get_from_staad_std($document['JOINT COORDINATES']); echo '- Узлы;<br/>'; } //разбираем элементы if (isset($document['MEMBER INCIDENCE'])) { $members = new TMember(); $members->get_from_staad_std($document['MEMBER INCIDENCE']); echo '- Элементы;<br/>'; } } else { echo "Не могу прочитать файл *.std!"; } //закрываем соединение с базой mysql_close($dbh);
//функции автозагрузки классов function convert_class_to_filename($class) { return './classes/class_' . str_replace('_', '/', $class) . '.php'; } function __autoload($class) { @(include_once convert_class_to_filename($class)); } include_once './db_connect.php'; //подключаемся к базе $dbh = mysql_connect(host, user, pswd) or die("Не могу соединиться с MySQL."); mysql_select_db(SCAD) or die("Не могу подключиться к базе."); $res = mysql_query("SET NAMES utf8"); //обновляем узлы $nodes = new TNode(); $sql = "UPDATE " . document . " SET text = '" . $nodes->set_to_scad_txt() . "' WHERE id = " . D_node; mysql_query($sql); //обновляем элементы $members = new TMember(); $s = iconv('UTF-8', 'CP1251', $members->set_to_scad_txt()); $sql = "UPDATE " . document . " SET text = '{$s}' WHERE id = " . D_member; mysql_query($sql); //обновляем группы для подбора стали $groups_for_steel = new TMemberGroupSteel(); $s = iconv('UTF-8', 'CP1251', $groups_for_steel->set_to_scad_txt()); $sql = "UPDATE " . document . " SET text = '{$s}' WHERE id = " . D_member_group_for_steel; mysql_query($sql); //собираем документ $today = date("d.m.Y"); header("Content-Disposition: attachment; filename={$today}.txt");
//разбираем группы для подбора стали if (isset($document[D_member_group_for_steel])) { $member_groups_for_steel = new TMemberGroupSteel(); $member_groups_for_steel->get_from_scad_txt($document[D_member_group_for_steel]); echo D_member_group_for_steel . ' - группы элементов для подбора;<br/>'; } echo round(timeMeasure() - $TIMESTART, 6) . ' сек<br/>'; $TIMESTART = timeMeasure(); //разбираем узлы if (isset($document[D_node])) { //замена переносов $document[D_node] = str_replace("\r\n", ' ', $document[D_node]); $document[D_node] = str_replace("\n", ' ', $document[D_node]); //замена двойных пробелов $document[D_node] = preg_replace("|\\s{2,}|", ' ', $document[D_node]); $nodes = new TNode(); $nodes->get_from_scad_txt($document[D_node]); echo D_node . ' - узлы;<br/>'; } echo round(timeMeasure() - $TIMESTART, 6) . ' сек<br/>'; $TIMESTART = timeMeasure(); //разбираем элементы if (isset($document[D_member])) { //замена переносов $document[D_member] = str_replace("\r\n", ' ', $document[D_member]); $document[D_member] = str_replace("\n", ' ', $document[D_member]); //замена двойных пробелов $document[D_member] = preg_replace("|\\s{2,}|", ' ', $document[D_member]); $members = new TMember(); $members->get_from_scad_txt($document[D_member]); echo D_member . ' - элементы;<br/>';