본문 바로가기
Study/php

PHP] MySqli익스텐션 이용하기( 간단한 예제)

by Answer Choi 2015. 10. 7.
반응형

예제 다운로드


이전시간에 mysql익스텐션을 php에서 사용하는 걸 해봤는데, 


PHP 5.5.0에서 mysql익스텐션은 php에서 권장하지 않고, MySQLi익스텐션이나 PDO를 권장합니다.


그리고 PHP 7.0.0 부터는 아예 안쓴다고 하네요.


mysql익스텐션 이용한 예제보기


이번에는 mysql익스텐션방식과 가장 비슷한 MySQLi익스텐션으로 바꿔보겠습니다.


MySQLi익스텐션은 mysql익스텐션에서 메소드에 'i'만 붙여주면 됩니다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php
        $conn=mysqli_connect('localhost','root','0157');
        if(!$conn){
            die('could not connect:'.mysqli_error($conn));
        }
        $selDb=mysqli_select_db($conn,'answerofgod');
        if(!$selDb){
            $createDB=mysqli_query($conn,'create database answerofgod');
            $useDB=mysqli_query($conn,'use answerofgod');
            $createTable=mysqli_query($conn,'create table blog(
                                        id int not null auto_increment, 
                                        url text not null,
                                        description text null,
                                        constraint pk primary key(id)
                                        )');        
        }
        $queryData=mysqli_query($conn,'select * from blog');
        if(!$queryData){
            echo('query error :'.mysqli_error($conn));
        }
        while($row=mysqli_fetch_assoc($queryData)){
            echo '<tr><form action="./management.php?mode=modify" method="POST">
           <td><input name="id" value="'.$row['id'].'" readonly size=1/></td>
           <td><input name="url" value="'.$row['url'].'"/></td>
           <td><input name="desc" value="'.$row['description'].'"/></td>
            <td>
            <input type="submit" value="MODIFY"/>
           </form>
           <form action="./management.php?mode=delete" method="POST">
            <input type="hidden" name="id" value="'.$row['id'].'"/>
            <input type="submit" value="DELETE"/>
            </form>
            </td>';            
        }
        mysqli_close($conn);
?>   
cs


Line 2부터 보시면 mysql_xxx가 mysqli_xxx로 바뀐걸 볼 수 있습니다.


단지 이 부분만 바꿔주면 됩니다. 


그리고 mysqli_connect() 말고 다른 메소드에는 mysqli_connect()에서 생성한 객체변수를


필수로 인자에 넣어줘야 합니다.( mysql에서는 선택사항이었습니다.)


예제에서 사용한 메소드입니다.


mysql_query() -> mysqli_query()


resource mysql_query ( string $query [, resource $link_identifier ] )


-> mixed mysqli_query ( mysqli $link , string $query [, int $resultmode = MYSQLI_STORE_RESULT ] )


mysql_select_db() -> mysqli_select_db()


bool mysql_select_db ( string $database_name [, resource $link_identifier ] )


->bool mysqli_select_db ( mysqli $link , string $dbname )


실행해보면 정상적으로 동작합니다.


데이터도 정상적으로 들어갑니다.



반응형

'Study > php' 카테고리의 다른 글

PHP] 세션을 이용한 로그인/로그아웃  (4) 2015.10.08
PHP] PDO익스텐션 이용하기( 간단한 예제)  (2) 2015.10.07
PHP] MySql 이용하기( 간단한 예제)  (0) 2015.10.05
PHP ] 시간  (0) 2015.10.02
PHP ] GET, POST  (0) 2015.10.01

인기글