Data from Database



0) { // for ($n = 0; $n < count($Data); $n++) { // $GetLine = explode("\t", $Data[$n]); // } // } // fclose ($Open); if ($CountData > 400) { // Открываем файл для получения хвоста существующего содержимого $offset = $CountData - 399; $current = file_get_contents($TheFile,NULL,NULL,$offset); // Пишем полученное содержимое обратно в файл file_put_contents($TheFile, $current); //ОК - запись прошла print ("$Date\tOK. Reduce database in $TheFile!
\n"); } } } //проверить наличие параметра $out (признак управления выходом/записи в файл с признаком "hum") if (isset($_GET["out"])) {//если есть, то $out1 = substr($_GET["out"],0,1); //берем только первый символ if ($out1 == "0" OR $out1 == "1") { //проверим корректность данных: может быть только 0 или 1 $in1 = 2; //признак "не знаю" $temp1 = 99; //признак "не знаю" // открыть файл для записи и $Open = fopen ($TheFile, "a"); // добавляем новую запись (если получится) if ($Open) // записать новую строку с этим признаком и данными {fwrite ($Open, "$Date\t$WhoWrite\t$in1\t$out1\t$temp1\n"); fclose ($Open); //ОК - запись прошла print ("$Date\tOK. Data \"$out1\" write to $TheFile!
\n"); } else { //ошибка - не открылся файл на запись print ("$Date\tUnable to write to $TheFile!<\B>
\n"); } } } print ("
Date and Time now is: $Date

\n"); //прочитаем файл данных $Open = fopen ($TheFile, "r"); //открываем файл для чтения if ($Open) { //если успешно, то $Data = file ($TheFile); //читаем данные из файла if (count($Data) > 0) { for ($n = 0; $n < count($Data); $n++) { $GetLine = explode("\t", $Data[$n]); } } fclose ($Open); //вывод на экран поседних 10 строк и информации об общем числе строк в файле $nstr = 10; for ($n = 0; $n < count($Data); $n++) { $m = count($Data) - $n - 1; $GetLine = explode("\t", $Data[$m]); print("$GetLine[0]\t$GetLine[1]\t$GetLine[2]\t$GetLine[3]\t$GetLine[4]
\n"); $nstr--; if ($nstr == 0) { break; } } $nstr = count($Data); print("
In $TheFile $nstr string(s)
\n"); //вывод итоговой строки: "Now Temperature= Input=<> Output Recive=<> Output Send=<> // для этого найдем последнюю запись Устройства $IsFind = FALSE; for ($n = 0; $n < count($Data); $n++) { $m = count($Data) - $n - 1; $GetLine = explode("\t", $Data[$m]); if ($GetLine[1] == "dev") { $IsFind = TRUE; break; } } if ($IsFind) { // здесь recive - то что было принято от Устройства в последний раз print ("Last record from device: $GetLine[0]\tINPUT = $GetLine[2]\tOUTPUT RECIVE = $GetLine[3]
\n"); print ("\tTEMPERATURE = $GetLine[4]
\n"); } else {print ("$Date\tData from device is not in $TheFile!
\n"); } // send - то что было послано на Устройство в последний раз // для этого найдем последнюю запись Человека $IsFind = FALSE; for ($n = 0; $n < count($Data); $n++) { $m = count($Data) - $n - 1; $GetLine = explode("\t", $Data[$m]); if ($GetLine[1] == "hum") { $IsFind = TRUE; break; } } if ($IsFind) { // здесь send - то что было послано на Устройство в последний раз print ("Last record from human: $GetLine[0]\tOUTPUT SEND = $GetLine[3]
\n"); } else {print ("$Date\tData from human is not in $TheFile!
\n"); } } else { //если ошибка открытия файла - информация об ошибке - выход print ("$Date\tUnable to read from $TheFile!
\n"); } print ("


\n"); //отделим дальнейшее //проверим наличие параметра $psw (признак входа в режиме управления) if (isset($_GET["psw"])) { //если есть и пароль совпадает с заданным, то if ($_GET["psw"] == "123") { //$psw = $_GET["psw"]; // нарисовать форму управления Output и кнопочку Send(Submit) (формировать запрос GET с параметром out= к этой же форме) //print ("psw=$psw... in this place will be form for input data...
\n"); print ("
"); print ("Output set to "); print (""); print ("


"); // нарисовать форму управления для команды сокращения базы и кнопочку Cut(Cut) (формировать запрос GET с параметром cut=Cut к этой же форме) print ("
"); print ("Reduce database "); print (""); print ("


"); } } ?>