우선..  게시판 특성상 관리자가 수정 -> 확장변수 변경 을 하기가 힘듭니다.

그에 따라서, 파일을 하나 만들어서 수정하게 하려고 합니다.

 

<?php

    $s = mysql_connect("localhost", "여긴아이디", "패스워드") or die ("실패입니다.");
    print "성공입니다.";
    mysql_close($s);

    mysql_query("UPDATE `dev_document_extra_vars` SET `value` = '<?php echo $data; ?>' WHERE `dev_document_extra_vars`.`module_srl` = <?php echo $m_srl; ?> AND `dev_document_extra_vars`.`document_srl` = <?php echo $doc_num; ?> AND `dev_document_extra_vars`.`var_idx` = 2 AND `dev_document_extra_vars`.`lang_code` = 'ko';");


    mysql_close($s);
?>

 

 

이렇게 get파라메터로 넘겨받은 값을 그대로 쿼리로 날려주려니, 500 에러가 나는데, 제가 잘못 작성한 코드가 있을까요?

  • ?
    PHP 파일의 문자열 안에서 <?php ?> 를 쓰는게 문제네요.

    $query = sprintf('UPDATE `dev_document_extra_vars` SET `value`="%s" WHERE `module_srl`=%s AND `document_srl`=%s AND `var_idx`=%s AND `lang_code`="ko"', $data, $m_srl, $doc_num, 2);
    mysql_query($query);
  • ? Lv6
    아...그렇군요 한번 해봐야겠네요
  • ? Lv6
    <?php
    
        // 필요한 정보를 파라메터로 넘김 
        $doc_num = $_REQUEST["d_num"];
        $m_srl = $_REQUEST["md_srl"];
        $data = $_REQUEST["t_data"];
    
        echo $doc_num;
        echo $m_srl;
        echo $data;
    
        $s = mysql_connect("localhost", "id", "pw") or die ("실패입니다.");
        print "성공입니다.";
    
    
        $query = sprintf('UPDATE `dev_document_extra_vars` SET `value`="%s" WHERE `module_srl`=%s AND `document_srl`=%s AND `var_idx`=%s AND `lang_code`="ko"', $data, $m_srl, $doc_num, 2);
        mysql_query($query);
    
    
        mysql_close($s);
    
    
            
    ?>

     

     

    혹여 이 코드가, 단독으로 나눠진 test.php 에서 <?php 열을 쓰는게 잘못되었을까요?

     

    뭐가 문제인지 잘 모르겠네요ㅜ 이전에 잘 작동하던 코드였었는데, 이상하게...

  • Lv6 ?
    mysql 데이터베이스 선택이 빠져있습니다.
    mysql_select_db 함수요.
  • ? Lv6
    와.... 멍청하긴 한가보네요..
    당연할거라 생각했나 봅니다.