테스트 사이트 - 개발 중인 베타 버전입니다

ajax 사용시 로그를 서버에 저장하려는데 어떻게 하나요?? 채택완료

choco5958 4년 전 조회 1,787

else {

                        $('#load').show();

                        setTimeout(function() {

                            $('#result').hide();

                            $('#load').hide();

                            alert('검색하신 모델명이 없습니다.');

                            $('#fail_guide').show();

                        },3000);    

                    }

 

이 부분에 검색했던 문자열을 로그 파일로 저장하려고합니다

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트

에러 메시지 같은거 로그에 남긴단거에요?

검색한 기록을 로그에 남긴다는건가요?

로그인 후 평가할 수 있습니다

답변에 대한 댓글 11개

c
choco5958
4년 전
검색한 기록을 로그에 남기려고합니다
릴보이즈
4년 전
텍스트 파일 생성해서 남기면 될거에요
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
c
choco5958
4년 전
조건문이 javascript로 되어있는거라 php 실행이 될까ㅓ요?
릴보이즈
4년 전
ajax를 사용한다고 하셨잖아요? 그럼 검색한 모델 을 php 단에 보내서 로그에 쌓을수밖에 없어요
c
choco5958
4년 전
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);
?>
릴보이즈
4년 전
퍼미션 권한도 주셔야되요
mb_dir << 이건 경로 이구요
@mkdir($mb_dir,707);
@chmod($mb_dir, 707);
c
choco5958
4년 전
퍼미션도 줬는데 안되네요ㅠ
릴보이즈
4년 전
그러면 직접 권한을 주세요
리눅스 서버 접속해서 chmod 707 파일명
아니면 파일질라 접속해서 권한을 주면되요
응용 해보세요
c
choco5958
4년 전
파일질라 통해서도 변경했는데 안되네요ㅎㅎ
너무 어렵네요
릴보이즈
4년 전
ajax를 실행 했는지... 차라리 저 로그부분만 index.php에 넣어서 실행해보세요
c
choco5958
4년 전
생성은 됐습니다!!!
이제 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);
}

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인