엑셀 업로드 질문 드립니다.

2024-01-05 (금) 15:36:25 2,016

Fatal error: Uncaught Error: Undefined constant "ex_type" in /finenuts05/www/skin/board/basic/excel_free_up2.php:11 Stack trace: #0 {main} thrown in /finenuts05/www/skin/board/basic/excel_free_up2.php on line 11

이런 에러가 나와서 원인은 찾았습니다..
excel_up1에서 신규파일의 라디오 체크값을 못 넘겨서 그러는거 같은데..
아무리해도 저 라디오 버튼이 활성화가 안되서 이도저도 못하는 상황입니다..

저 부분이 문제 인건지..
아니면 다른 문제가 있는건지..
알려주실 수 있나요.. ㅠ
237007248_1704436362.3192.png
excel_up1

Copy
<?php

include_once("_common.php");

$g5['title'] = "엑셀 업로드";

include_once(G5_PATH.'/_head.php');

?>

<style>

.new_excel{border-radius:20px;background:#fff;box-shadow:rgba(149, 157, 165, 0.1) 0px 8px 24px; padding:20px 20px 20px 20px; margin-top:20px;}

.new_excel h1{margin:10px 0;}

.excel_info {margin-bottom:10px; line-height:18px;}

.btn_confirm {margin-top:15px;}

.excel_desc{margin-top: 50px;}

.excel_desc .excel_tit{font-size: 1.333em;font-weight:700;}

.excel_desc .excel_con{margin-bottom:50px;margin-top: 20px;}

.excel_desc .excel_con p{padding-bottom: 10px;line-height:26px;}

.excel_desc .excel_con img{width: 100%;border:1px solid #ccc;}

</style>

 

<div class="new_excel">

    <h1><?php echo $g5['title']?></h1>

 

    <div class="excel_info">

        <p>

            엑셀파일을 저장하실 때는 <strong>Excel 97 - 2003 통합문서 (*.xls)</strong> 로 저장하셔야 합니다.

        </p>

    </div>

 

    <form name="fitemexcelup" id="fitemexcelup" method="post" action="./excel_company_up2.php" enctype="MULTIPART/FORM-DATA" autocomplete="off">

    <input type="hidden" name="bo_table" value="<?php echo $bo_table ?>">

    <div id="excelfile_upload" style="text-align:center;">

        <label for="excelfile">파일유형 선택</label>

        <input type="radio" name="ex_type" value="1">신규파일 &nbsp;

       <input type="file" name="excelfile" id="excelfile">

    </div>

 

    <div class="btn_confirm01 btn_confirm">

        <input type="submit" value="엑셀파일 등록" class="btn_submit">

         <a href="<?php echo G5_BBS_URL?>/board_company.php?bo_table=<?php echo $bo_table?>" class="btn_submit" style="color:#FFF; text-decoration:none;">게시판 바로가기</a>

    </div>

 

    </form>

 

</div>

 

<?

include_once(G5_PATH.'/_tail.php');

?>


excel_up2
Copy
<?php

include_once('./_common.php');

 

if(!$_POST['ex_type']){

    alert("파일유형을 선택해주세요");

}

// 상품이 많을 경우 대비 설정변경

set_time_limit ( 0 );

ini_set('memory_limit', '50M');

 

if(!$_FILES['excelfile']['tmp_name']) {

    alert("등록하실 파일이 없습니다");

}

if($_FILES['excelfile']['tmp_name']) {

    $file = $_FILES['excelfile']['tmp_name'];

 

    include_once(G5_LIB_PATH.'/Excel/reader.php');

 

    $data = new Spreadsheet_Excel_Reader();

 

    // Set output Encoding.

    $data->setOutputEncoding('UTF-8');

 

    /***

    * if you want you can change 'iconv' to mb_convert_encoding:

    * $data->setUTFEncoder('mb');

    *

    **/

 

    /***

    * By default rows & cols indeces start with 1

    * For change initial index use:

    * $data->setRowColOffset(0);

    *

    **/



 

    /***

    *  Some function for formatting output.

    * $data->setDefaultFormat('%.2f');

    * setDefaultFormat - set format for columns with unknown formatting

    *

    * $data->setColumnFormat(4, '%.3f');

    * setColumnFormat - set format for column (apply only to number fields)

    *

    **/

 

    $data->read($file);

 

    /*


 

     $data->sheets[0]['numRows'] - count rows

     $data->sheets[0]['numCols'] - count columns

     $data->sheets[0]['cells'][$i][$j] - data from $i-row $j-column

 

     $data->sheets[0]['cellsInfo'][$i][$j] - extended info about cell

 

        $data->sheets[0]['cellsInfo'][$i][$j]['type'] = "date" | "number" | "unknown"

            if 'type' == "unknown" - use 'raw' value, because  cell contain value with format '0.00';

        $data->sheets[0]['cellsInfo'][$i][$j]['raw'] = value if cell without format

        $data->sheets[0]['cellsInfo'][$i][$j]['colspan']

        $data->sheets[0]['cellsInfo'][$i][$j]['rowspan']

    */

 

    error_reporting(E_ALL ^ E_NOTICE);

   

   

    $write_table = "g5_write_{$bo_table}";

 

    for ($i = 2; $i <= count($data->sheets[0]["cells"]); $i++)  { //$i == 몇번째 라인부터 등록할건지

        $total_count++;

       

        if($_POST[ex_type] == "2"){

            $wr_1    = addslashes($data->sheets[0]['cells'][$i][2]);    //필드1

            $wr_2    = addslashes($data->sheets[0]['cells'][$i][3]);    //필드2

            $wr_3    = addslashes($data->sheets[0]['cells'][$i][4]);    //필드3

            $wr_4    = addslashes($data->sheets[0]['cells'][$i][5]);    //필드4

            $wr_5    = addslashes($data->sheets[0]['cells'][$i][6]);    //필드5

       

            $wr_6    = addslashes($data->sheets[0]['cells'][$i][7]);    //필드6

            $wr_7    = addslashes($data->sheets[0]['cells'][$i][8]);    //필드7

            $wr_8    = addslashes($data->sheets[0]['cells'][$i][9]);    //필드8

            $wr_9    = addslashes($data->sheets[0]['cells'][$i][10]);    //필드9

            $wr_10   = addslashes($data->sheets[0]['cells'][$i][11]);    //필드10

           

             $sql = " update {$write_table}

                    set wr_subject = '$wr_subject',

                        wr_1 = '$wr_1',

                        wr_2 = '$wr_2',

                        wr_3 = '$wr_3',

                        wr_4 = '$wr_4',

                        wr_5 = '$wr_5',

                        wr_6 = '$wr_6',

                        wr_7 = '$wr_7',

                        wr_8 = '$wr_8',

                        wr_9 = '$wr_9',

                        wr_10 = '$wr_10'

                    where wr_id = '$wr_id' ";

                   

            sql_query($sql);

               

        }else{

           

            $mb_id = $member['mb_id'];

            $wr_name = $member['mb_nick'];

            $wr_password = $member['mb_password'];

            $wr_email = $member['mb_email'];

            $wr_homepage = $member['mb_homepage'];

           

            $wr_num = get_next_num($write_table);

            $wr_reply = '';

           

            $wr_1    = addslashes($data->sheets[0]['cells'][$i][1]);    //필드1

            $wr_2    = addslashes($data->sheets[0]['cells'][$i][2]);    //필드2

            $wr_3    = addslashes($data->sheets[0]['cells'][$i][3]);    //필드3

            $wr_4    = addslashes($data->sheets[0]['cells'][$i][4]);    //필드4

            $wr_5    = addslashes($data->sheets[0]['cells'][$i][5]);    //필드5

 

            $wr_6    = addslashes($data->sheets[0]['cells'][$i][6]);    //필드6

            $wr_7    = addslashes($data->sheets[0]['cells'][$i][7]);    //필드7

            $wr_8    = addslashes($data->sheets[0]['cells'][$i][8]);    //필드8

            $wr_9    = addslashes($data->sheets[0]['cells'][$i][9]);    //필드9

            $wr_10  = addslashes($data->sheets[0]['cells'][$i][10]);    //필드10

 

           

            $sql = " insert into $write_table

                set wr_num = '$wr_num',

                     wr_reply = '$wr_reply',

                     wr_comment = 0,

                     ca_name = '$ca_name',

                     wr_option = '$html,$secret,$mail',

                     wr_subject = '$wr_subject',

                     wr_content = '$wr_subject',

                     wr_link1 = '$wr_link1',

                     wr_link2 = '$wr_link2',

                     wr_link1_hit = 0,

                     wr_link2_hit = 0,

                     wr_hit = 0,

                     wr_good = 0,

                     wr_nogood = 0,

                     mb_id = '$mb_id',

                     wr_password = '$wr_password',

                     wr_name = '$wr_name',

                     wr_email = '$wr_email',

                     wr_homepage = '$wr_homepage',

                     wr_datetime = '".G5_TIME_YMDHIS."',

                     wr_last = '".G5_TIME_YMDHIS."',

                     wr_ip = '{$_SERVER['REMOTE_ADDR']}',

                     wr_1 = '$wr_1',

                     wr_2 = '$wr_2',

                     wr_3 = '$wr_3',

                     wr_4 = '$wr_4',

                     wr_5 = '$wr_5',

                     wr_6 = '$wr_6',

                     wr_7 = '$wr_7',

                     wr_8 = '$wr_8',

                     wr_9 = '$wr_9',

                     wr_10 = '$wr_10'";

                   

            sql_query($sql);

           

            $wr_id = sql_insert_id();

           

            // 부모 아이디에 UPDATE

            sql_query(" update $write_table set wr_parent = '$wr_id' where wr_id = '$wr_id' ");

 

            // 새글 INSERT

            sql_query(" insert into {$g5['board_new_table']} ( bo_table, wr_id, wr_parent, bn_datetime, mb_id ) values ( '{$bo_table}', '{$wr_id}', '{$wr_id}', '".G5_TIME_YMDHIS."', '{$mb_id}' ) ");

 

            // 게시글 1 증가

            sql_query("update {$g5['board_table']} set bo_count_write = bo_count_write + 1 where bo_table = '{$bo_table}'");

           

        }//type end

   

   

   

    }//for end

 

alert("업로드 되었습니다",G5_BBS_URL."/board_notebook.php?bo_table=notebook");

}

 

?>
|

답변 2개

if( !isset($ex_type) ) $ex_type = 2

이렇게 만드세요

라디오 체크 안하면 신규가 아닌거죠

그런데 저런 경우 라디오가 아니라 체크박스로 해야 맞습니다

아무리해도 체크가 안된다는 것이 무슨 말인지 질문 소스를 보고 알 수는 없습니다

2024-01-05 (금) 15:54:22

그 파일 유형이 신규 파일 맞나요? 맞으면 checked가 되어야 할거에요

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