PHP

MySQL 확장

본 수업은 상위 수업인 데이터베이스 토픽의 후속 수업이기 때문에 데이터베이스 토픽을 먼저 보셔야 합니다.

MySQL 확장

PHP의 MySQL  확장 기능은 PHP 5.5부터 폐지 예정 상태(deprecated)가 되었다. 그 이후에는 폐지될 예정이기 때문에 신규 에플리케이션을 개발한다면 사용하지 안아야 한다. 또한 기존의 에플리케이션도 PDO나 mysqli로 이전을 추진해야 한다.

MySQL 확장은 MySQL을 사용하기 위한 확장 기능이다. 곧 폐지될 기능이지만, 기존의 에플리케이션에서 사용하고 있는 경우가 많이 있기 때문에 이에 대한 사용법을 익히는 것은 당분간은 중요할 것이다. 본 수업에서는 예제를 통해서 MySQL 확장을 어떻게 사용하는가를 알아보겠다. 

MySQL 트러블 슈팅

만약 MySQL을 사용하는 과정에서 아래와 같은 에러가 난다면 MySQL 익스텐션을 활성화해야 한다. Bitnami 윈도우 버전의 경우 아래와 같이 처리했다. 다른 운영체제는 이 방법을 참고한다.

Fatal error: Call to undefined function mysql_connect() in D:\BitNami\wampstack-5.4.12-0\apache2\htdocs\mysql\process.php on line 2

php의 디렉토리가 D:\BitNami\wampstack-5.4.21-0\php일 경우 D:\BitNami\wampstack-5.4.21-0\php\php.ini 파일을 열고 아래의 코드 앞의 ;을 제거한다.

extension=php_mysql.dll

그리고 익스텐션의 dll 파일이 설치된 디렉토리의 기본경로를 변경해준다. 아래의 경로는 필자가 설치한 Bitnami를 기준으로 한 것이기 때문에 사용자마다 다를 수 있다. 자신의 환경에 맞게 수정해준다.

extension_dir = "D:\BitNami\wampstack-5.4.21-0\php\ext"

예제

아래의 파일은 전송 버튼을 눌렀을 때 process.php 파일로 데이터를 전송한다.

input.php

<!DOCTYPE html>
<html>
    <head>
		<meta charset="utf-8"/>
	</head>	
	<body>
		<form action="./process.php?mode=insert" method="POST">
			<p>제목 : <input type="text" name="title"></p>
			<p>본문 : <textarea name="description" id="" cols="30" rows="10"></textarea></p>
			<p><input type="submit" /></p>			
		</form>
	</body>
</html>

아래의 파일은 데이터베이스를 조작하는 작업을 모아둔 PHP 에플리케이션이다. URL에 포함된 mode의 값에 따라서 다른 작업을 하도록 switch 문을 사용했다.

process.php

<?php
mysql_connect('localhost', 'root', '111111');
mysql_select_db('opentutorials');
switch($_GET['mode']){
    case 'insert':
		$result = mysql_query("INSERT INTO topic (title, description, created) VALUES ('".mysql_real_escape_string($_POST['title'])."', '".mysql_real_escape_string($_POST['description'])."', now())");
		header("Location: list.php"); 
		break;
	case 'delete':
		mysql_query('DELETE FROM topic WHERE id = '.mysql_real_escape_string($_POST['id']));
		header("Location: list.php"); 
		break;
	case 'modify':
		mysql_query('UPDATE topic SET title = "'.mysql_real_escape_string($_POST['title']).'", description = "'.mysql_real_escape_string($_POST['description']).'" WHERE id = '.mysql_real_escape_string($_POST['id']));
		header("Location: list.php?id={$_POST['id']}");
		break;
}
?>

아래의 파일은 데이터베이스에 저장된 토픽의 리스트와 선택된 토픽의 자세한 정보를 화면에 출력하는 에플리케이션이다.

list.php

<?php
mysql_connect('localhost', 'root', '111111');
mysql_select_db('opentutorials');
$list_result = mysql_query('SELECT * FROM topic');

if(!empty($_GET['id'])) {
    $topic_result = mysql_query('SELECT * FROM topic WHERE id = '.mysql_real_escape_string($_GET['id']));
    $topic = mysql_fetch_array($topic_result);
}
?>
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <style type="text/css">
            body {
                font-size: 0.8em;
                font-family: dotum;
                line-height: 1.6em;
            }
            header {
                border-bottom: 1px solid #ccc;
                padding: 20px 0;
            }
            nav {
                float: left;
                margin-right: 20px;
                min-height: 1000px;
                min-width:150px;
                border-right: 1px solid #ccc;
            }
            nav ul {
                list-style: none;
                padding-left: 0;
                padding-right: 20px;
            }
            article {
                float: left;
            }
            .description{
                width:500px;
            }
        </style>
    </head>
  
    <body id="body">
        <div>
            <nav>
                <ul>
                    <?php
                    while($row = mysql_fetch_array($list_result)) {
                        echo "<li><a href=\"?id={$row['id']}\">".htmlspecialchars($row['title'])."</a></li>";                        }
                    ?>
                </ul>
                <ul>
                    <li><a href="input.php">추가</a></li>
                </ul>
            </nav>
            <article>
                <?php
                if(!empty($topic)){
                ?>
                <h2><?=htmlspecialchars($topic['title'])?></h2>
                <div class="description">
                    <?=htmlspecialchars($topic['description'])?>
                </div>
                <div>
                    <a href="modify.php?id=<?=$topic['id']?>">수정</a>
                    <form method="POST" action="process.php?mode=delete">
                        <input type="hidden" name="id" value="<?=$topic['id']?>" />
                        <input type="submit" value="삭제" />
                    </form>
                </div>
                <?php
                }
                ?>
            </article>
        </div>
    </body>
</html>

아래 파일은 토픽의 내용을 수정하기 위해서 사용할 에플리케이션이다.

modify.php

<?php
mysql_connect('localhost', 'root', '111111');
mysql_select_db('opentutorials');
$result = mysql_query('SELECT * FROM topic WHERE id = '.mysql_real_escape_string($_GET['id']));
$topic = mysql_fetch_array($result);
?>
<!DOCTYPE html>
<html>
    <head>
		<meta charset="utf-8"/>
	</head>	
	<body>
		<form action="./process.php?mode=modify" method="POST">
			<input type="hidden" name="id" value="<?=$topic['id']?>" />
			<p>제목 : <input type="text" name="title" value="<?=htmlspecialchars($topic['title'])?>"></p>
			<p>본문 : <textarea name="description" id="" cols="30" rows="10"><?=htmlspecialchars($topic['description'])?></textarea></p>
			<p><input type="submit" /></p>
		</form>
	</body>
</html>

디버깅

댓글

댓글 본문
작성자
비밀번호
  1. 김철기
    insert,update,select 하기전에
    mysql_query("set names utf8");
    code를 넣었더니 해결이 됩니다.
    대화보기
    • 김철기
      Linux(ubuntu)에 MySQL 5.5를 설치하고
      PDO 방식 및 MySQL Extension 방식으로 위의 예제를 실행하면
      PDO 방식으로 하면 Web과 MySQL Monitor에서 한글이 깨지지 않는데
      위 방식으로 하면 MySQL Monitor에서 한글이 깨집니다.
      해결책이 있나요?
    • 유진
      질문이요ㅠㅠ
      process.php
      <?php
      mysql_connect('127.0.0.1:3307', 'root', '123456');

      php.ini 수정
      extension=php_mysql.dll
      extension=php_mysqli.dll

      계속 아래와 같은 에러가 나오네요ㅠㅠ
      Fatal error: Call to undefined function mysql_connect() in C:\Bitnami\wampstack-5.6.26-2\apache2\htdocs\firstapp\process.php on line 2

      mysqli로 바꿔도 같은 에러가 나와요ㅠㅠ
      어떻게 해야할까요ㅠㅠ
    • 신입1
      감사합니다`~~
    • dngold@naver.com
      2016 10 02

      Bitnami\wampstack-5.6.26-1 버전에서는 안됩니다.

      왼쪽 글목록에서, 위에 글 PDO를 사용하시면 됩니다.

      지원을 안한다고 애러가 나옵니다.
    • aningang
      process.php 파일을 실행시키면, 계속 'localhost 페이지가 작동하지 않음 (HTTP ERROR 500)'이 나옵니다.

      var_dump로 mysql 함수들 정상 접속여부 확인해봤는데, 전부 정상이구요..

      어디를 손봐야 되는건지.. 누가 힌트라도.. 좀..ㅠㅠ
    • 허민호
      공부하고있는 초보입니다
      mysql 대신 mysqli 쓰시면 됩니다
      끝에 i만 붙이면 되는게 아니고 사용법이 조금씩 달라졌네요
      php 5.4버전 이후쓰시는 분들은 올라와있는 코드 수정하셔야합니다
    • JustStudy
      고맙습니다
    • 이주환
      2016. 04. 18
      bitnami 최신버전으로 사용하고있지만 확인해본 결과 지금 예제에 나와있는대로 모두 제대로 작동됩니다.
      아직까진 특별한 문제는 없는듯 합니다.
    • SK Kim
      웹어플리케이션 수업 복습!
    • kssm1935
      park님
      위에 설명대로 기존의 'MySQL' 확장은 폐지되면서,
      'PDO'와 'mysqli'로 대치 된다고 이해하시면 될것 같네요!
      대화보기
      • 정말 개념이 안잡혀서 여쭤봅니다.
        php의 mysql 확장기능이 없어진다면 서버에 저장된 db를 어떤식으로 가져오나요 대체..?
        php공부할 필요가 없는건가요?
      • Jongwoo Choi
        수정하기 기능이 제대로 동작하지 않습니다.
        수정하기 클릭시 주소창에 표시되는 id 는 제대로 표시되는데 기능이 안되네요.
        기존값을 가져오지 못하는 것과 수정이 안됩니다.
        코드를 복사했는데 그러네요.
        다른 추가, 삭제 기능은 제대로 동작합니다.
      • Euiyoung Yi
        form action처리가 잘못된것 같은데요.
        대화보기
        • PAAZ
          '데이터 추가하기' 수업에 있는 코드를 그대로 복사 붙여넣기를 해도 아래의 에러가 뜹니다.

          Notice: Undefined index: mode in C:\Bitnami\wampstack-5.5.29-1\apache2\htdocs\mysql\process.php on line 4

          스택 오버플로우에 제시하는 방법대로 php.ini 내의 error_reporting 파일을 수정을 해도 고쳐지지가 않습니다.

          도와주시면 감사하겠습니다.
        • 간절합니다
          input.php 화면은 잘 뜨는데
          쿼리 전송을 하면 404 에러가 뜹니다.
          디비 연동이 안된건지 도대체 왜이런지 제발 좀 가르쳐주세요
        • egoing
          <?=가 PHP의 설정에서 지원안됨으로 되어 있으면 그럴 수 있습니다.
          대화보기
          • 냥냥이
            리눅스에서 실습중입니다.
            list.php에서 63라인에서 <h2><?=htmlspecialchars($topic['title'])?></h2> 이대로 실행시키면 아무것도 뜨지 않습니다.
            궁여지책으로 이것저것 바꿔보다가 <h2><?php echo htmlspecialchars($topic['title']); ?></h2>
            이런식으로 바꿔서 실행시키니 정상적으로 나오는것 같은데, 제가 한 방식이 맞는건가요?
            그리고 왜 위 소스대로 실행시키면 정상적으로 뜨지 않는지 알고 싶습니다.
          • 육점이
            Legacy를 이해하기 위해 필수적으로 공부해야하는 MySQL 확장!!

            항상 강의 잘 보고있습니다. 감사합니다 ~^_^


            # 'Legacy'라는 말이 정말 매력적으로 다가오네요!!
          • DakButFly
            $sql = mysql_query('SELECT * FROM favrite_actress WHERE tag LIKE \'% $x %\'');
            $row = mysql_fetch_array($sql);
            echo $row[1]; // name 값을 보여줌
            x값은 $_GET[]으로 받아올려고 하는데 방법을 모르겠습니다.
            우선 외부변수$x 값을 만들어서 ($x = smart;) 넣어 봤지만
            아무 화면도 뜨지 않습니다. 에러 조차 뜨지 않습니다.
            아무리 생각해도 마땅한 방법을 모르겠습니다.

            ps. 당연히 변수 x 자리에 직접 데이터(tag 값 = smart)을 입력하면 잘 작동합니다.
          • 금도끼은도끼
            이강의를 보고 구글링을 좀하닌가
            앞강좌 PDO 부분이 전부 이해가 가네요..
            감사합니다(__)
          • primada
            localhost가 아닌 아마존 웹 서비스를 이용해서 접속시에는, mysql 연결전에 ssh방식으로 otkey 암호를 입력해서 접속하잖아요. 그걸 php 코드로 하려면 어떻게 해야하나요?
          • sssssqew
            mysql 확장 => mysqli (강의내용에 한정됨) 함수 변경

            1. mysql_connect => mysqli_connect

            2. mysql_select_db => mysqli_select_db

            3. mysql_query => mysqli_query

            4. mysql_fetch_array => mysqli_fetch_row
          • sssssqew
            이 강의를 계속 따라오셨다면 아마 첨에 db 연동할때 확장모듈 설정 부분에서 잘 안되실 겁니다. (리눅스 사용자)

            * 해결방법

            1. cd /etc/php5/apache2/
            2. vi php.ini
            3. extension=mysql.so (php.ini 에 코드 추가)
            4. extension_dir = /usr/lib/php5/20090626 (php.ini 에 이 부분 변경)
            5. sudo service apache2 reload(or restart)

            4번의 20090626 폴더는 사용자에 따라 다를수 있습니다.
            저 순서로 하시면 mysql 디비가 연동이 되실 겁니다.
          • sssssqew
            따라하시다가 아마 php 파일을 실행하고 나서 mysql 클라이언트로 db에 직접 들어가보면
            한글로 저장한 데이터는 깨져있을 겁니다. php와 mysql 인코딩 방식이 달라서 생기는 문제라고 합니다.

            해결방법은 여러가지가 있지만 크게 php 나 mysql 설정파일(ini)을 건드리는 방법과 php 코드에 코드를
            추가하는 방법이 있습니다. 혼자 하실때는 설정파일을 건드려도 되지만 여럿이 프로젝트를 진행하시는
            미래를 위해 습관적으로 코드를 추가하는 방법이 안전할 것으로 여겨 이 방법을 알려드립니다.

            어떤 php 코드든 db에 접속하는 mysql_connect 와 mysql_select_db 코드 바로 다음에

            mysql_query("set session character_set_connection=utf8;");
            mysql_query("set session character_set_results=utf8;");
            mysql_query("set session character_set_client=utf8;");

            위 세 줄의 코드를 추가하시면 db에 저장될때 한글이 깨짐없이 잘 저장되고 다시 웹으로 불러올때도
            한글이 잘 보이실 겁니다.
          • 적주 z
            리눅스 우분투에서 MySQL 트러블 슈팅해결을 위해 익스텐션의 dll 파일이 설치된 디렉토리의 기본경로를 어떻게 알수 있나요?

            초보이다 보니 조금만 막혀도 더이상 나아갈수가 없군요.

            지금까지 멀리 왔는데 다시 윈도우로 다시 돌아갈수도 없고 많은 도움 부탁드립니다
          • coffee
            htmlspecialchars함수를 사용하시고 난 뒤,
            db에는 한글이 표시가 되는데 list.php에서는 한글이 표시가 되지 않을때 (아예 보이지 않음)
            mysql의 설정에서 (my.ini파일에서) 문자셋이 utf8인지 확인하세요
            자세한 사항은 mysql 문자셋 변경 my.ini로 구글링 하시면 도움이 됩니다.
          • 코코딩
            결론은 잘못알고 잘못하고있었던거였군요.
            답변 갑사합니다.!
            대화보기
            • egoing
              테이블을 만드셔야 합니다.
              대화보기
              • 코코딩
                역시 계속해서 실험해본바로...
                데이터베이스를 만들어주고... 테이블까지 만들어줘야
                비로소 정상적으로 작동하는군요...
                흠....

                그렇지 않고서는..

                Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\Bitnami\wampstack-5.4.30-0\apache2\htdocs\mysql\list.php on line 50
                라는 오류를 계속해서 보게 되는군요...

                제가 지금.. 잘못알고 있는건지.. 아니면 잘못하고 있는건지..
                그것이 알고싶습니다.
              • 코코딩
                input.php에서 글을 작성하고 제출을 하면 poecss.php를
                거쳐서 자동으로 데이터베이스, 테이블 및 데이터가 만들어져야하는데..
                이상하게도 SQL 모니터에서 데이터베이스랑 테이블을 만든 다음에
                ilst.php가 작동, 및 데이터생성및 추가를 할 수 있게 되더군요...

                데이터베이스 및 테이블을
                sql 모니터를 통해 따로 만들지 않고
                list.php를 실행하면


                Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\Bitnami\wampstack-5.4.30-0\apache2\htdocs\mysql\list.php on line 50 이란 메시지가 떠요..
                어떻게 하면 이 난관을 해결할 수 있을까요..?

                아...

                $result = mysql_query("INSERT INTO topic (title, description, created) VALUES ('".mysql_real_escape_string($_POST['title'])."', '".mysql_real_escape_string($_POST['description'])."', now())");

                아.... 데이터베이스는 만들어줘야 했던거였군요...
                지금 이거랑 씨름하고 있는중이여서.. 자꾸 글을 수정하게되네요.
                그래도 혹시 모르니까 이렇게 수정하면서도 의견을 더 듣고 싶어서 글을 남기게 되네요.

                코드를 보면 데이터베이스로 접속하는 부분은 있었지만
                만들어주는 부분은 없는것이였군요?! 아닌가.... 시원스레.. 설명해주시면 고맙겠습니다. ㅎㅎ


                좋은 강좌 고맙습니다.!
                항상 감사한 마음으로 하나하나 보고 있습니다.!
              • ybin
                mysqli 로 확장해서 문제 해결했습니다 ^^

                추후에 mysqli 에 대한 강의도 있으면 좋을 것 같습니다!!
                대화보기
                • ybin
                  제가 강의를 통해 개인 블로그를 제작중인데요. AWS에 설치된 서버에는 PHP 5.5와 MySQL 5.5가 설치되어있습니다.

                  제가 작업을 개인 노트북에서 APMSETUP(PHP 5.2, MySQL 5.1)을 사용해서. 제작 할 때는 문제가 없었는데, 서버로 옮기니 방명록 제작한게 동작이 안되는데요. 강의를 보니 PHP5.5 에서는 MySQL확장을 지원하지 않기 때문이라고 합니다.

                  mysqli나 PDO 로 이전하려니 아직 배우는 입장에서 좀 버거운데요. 서버 PHP 를 5.5-> 5.2로 downgrade 하는 방법이 없을까요? 아니면 이전하는 방법이 가장 나을까요?
                • egoing
                  자동으로 됩니다.
                  대화보기
                  • egoing
                    자동으로 됩니다.
                    대화보기
                    • ShotgunBlues
                      예제엔 mysql_close()를 안쓰셨던데, 없어도 이젠 무방한가요?? php를 한 7년전에 봐가지고 -,.-;;
                    • Daniel
                      으아.. 해결되서 후딱지웠는데.. ^^; 웹호스팅도 그냥 localhost로 하니 되네요. 답글 고맙습니다.
                      대화보기
                      • egoing
                        그건 웹호스팅 쪽에문의하시면됩니다
                        대화보기
                        • 0132h
                          프로그램이 어렵게 느껴졌는데.. 이 강의 보고 정말 이해가 잘 가네요..
                          이렇게 멍청한 저도 프로그램을 이해 할수 있도록 해주시다니..
                          항상 감사합니다.~~~
                        • 환글
                          고맙습니다
                        • egoing
                          처리했습니다. 알려주셔서 고맙습니다!
                          대화보기
                          • egoing
                            처리했습니다. 알려주셔서 고맙습니다!
                            대화보기
                            • 별모모
                              실감나는 수업, 잘 보고 있습니다. 수업 하나 하나가 실속있게 구성되어 큰 도움이 됩니다. 고맙습니다.

                              [ 동영상 모니터링 ] 1) 5분 14초~32초 사이에 소리가 겹쳐 나오고 있습니다. 2) 맨 끝 부분6분 19초~37초(18초)간 빈 화면(묵음)입니다. = 동영상 제목: PHP의 MySQL확장과 데이터 삭제(PHP와 MySQL의 연동-데이터 삭제하기) =
                            • 쏴우촤우
                              [데이터를 삭제하기] 동영상에서 5m13s 부분에 두개의 동영상이 겹치는거 같아요 ㅎㅎ
                              저만 그런건..아니겟죠?..ㅎㅎ
                              항상 강의에 신경써주시는 이고잉님 수고하세요 :)
                              열강하겠습니다!!!
                            • egoing
                              $sql="INSERT INTO newmember(id,pw1,pw2,name,nickname,email,zipcode1,zipcode2,address1,address2,pwquestion,pwanswer,date,ip) VALUE (' ".mysql_real_escape_string($_POST['id'])." ',' ".mysql_real_escape_string($pw1)." ',' ".mysql_real_escape_string($pw2)." ',' ".mysql_real_escape_string($name)." ',' ".mysql_real_escape_string($nickname)." ',' ".mysql_real_escape_string($email)." ',' ".mysql_real_escape_string($zipcode1)." ',' ".mysql_real_escape_string($zipcode2)." ',' ".mysql_real_escape_string($address1)." ',' ".mysql_real_escape_string($address2)." ',' ".mysql_real_escape_string($pwQuestion)." ', ' ".mysql_real_escape_string($pwAnswer)." ',now(),'".$ip."')";



                              echo $sql;

                              위와 같이 SQL문이 실제로는 어떻게 만들어지는지를 확인해보시면 문제를 파악하는데 도움이 될 것 같네요. 이메일 발송은 시스템을 조금 만져야 하는 부분이긴 합니다. 단기간의 계획은 없지만 차차로 해야죠.
                              대화보기
                              • 짱남
                                음..
                                폼에서 회원가입 변수들을
                                insertDAO.php로 보내서
                                예제에보듯이 mysql_real_escape_string(변수)
                                를하여 insert했구요

                                이렇게 DB에 들어간 각각의 데이터들은 한글은 깨지지않지만
                                SELECT문 사용시 데이터를 추출하지못하더라구요

                                몇시간쯤 헤메다가

                                mysql_real_escape_string 이구문을 지우고
                                그냥 변수로만 넣었더니
                                SELECT할때 데이터가 추출되더라 이말이였습니다.

                                실험은해보지않았지만
                                예제에있는코드처럼
                                mysql_real_escape_string($_GET[])으로 받아서 실험은 해보지는못했네요

                                혹시나 제가했던 코드처럼
                                mysql_real_escape_string($_POST[])로 해서
                                그런것은 아닌지 해서 물어본거였네요

                                GET 과 POST의 차이인지
                                아니면 mysql_real_escape_string 이것의 문제인지
                                도통모르겠네요 혹시나 답을아시면 답변좀부탁드릴게요

                                아참 그리구요 혹시
                                현재 윈도우7인데요
                                메일보내기를 하고싶은데 영 힘드네요
                                hmailserver를 이용해서 해보고있는데 영되질않습니다
                                혹시 강좌있거나 없다면 강좌하실의향은있으신지..;
                                빡쳐요ㅎㅎㅎㅎㅎㅎㅎ휴ㅠㅠ
                                요즘머리가 다빠질지경
                              • egoing
                                10분째 본문의 코드와 질문하신 내용을 살펴보고 있는데요. 질문을 잘 이해 못하고 있습니다. 좀 더 많은 맥락을 설명해주셔야 할 것 같습니다.
                                대화보기
                                • 짱남
                                  mysql_real_escape_string($_GET['id'])
                                  로할시
                                  문자가 db에 들어는가지만
                                  select가 되지않습니다

                                  한참 빡쳐있다가
                                  저구문을지우고 그냥 변수만넣어보니 되더라구요

                                  혹시 POST방식의 변수를 가져와서그런건가요?
                                  예제에는 GET인데요

                                  mysql에서 쿼리날린 값은 select가되지만
                                  웹에서 이스케이프로 밀어넣은 변수는 문자가 그대로 들어는가지만
                                  select가 안되는 기현상이 발생해서 문의드려요

                                  제가 넣었던 insert문은 이렇습니다
                                  $sql="INSERT INTO newmember(id,pw1,pw2,name,nickname,email,zipcode1,zipcode2,address1,address2,pwquestion,pwanswer,date,ip) VALUE (' ".mysql_real_escape_string($_POST['id'])." ',' ".mysql_real_escape_string($pw1)." ',' ".mysql_real_escape_string($pw2)." ',' ".mysql_real_escape_string($name)." ',' ".mysql_real_escape_string($nickname)." ',' ".mysql_real_escape_string($email)." ',' ".mysql_real_escape_string($zipcode1)." ',' ".mysql_real_escape_string($zipcode2)." ',' ".mysql_real_escape_string($address1)." ',' ".mysql_real_escape_string($address2)." ',' ".mysql_real_escape_string($pwQuestion)." ', ' ".mysql_real_escape_string($pwAnswer)." ',now(),'".$ip."')";

                                  아참 저기는 변수로 되어있지만 $_POST['name']이런방식으로도 해봤는데도 안되더랍니다.
                                • 자유로운푸른곰
                                  이제 PHP 입문 2달째인데..
                                  mysql 확장기능이 편하다고 생각했는데 5.5부터는 지원을 하지않나보네요
                                  뭐 다 생각이 있어서 그렇게 하는것이겠지만 예전방식과 최근방식을 모두 알아야하는
                                  부담으로 작용하네요
                                버전 관리
                                egoing
                                현재 버전
                                선택 버전
                                graphittie 자세히 보기