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

게시판 첫 페이지는 write로 연결하고, 글 작성한 사람일 시 목록으로 넘겨주는 법 ㅠㅠ 채택완료

midm 6년 전 조회 3,080

비회원도 가능하도록 하고 싶습니다... 그러면 쿠키를 구워야 하나요? 어떤 걸 선택해야 할지ㅠㅠㅠ

 

혹시 관련 팁이나 질문글 있으면 알려주실 수 있을까요. 제 검색 실력으론 도저히 못 찾겠네용 ㅠㅠ

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

답변 5개

채택된 답변
+20 포인트

회원일 경우 충분히 구현할 수 있지만, 비회원일 경우 해당 글을 적은 사람인지 판단할 기준이 문제입니다. 대안으로 글작성자의 비밀번호로 조회하는 방법도 있을 것 같긴 합니다마는 정확한 조회가 가능할 지 고민입니다.

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

답변에 대한 댓글 1개

m
midm
6년 전
일단은 write.skin.php를 들어갔을때 바로 아이피 검사해서 alert 띄우는 쪽으로 가려고 합니다.
코드를 좀 짜집기 해봤는데..

[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 자체가 씹히네요ㅠㅠㅠ뭐가 문제인지ㅠㅠ

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

bong123
6년 전

답변감사합니다

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

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

6년 전

네 그렇네요 모바일환경에서 ip는 유동적이라서

다른 글썻다는 유니크한 정보를 쿠키든 db등 남기시는게 좋을것 같습니다. 

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

답변에 대한 댓글 1개

m
midm
6년 전
db로 처리하는 것은, 일단 write.skin.php를 먼저 출력해주기 때문에 무리일 것 같구요ㅠㅠ 쿠키 같은 경우는 한 번도 쿠키를 이용해본 적이 없어서ㅠㅠ 더 공부를 하고 대처하려고 합니다!

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

s
sinbi Expert
6년 전

</p>

<p><?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></p>

<p><?php } // a종료

}

?></p>

<p>

 

심심해서 코드 정리해봤어용.ㅎ

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

답변에 대한 댓글 1개

m
midm
6년 전
감사합니다 ㅎㅎㅎ 훨씬 깔끔하네요!!

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

m
6년 전

항상 질답을 올리면 해결하네요^^;;

이렇게 해결했습니다.

 

write.skin.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]) {

            echo "<script>

            $(document).ready(function(){

            

            var result = confirm('이전에 작성한 글이 있습니다. 목록으로 갈까요?');

            if(result == true)

            {

location.replace('글 목록');

            }

            });

</script>";

        }

}

 </p>

<p>

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

답변에 대한 댓글 1개

유진201907
6년 전
고생하셨습니다.
아이피로 기준을 잡으면 모바일처럼 아이피가 바뀌는 유동 아이피는 문제가 있을 것 같아요!

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

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

로그인