|
|
|
อ่านFile วันที่+เวลา+ผลลัพธ์ ทั้งหมดในFloderแล้วส่งไปที่ database ครับ |
|
|
|
|
|
|
|
ติดปัญหาตรงส่วนไหนครับ
|
|
|
|
|
Date :
2018-08-27 16:30:57 |
By :
apisitp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?php
$objConnect = mysql_connect("localhost","root","cthict") or die("Error Connect to Database");
$objDB = mysql_select_db("ICT FIXTURE");
$strFileName = "2018_08_15.log";
$objFopen = fopen($strFileName, 'r');
if ($objFopen)
{
while (!feof($objFopen))
{
$file = fgets($objFopen);
}
fclose($objFopen);
}
$file=" ".$file;
$aa=strlen($file);
$ab=6;
while($aa>$ab)
{
$ac=substr($file,1,26);
list($Date,$Time,$Result)=explode(" ",$ac);
//echo $ac."<br>";
echo $Date."<br>";
echo $Time."<br>";
echo $Result."<br>";
//*****************add to DB
//$objConnect = mysql_connect("localhost","root","cthict") or die("Error Connect to Database");
//$objDB = mysql_select_db("ICT FIXTURE");
$strSQL = "INSERT INTO vacuumgate01 ";
$strSQL .="(Date,Time,Result) ";
$strSQL .="VALUES ";
$strSQL .="('".$Date."','".$Time."','".$Result."') ";
$objQuery = mysql_query($strSQL);
//************************
$file=str_replace($ac,"",$file);
$aa=strlen($file);
}
?>
อันนี้โค้ดที่ใช้ รันครับ
|
|
|
|
|
Date :
2018-08-27 16:31:15 |
By :
bankbass |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ติดปัญหาส่วนที่ อยากจะอ่านไฟล์ ใน folder ทีละไฟล์ แล้วส่งขึ้น data base ครับ
|
|
|
|
|
Date :
2018-08-27 16:35:21 |
By :
bankbass |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
code อ่านไฟล์มันก็ประมาณนี้ แล้วติดปัญหายังไง อ่านไม่ได้ อ่านได้ insert ไม่เข้า...
ทำใจโล่งๆ ค่อยๆ นึกว่ามันเกิดอะไรครับ .... ใจเย็นๆ นะ
แล้วจริงๆใน 2018_08_15.log เก็บอะไร แล้วมันเปิดอ่านได้จริงไหม
- การอ่านที่ละไฟล์ ในโฟลเดอร์ทั้งหมด น่าจะต้องเริ่ม นับจำนวนไฟล์ พอได้แล้วก็วนลูปไฟล์มาอ่าน
ลองหาวิธี list รายการ/ชื่อไฟล์จากโฟลเดอร์ด้วย php ก่อน แล้วค่อยมาไล่อ่าน
ถ้าหางานเก่าเจอจะมา edit ให้อีกรอบ
|
ประวัติการแก้ไข 2018-08-28 09:04:37
|
|
|
|
Date :
2018-08-28 09:01:58 |
By :
apisitp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ครับ ขอบคุณครับ Mr.กล้า
|
|
|
|
|
Date :
2018-08-28 09:57:20 |
By :
bankbass |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อันนี้คือข้อมูลในไฟล์ครับ
|
|
|
|
|
Date :
2018-08-28 10:05:21 |
By :
bankbass |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไปนั่งหามา 3 ชม. ไม่เจอจริงๆ......ลองดูเอาเลยครับ
ตามที่แนะนำไปเลยครับ คำค้นก็พวก List files and directories
ตย.http://php.net/manual/en/function.scandir.php
คำสั่งใน ตย.ก็ได้พวก array ตัด . กับ .. ออกไป แล้วไปนับจำนวน
ได้จำนวนก็มาวนลูป เรียกไฟล์ทีละตัว insert ที่ละรอบ
น่าจะมองแนวคิดออกนะครับ
|
|
|
|
|
Date :
2018-08-28 10:50:58 |
By :
apisitp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ข้างล่างเป็นตัวอย่างการ ลบไฟล์ ทั้ง folder ลองศึกษาเป็นตัวอย่างดูครับ เขียนไว้ 10 กว่าปีแล้ว
ปล. แก้ช๊อตแท็ก เอาด้วยนะครับ 555
Code (PHP)
<?PHP
if(isset($_GET['file'])){
echo str_replace("\n","<br />", htmlspecialchars(str_replace('><',">\n<", implode('', file($_GET['file'])))));
exit;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> Critical Erase </title>
<meta name="generator" content="editplus" />
<meta name="author" content="Chaidhanan Pisalsenadhanachote" />
<meta http-equiv="Content-Type" content="text/html; charset=tis-620" />
<style type='text/css'>
a{color: #0000FF; text-decoration: none;}
a:visited{color: #0000FF; text-decoration: none;}
a:hover{color: #00bbbb; text-decoration: none;}
</style>
</head>
<body>
<font style="color:red;background-color:yellow;font-weight: bold"> !!!! คำเตือน !!!! </font><br />
<font style="color:yellow;background-color: red"> การลบ Directory อาจทำให้ข้อมูลของท่าน สูญหายได้ </font><br />
<font style="color: #99FFFF;background-color: blue"> IP: <?php echo $_SERVER['REMOTE_ADDR'];?> </font><br />
<br />
<?php
if(preg_match('/^192\.168\.20/', $_SERVER['REMOTE_ADDR'])){
function erase_dir($dir) {
foreach (glob($dir.'/*') as $filename) {
chmod($filename, 0777);
if(is_dir($filename)) { erase_dir($filename); echo "Erase Dir $filename<br />"; rmdir($filename); }
else { echo "Erase File $filename<br />"; unlink($filename); }
}
}
if(isset($_POST['action']) && isset($_POST['url']) && isset($_POST['parent'])){
$c_url=count($_POST['url']);
for($ii=0; $ii<$c_url; $ii++) {
$z=$_POST['url'][$ii]; chmod($z, 0777);
if(is_dir($z)) { erase_dir($z); echo "Erase Dir $z<br />"; rmdir($z); }
else { echo "Erase File $z<br />"; unlink($z); }
}
}
///////////////////////////////////////////////////////////
$parent=isset($_GET['parent'])? $_GET['parent'] : (isset($_POST['parent'])? $_POST['parent'] :'.');
$c_d=0; $c_f=0; $d=array(); $f=array();
foreach (glob($parent.'/*') as $filename) {
if(is_dir($filename)){ $d[$c_d]=$filename; $c_d++; }
else { $f[$c_f]=$filename; $c_f++; }
}
?>
<form method="post" action="">
<input type="hidden" name="parent" value="<? echo "$parent";?>"/>
<?
echo '<a href="?parent=.">hk_log</a><br />';
if($parent>'.'){
$a=explode('/', $parent); $c_a=count($a); //unset($a[$c_a]); $z=implode('/', $a);
$z=$a[0]; $y=' ';
for($ii=1; $ii<$c_a; $ii++) {
$z.='/'.$a[$ii];
echo $y.'<a href="?parent='.$z.'">'.$a[$ii].'</a><br />';
$y.=' ';
}
}
for($ii=0; $ii<$c_d; $ii++){
$a=explode('/', $d[$ii]); $c_a=count($a)-1;
echo $y.'<input type="checkbox" name="url[]" value="'.$d[$ii].'" /><a href="?parent='.$d[$ii].'">['.$a[$c_a].']</a><br />';
}
for($ii=0; $ii<$c_f; $ii++){
$a=explode('/', $f[$ii]); $c_a=count($a)-1;
echo $y.'<input type="checkbox" name="url[]" value="'.$f[$ii].'" /><a href="?file='.$f[$ii].'" target="_blank">'.$a[$c_a].'</a><br />';
}
}else{
echo 'There is not trustee for U.';
//header('location: http://www.guideball.com');
}
?>
<br />
<input type="submit" name="action" value="Erase"/>
</form>
</body>
</html>
|
ประวัติการแก้ไข 2018-08-28 16:45:05
|
|
|
|
Date :
2018-08-28 16:41:02 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณพี่ๆ มากเลยนะครับ ผมจะศึกษาแล้วรายงานผลครับ
|
|
|
|
|
Date :
2018-08-29 09:03:46 |
By :
bankbass |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมลองใช้ scandir แล้วครับ แต่ผมจะใส่ loop ยังไงให้ อ่านข้อมูลออกมา ครับ
|
|
|
|
|
Date :
2018-08-30 09:09:45 |
By :
bankbass |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?php
$path = __DIR__ . '/test/';// แก้เอาเองนะ
$path = realpath($path);
$rdi = new \RecursiveDirectoryIterator($path, \RecursiveDirectoryIterator::KEY_AS_PATHNAME|\FilesystemIterator::SKIP_DOTS);
$rii = new \RecursiveIteratorIterator($rdi, \RecursiveIteratorIterator::SELF_FIRST);
$files = array();
foreach ($rii as $file) {
//echo $file->getPath().' ';// test/folder/folder
echo $file->getPathname() . ' ';// test/folder/folder/file
//echo $file->getFilename() . ' ';
if ($file->isDir()) {
echo '<br>' . PHP_EOL;
echo 'This is folder, not file.';
}
echo '<br>' . PHP_EOL;
echo ' changed at ' . $file->getCTime() . ' (' . date('Y-m-d H:i:s', $file->getCTime()) . ')<br>' . PHP_EOL;
echo ' modified at ' . $file->getMTime() . ' (' . date('Y-m-d H:i:s', $file->getMTime()) . ')';
echo '<br>' . PHP_EOL;
echo '<br>' . PHP_EOL;
}
เอาไปทดลองรันให้รู้ว่าอะไรเป็นอะไรเสียก่อน แล้วที่เหลือก็คงเอาไป insert db ได้ไม่ยากหรอกมั้ง?
|
ประวัติการแก้ไข 2018-08-30 11:55:40 2018-08-30 11:56:37
|
|
|
|
Date :
2018-08-30 11:55:02 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ครับ ผม คุณ mr.v ผมทำได้แล้วครับ
|
|
|
|
|
Date :
2018-08-30 17:17:18 |
By :
bankbass |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|