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

여분필드추가 오류납니다 채택완료

e편한 1년 전 조회 2,250

            bbs/  write_update.php  파일에 아래부분    wr_10 = '$wr_10', 이하추가변경하였고

 

                       wr_8 = '$wr_8',
                     wr_9 = '$wr_9',
                     wr_10 = '$wr_10',
                       wr_11 = '$wr_11',
                     wr_12 = '$wr_12',
                     wr_13 = '$wr_13',
                     wr_14 = '$wr_14',
                     wr_15 = '$wr_15',
                     wr_16 = '$wr_16',
                     wr_17 = '$wr_17',
                     wr_18 = '$wr_18',
                     wr_19 = '$wr_19',
                     wr_20 = '$wr_20' ";
    sql_query($sql);

 

 

또한 아래부분도 아래처럼    wr_10= '{$wr_10}', 이하추가 변경

   wr_6 = '{$wr_6}',
                     wr_7 = '{$wr_7}',
                     wr_8 = '{$wr_8}',
                     wr_9 = '{$wr_9}',
                     wr_10= '{$wr_10}',
                      wr_11 = '{$wr_11}',
                     wr_12 = '{$wr_12}',
                     wr_13 = '{$wr_13}',
                     wr_14 = '{$wr_14}',
                     wr_15 = '{$wr_15}',
                     wr_16 = '{$wr_16}',
                     wr_17 = '{$wr_17}',
                     wr_18 = '{$wr_18}',
                     wr_19 = '{$wr_19}',
                     wr_20= '{$wr_20}'
                     {$sql_ip}
                     {$sql_password}
              where wr_id = '{$wr['wr_id']}' ";

 

 

이렇게 추가하였는데

글쓰기 하면 저장이 안됩니다

어디가 에러나는걸까요?

 

adm/sql_write.sql  파일도 수정하였고

bbs/write.php  파일도 수정하였습니다. 

sql 파일 수정하지않고 글쓰기는 잘되는데(여분필드는 여전히 입력은 되지않음)

위에 처럼 sql 수정 올리면

bbs/board.php?bo_table=qa&wr_id=0

처럼 =0 으로되면서 

글쓰기 입력자체가 안되고 index 화면으로 되돌아갑니다 

 

sql_write.sql 은 아래처럼 변경 시켰습니다

  `wr_8` varchar(255) NOT NULL,
  `wr_9` varchar(255) NOT NULL,
  `wr_10` varchar(255) NOT NULL,
  `wr_11` varchar(255) NOT NULL,
  `wr_12` varchar(255) NOT NULL,
  `wr_13` varchar(255) NOT NULL,
  `wr_14` varchar(255) NOT NULL,
  `wr_15` varchar(255) NOT NULL,
  `wr_16` varchar(255) NOT NULL,
  `wr_17` varchar(255) NOT NULL,
  `wr_18` varchar(255) NOT NULL,
  `wr_19` varchar(255) NOT NULL,
  `wr_20` varchar(255) NOT NULL,

 

 

 

bbs/write.php 도 아래처럼 수정

 

    if ($write['wr_id']) {
        // 가변 변수로 $wr_1 .. $wr_10 까지 만든다.
        for ($i=1; $i<=20; $i++) {
            $vvar = "wr_".$i;
            $$vvar = $write['wr_'.$i];
        }

 

 

이것말고 다른데 수정할때가 있을까요?

 

 

 

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

답변 5개

채택된 답변
+20 포인트

https://gnustudy.com/bbs/board.php?bo_table=skin_board&wr_id=31

스킨 폴더 안에 write_update.skin.php 파일을 새로 생성하고 내용은 이렇게 하세요.

 

<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
$sql = " update $write_table
            set wr_11 = '$wr_11',
                 wr_12 = '$wr_12',
                 wr_13 = '$wr_13',
                 wr_14 = '$wr_14',
                 wr_15 = '$wr_15',
                 wr_16 = '$wr_16',
                 wr_17 = '$wr_17',
                 wr_18 = '$wr_18',
                 wr_19 = '$wr_19',
                 wr_20 = '$wr_20'
          where wr_id = '$wr_id' ";
sql_query($sql);
?>

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

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

n
1년 전

추가 피해자 방지 https://sir.kr/conflictconsultation/245" rel="nofollow noreferrer noopener" target="_blank">https://sir.kr/conflictconsultation/245

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

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

복스리
1년 전

phpMyAdmin을 사용하실줄 모르시면 아래와 같은 내용의 코드를 추가 해주시면 자동으로 컬럼이 생성됩니다.

 

</p>

<p>if(!sql_query(" SELECT wr_10 from $write_table limit 1 ", false)) {

    sql_query(" ALTER TABLE $write_table

                ADD wr_10 VARCHAR(255) NOT NULL ,

                ADD wr_11 VARCHAR(255) NOT NULL ,

                ADD wr_12 VARCHAR(255) NOT NULL ,

                ADD wr_13 VARCHAR(255) NOT NULL ,

                ADD wr_14 VARCHAR(255) NOT NULL ,

                ADD wr_15 VARCHAR(255) NOT NULL ,

                ADD wr_16 VARCHAR(255) NOT NULL ,

                ADD wr_17 VARCHAR(255) NOT NULL ,

                ADD wr_18 VARCHAR(255) NOT NULL ,

                ADD wr_19 VARCHAR(255) NOT NULL ,                

                ADD wr_20 VARCHAR(255) NOT NULL ", true);

}</p>

<p>

 

신규 컬럼을 추가하여 사용하는 페이지 상단에 넣으셔서 해보시기 바랍니다.

 

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

답변에 대한 댓글 2개

e
e편한
1년 전
답변 감사드립니다 어디에 붙여넣어야 하는지요 skin 폴더안의 파일에 넣어야 하나요
복스리
1년 전
skin 폴더에 있는 파일중에 붙혀 놓으시면 됩니다.

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

s
sinbi Expert
1년 전

phpmyadmin 접속해 실제로 값이 들어갈 컬럼들이 만들어져 있는지 체크해 보세요.

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

답변에 대한 댓글 1개

e
e편한
1년 전
phpmyadmin 말고 추가하는 방법이 없나요?

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

유찬아빠

            where wr_id = '{$wr['wr_id']}' "; 가 아니라
            where wr_id = '{$write['wr_id']}' "; 가 아닐까요?

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

답변에 대한 댓글 2개

e
e편한
1년 전
write_update.php 를 건드리지않고 11-20까지 추가한것뿐입니다.
유찬아빠
1년 전
수정시에 사용하는 변수는 $wr 이건 따로 선언하지 않는한 값이 없는 빈 변수입니다.
그리고 수정 글의 정보는 $write 여기에 담기게 됩니다.

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

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

로그인