덧글 ip 표시 문의

안녕하세요.

 

덧글 ip를 표시하기 위해 스레드 답변을 참고하여 다음과 같이 수정했는데 덧글이 아예 나오질 않습니다. 

어디를 수정해야 하는지요?

 

KBCommentList.class.php 파일의 add() 메소드 부분

public function add($parent_uid, $user_uid, $user_display, $content, $password=''){
        global $wpdb;
        $content_uid = $this->content_uid;
        $parent_uid = intval($parent_uid);
        $user_uid = intval($user_uid);
        $user_display = addslashes(kboard_xssfilter(kboard_htmlclear(trim($user_display))));
        $content = addslashes(trim($content));
        $password = addslashes(kboard_xssfilter(kboard_htmlclear(trim($password))));
        $created = current_time('YmdHis');
        $ip = $_SERVER['REMOTE_ADDR'];
        
        $wpdb->query("INSERT INTO `{$wpdb->prefix}kboard_comments` (`content_uid`, `parent_uid`, `user_uid`, `user_display`, `content`, `created`, `password`, 'ip') VALUE ('$content_uid', '$parent_uid', '$user_uid', '$user_display', '$content', '$created', '$password', 'ip')");

 

index.php

function kboard_comments_activation_execute(){
    global $wpdb;
    
    $wpdb->query("CREATE TABLE IF NOT EXISTS `{$wpdb->prefix}kboard_comments` (
        `uid` bigint(20) unsigned NOT NULL auto_increment,
        `content_uid` bigint(20) unsigned NOT NULL,
        `parent_uid` bigint(20) unsigned default NULL,
        `user_uid` bigint(20) unsigned default NULL,
        `user_display` varchar(127) default NULL,
        `content` longtext NOT NULL,
        `created` char(14) NOT NULL,
        `password` varchar(127) default NULL,
        `ip` varchar(127) default NULL,

 

list.php

<!-- 댓글 입력 폼 시작 -->
        <form id="kboard_comments_form" method="post" action="<?php echo $commentURL->getInsertURL()?>" onsubmit="return kboard_comments_execute(this);">
            <input type="hidden" name="content_uid" value="<?php echo $commentList->content_uid?>">
            <input type="hidden" name="member_uid" value="<?php echo $member_uid?>">
            <div class="kboard-comments-form">        
                <div class="comments-ip">
                    <input type="hidden" id="comments_ip" name="ip" value="<?php echo $commentList->ip?>">
                </div>

                <?php if(is_user_logged_in()):?>
                <input type="hidden" name="member_display" value="<?php echo $userdata->display_name?>">

 

list-template.php

 

<div class="comments-list-username" itemprop="author"><?php echo $comment->user_display?></div>
            <div class="comments-list-create" itemprop="dateCreated"><?php echo date("Y-m-d H:i", strtotime($comment->created))?></div>
            <div class="comments-list-ip" itemprop="ip"><?php echo $comment->ip?></div>

 

감사합니다.

꾸벅

 

 

 

 

 

좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
  • 오타가 난듯합니다.

     

    $ip = $_SERVER['REMOTE_ADDR'];

    $wpdb->query("INSERT INTO `{$wpdb->prefix}kboard_comments` (`content_uid`, `parent_uid`, `user_uid`, `user_display`, `content`, `created`, `password`, 'ip') VALUE ('$content_uid', '$parent_uid', '$user_uid', '$user_display', '$content', '$created', '$password', 'ip')");

     

    위쪽 ip가 아니라 아래처럼 $ip여야 합니다.

     

    $ip = $_SERVER['REMOTE_ADDR'];

    $wpdb->query("INSERT INTO `{$wpdb->prefix}kboard_comments` (`content_uid`, `parent_uid`, `user_uid`, `user_display`, `content`, `created`, `password`, 'ip') VALUE ('$content_uid', '$parent_uid', '$user_uid', '$user_display', '$content', '$created', '$password', '$ip')");

     

    그리고 출력이 안되는것인지 DB에 값이 저장되는 않는것인지 확인 해보세요.

    list.php 파일은 수정하실건 없습니다. (ip는 직접 입력하는 값이 아니기 때문에)

    list-template.php 파일에서 정상적으로 출력되는지 <?php print_r($comment)?> 이 코드를 내용 앞에 추가해서 테스트 해주세요.

    list-template.php 파일에서 itemprop="ip" 속성은 필요 없습니다^^

  • 제안해 주신 대로 KBCommentList.class.php 파일의 add() 메소드 부분을 수정하고 index.php 파일은 그대로 두고 list.php 파일은 원래대로 바꾸고 list-template.php 파일은 <div class="comments-list-ip"><?php print_r($comment)?><?php echo $comment->ip?></div>로 수정했더니 덧글이 작동을 하지 않네요 ㅠㅠㅠ 

  • 원인을 찾아야 할텐데

    DB입력은 확인해보셨나요?

    kboard_comments 테이블에 아이피가 입력이 되는지 확인부터 해보시겠어요?

    <?php print_r($comment)?> 이건 그냥 확인용입니다.

    확인이 끝났다면 지워주세요 ㅎㅎ

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요