답변 1개 / 댓글 11개
채택된 답변
+20 포인트
에러 메시지 같은거 로그에 남긴단거에요?
검색한 기록을 로그에 남긴다는건가요?
답변에 대한 댓글 11개
텍스트 파일 생성해서 남기면 될거에요
https://devlink.tistory.com/m/361?category=649570
이거 참고해보세요
https://www.google.com/search?q=php+log+%ED%8C%8C%EC%9D%BC+%EB%A7%8C%EB%93%A4%EA%B8%B0&newwindow=1&rlz=1C5CHFA_enKR892KR892&sxsrf=AOaemvKI-P3W8eCBzdBba5SsCLjRZeernQ%3A1634275470377&ei=jhBpYc-dFtPdmAXd-JBQ&oq=php+log+%ED%8C%8C%EC%9D%BC+%EB%A7%8C%EB%93%A4%EA%B8%B0&gs_lcp=Cgdnd3Mtd2l6EAMYATIKCAAQgAQQhwIQFDIKCAAQgAQQhwIQFDIFCAAQgAQyBQgAEIAEMgUIABCABDIFCAAQgAQyBQgAEIAEMgUIABCABDIFCAAQywEyBQgAEMsBOgQIIxAnOgQIABBDOggIABCABBCxAzoECAAQAzoHCAAQsQMQQzoLCAAQgAQQsQMQgwE6DQgAEIAEEIcCELEDEBQ6BggjECcQE0oECEEYAFChjBBY550QYLOsEGgBcAB4AIABjAGIAacIkgEDMC45mAEAoAEBwAEB&sclient=gws-wiz
https://devlink.tistory.com/m/361?category=649570
이거 참고해보세요
https://www.google.com/search?q=php+log+%ED%8C%8C%EC%9D%BC+%EB%A7%8C%EB%93%A4%EA%B8%B0&newwindow=1&rlz=1C5CHFA_enKR892KR892&sxsrf=AOaemvKI-P3W8eCBzdBba5SsCLjRZeernQ%3A1634275470377&ei=jhBpYc-dFtPdmAXd-JBQ&oq=php+log+%ED%8C%8C%EC%9D%BC+%EB%A7%8C%EB%93%A4%EA%B8%B0&gs_lcp=Cgdnd3Mtd2l6EAMYATIKCAAQgAQQhwIQFDIKCAAQgAQQhwIQFDIFCAAQgAQyBQgAEIAEMgUIABCABDIFCAAQgAQyBQgAEIAEMgUIABCABDIFCAAQywEyBQgAEMsBOgQIIxAnOgQIABBDOggIABCABBCxAzoECAAQAzoHCAAQsQMQQzoLCAAQgAQQsQMQgwE6DQgAEIAEEIcCELEDEBQ6BggjECcQE0oECEEYAFChjBBY550QYLOsEGgBcAB4AIABjAGIAacIkgEDMC45mAEAoAEBwAEB&sclient=gws-wiz
php 단 코드를 이렇게 했는데 안됩니다
<?php
$model_code = $_GET['model_code'];
// required headers
header("Access-Control-Allow-Origin: *");
header("Content-Type: application/json; charset=UTF-8");
// include database file
include_once 'mongodb_config.php';
$dbname = 'product';
$collection = 'productAll';
//DB connection
$db = new DbManager();
$conn = $db->getConnection();
// read all records
$filter = ['model_code' => ['$regex' => '^'.$model_code.'$', '$options' => 'i']];
$option = ['limit' => 1];
$read = new MongoDB\Driver\Query($filter, $option);
//fetch records
$records = $conn->executeQuery("$dbname.$collection", $read);
echo json_encode(iterator_to_array($records), JSON_UNESCAPED_UNICODE);
function log_write($str){
//디렉토리 경로
$log_dir = '/var/www/html/estimate/log';
//$log_dir = "/home/root...등의 절대경로 ";
$log_txt = "\r\n";
$log_txt .= '(' . date("Y-m-d H:i:s") . ')' . "\r\n";
$log_txt .= $str;
$log_file = fopen($log_dir . 'search.log', 'a');
fwrite($log_file, $log_txt . "\r\n\r\n");
fclose($log_file);
}
log_write($model_code);
?>
<?php
$model_code = $_GET['model_code'];
// required headers
header("Access-Control-Allow-Origin: *");
header("Content-Type: application/json; charset=UTF-8");
// include database file
include_once 'mongodb_config.php';
$dbname = 'product';
$collection = 'productAll';
//DB connection
$db = new DbManager();
$conn = $db->getConnection();
// read all records
$filter = ['model_code' => ['$regex' => '^'.$model_code.'$', '$options' => 'i']];
$option = ['limit' => 1];
$read = new MongoDB\Driver\Query($filter, $option);
//fetch records
$records = $conn->executeQuery("$dbname.$collection", $read);
echo json_encode(iterator_to_array($records), JSON_UNESCAPED_UNICODE);
function log_write($str){
//디렉토리 경로
$log_dir = '/var/www/html/estimate/log';
//$log_dir = "/home/root...등의 절대경로 ";
$log_txt = "\r\n";
$log_txt .= '(' . date("Y-m-d H:i:s") . ')' . "\r\n";
$log_txt .= $str;
$log_file = fopen($log_dir . 'search.log', 'a');
fwrite($log_file, $log_txt . "\r\n\r\n");
fclose($log_file);
}
log_write($model_code);
?>
생성은 됐습니다!!!
이제 if문에 조건을 줘야하는데 몽고디비 조회 값이 없을때만 사용해야합니다
// read all records
$filter = ['model_code' => ['$regex' => '^'.$model_code.'$', '$options' => 'i']];
$option = ['limit' => 1];
$read = new MongoDB\Driver\Query($filter, $option);
//fetch records
$records = $conn->executeQuery("$dbname.$collection", $read);
echo json_encode(iterator_to_array($records), JSON_UNESCAPED_UNICODE);
if(???????) {
$dir = "/var/www/html/estimate/log". date('Y/n/d');
if(!is_dir($dir))
{
mkdir($dir,0777,true);
chmod($dir,0777,true);
}
$log_txt = date('Y_m_d_H:i:s') . ' | '. '검색모델명'. ' : '.$model_code;
$log_dir = $dir."/";
$file_name = date('Y_m_d');
$log_file = fopen($log_dir."/".$file_name.".txt", "a");
fwrite($log_file, $log_txt."\r\n");
fclose($log_file);
}
이제 if문에 조건을 줘야하는데 몽고디비 조회 값이 없을때만 사용해야합니다
// read all records
$filter = ['model_code' => ['$regex' => '^'.$model_code.'$', '$options' => 'i']];
$option = ['limit' => 1];
$read = new MongoDB\Driver\Query($filter, $option);
//fetch records
$records = $conn->executeQuery("$dbname.$collection", $read);
echo json_encode(iterator_to_array($records), JSON_UNESCAPED_UNICODE);
if(???????) {
$dir = "/var/www/html/estimate/log". date('Y/n/d');
if(!is_dir($dir))
{
mkdir($dir,0777,true);
chmod($dir,0777,true);
}
$log_txt = date('Y_m_d_H:i:s') . ' | '. '검색모델명'. ' : '.$model_code;
$log_dir = $dir."/";
$file_name = date('Y_m_d');
$log_file = fopen($log_dir."/".$file_name.".txt", "a");
fwrite($log_file, $log_txt."\r\n");
fclose($log_file);
}
답변을 작성하려면 로그인이 필요합니다.