답변 5개 / 댓글 4개
채택된 답변
+20 포인트
2019-10-03 (목) 01:57:48
회원일 경우 충분히 구현할 수 있지만, 비회원일 경우 해당 글을 적은 사람인지 판단할 기준이 문제입니다. 대안으로 글작성자의 비밀번호로 조회하는 방법도 있을 것 같긴 합니다마는 정확한 조회가 가능할 지 고민입니다.
답변에 대한 댓글 1개
2019-10-03 (목) 02:08:28
답변감사합니다
2019-10-03 (목) 11:21:53
네 그렇네요 모바일환경에서 ip는 유동적이라서
다른 글썻다는 유니크한 정보를 쿠키든 db등 남기시는게 좋을것 같습니다.
답변에 대한 댓글 1개
2019-10-03 (목) 19:26:00
db로 처리하는 것은, 일단 write.skin.php를 먼저 출력해주기 때문에 무리일 것 같구요ㅠㅠ 쿠키 같은 경우는 한 번도 쿠키를 이용해본 적이 없어서ㅠㅠ 더 공부를 하고 대처하려고 합니다!
Copy
<?php
if ($w != 'u') {
$sql = " SELECT count(*) as cnt FROM $write_table WHERE wr_ip = '$_SERVER[REMOTE_ADDR]' AND datediff(wr_datetime , now()) = 0 AND wr_is_comment ='0' HAVING count(*) >= 1";
$row = sql_fetch($sql);
if ($row['cnt']) { //a시작
?>
<script>
$(document).ready(function(){
var result = confirm('이전에 작성한 글이 있습니다. 목록으로 갈까요?');
if(result == true){
location.replace('글 목록');
}
});
</script>
<?php } // a종료
}
?>
심심해서 코드 정리해봤어용.ㅎ
답변에 대한 댓글 1개
2019-10-03 (목) 02:36:45
항상 질답을 올리면 해결하네요^^;;
이렇게 해결했습니다.
write.skin.php 상단에
Copy
if ($w != 'u') {
$sql = " select count(*) as cnt from $write_table where wr_ip = '$_SERVER[REMOTE_ADDR]' and datediff(wr_datetime , now()) = 0 AND wr_is_comment ='0' having count(*) >= 1";
$row = sql_fetch($sql);
if ($row[cnt]) {
echo "<script>
$(document).ready(function(){
var result = confirm('이전에 작성한 글이 있습니다. 목록으로 갈까요?');
if(result == true)
{
location.replace('글 목록');
}
});
</script>";
}
}
답변에 대한 댓글 1개
유진201907
2019-10-03 (목) 02:38:25
고생하셨습니다.
아이피로 기준을 잡으면 모바일처럼 아이피가 바뀌는 유동 아이피는 문제가 있을 것 같아요!
아이피로 기준을 잡으면 모바일처럼 아이피가 바뀌는 유동 아이피는 문제가 있을 것 같아요!
답변을 작성하려면 로그인이 필요합니다.
코드를 좀 짜집기 해봤는데..
[code]
if ($w != 'u') {
$sql = " select count(*) as cnt from $write_table where wr_ip = '$_SERVER[REMOTE_ADDR]' and datediff(wr_datetime , now()) = 0 AND wr_is_comment ='0' having count(*) >= 1";
$row = sql_fetch($sql);
if ($row[cnt]) {
$alert ="<script>
$(document).ready(function() {
if(confirm('이전에 작성한 글이 있습니다. 글 목록으로 넘어갈까요?'))
{
location.href='글 목록 주소';
}
});
</script>";
}
return $alert;
}
[/code]
write.skin 자체가 씹히네요ㅠㅠㅠ뭐가 문제인지ㅠㅠ