여분필드추가 오류납니다

여분필드추가 오류납니다

QA

여분필드추가 오류납니다

답변 5

본문

            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

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);
?>

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

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

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

 


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);
}

 

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

 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 61,345
© SIRSOFT
현재 페이지 제일 처음으로