mysql 검색 결과

23개 발견
  1. 미리보기
    2016.03.27 - Palpit

    [Mac] 맥에서 MySQL 설치하기!

  2. 미리보기
    2015.07.17 - Palpit

    [CodeIgniter] 2. CodeIgniter 개발 환경 구성

  3. 미리보기
    2015.06.13 - Palpit

    [PHP] 51. AJAX 와 MySQL ( AJAX and MySQL) - PHP 강좌, PHP5

  4. 미리보기
    2015.06.13 - Palpit

    [PHP] 43. Limit Data - PHP 강좌, PHP5

  5. 미리보기
    2015.06.13 - Palpit

    [PHP] 42. Update Data - PHP 강좌, PHP5

  6. 미리보기
    2015.06.13 - Palpit

    [PHP] 41. Delete Data - PHP 강좌, PHP5

  7. 미리보기
    2015.06.13 - Palpit

    [PHP] 40. Select Data - PHP 강좌, PHP5

  8. 미리보기
    2015.06.13 - Palpit

    [PHP] 39. Prepared Statement - PHP 강좌, PHP5

[Mac] 맥에서 MySQL 설치하기!

2016.03.27 15:22 - Palpit
조회수 확인

맥에서 MySQL 설치하기 진행하도록 하겠습니다.


http://dev.mysql.com/downloads/mysql/


접속해서 자신의 버전에 맞게 받아주세요!


* DMG 형식으로 받습니다.







하단의 No thanks, just start my download 클릭









다운 받으신 dmg 파일을 실행해주세요!


이 안의 패키지를 실행합니다!









절차대로 설치를 해주세요!











여기까지 진행하시면 설치는 완료된 것입니다.



설치된 MySQL을 실행하도록 하겠습니다!




시스템 환경 설정에서 MySQL

초기에는 Stopped 되어 있습니다!


'Start MySQL Server' 클릭해서 스타또~








암호 입력해주세요!







그러면 뙇!







이제 MySQL에 접속하기 위해서


터미널을 실행시킵니다!


터미널을 실행 시킨 뒤, 아래 명령어를 통해 MySQL 경로에 진입!



cd /usr/local/mysql/bin








MySQL을 실행시킵니다!



sudo ./mysql -p


패스워드는 임시로 발급받은 패스워드를 입력해주시면 됩니다!






다음으로 임시 비밀번호를 변경하기 위해 아래처럼 명령어를 수행합니다!!


SET PASSWORD = PASSWORD('root');








마지막으로 적용을 위해 아래 명령어를 입력하면 끝!



flush privileges;







이렇게 하면 맥에서 MySQL 설치하기 끝입니다!!







다른 카테고리의 글 목록

Mac 카테고리의 포스트를 톺아봅니다
조회수 확인

Chapter 2. CodeIgniter 개발 환경 구성


 CodeIgniter는 PHP 환경에서 작동합니다. 운영체제에 상관없이 PHP가 작동하는 환경이라면 사용할 수 있습니다.


 윈도우를 기준으로 개발 환경 구성을 해보도록 하곘습니다.



 2.1 윈도우에서 환경 구성하기


  윈도우에서 PHP 개발 환경을 구성하려면 Apache, PHP, MySQL (APM)을 각각 설치하고 설정해야 하는데, 이 과정은 단순 반복이어서 번거롭습니다. XAMPP를 이용하면 APM을 한 번에 설치하고 관리할 수 있습니다.


 

  2.1.1 XAMPP 설치


  XAMPP 페이지(https://www.apachefriends.org/index.html)를 방문합니다.


  다운로드 탭에 XAMPP for Windows 를 클릭하여 다운받습니다.


  설치 과정 중에 아래 화면과 같이 옵션을 구성합니다.







  설치 완료 후, Control Panel에서 아파치를 실행시켜 줍니다.








  이후, 웹 브라우저에 localhost를 입력하여 아래와 같은 화면이 표시되는지 확인합니다.







  위 화면이 표시되지 않는다면 XAMPP가 제대로 설치되지 않은 것이니 XAMPP를 제거 후, 재 설치하시길 바랍니다. 화면에 표시되는 내용은 xampp/htdocs 디렉터리에 들어 있습니다. 우리도 앞으로 이 디렉터리에서 웹 사이트를 개발하게 됩니다.









  2.1.2 CodeIgniter 설치


  CodeIgniter 웹 사이트(http://www.codeigniter.com/download)에서 CodeIgniter 2.x 버전을 다운받습니다.

  xampp/htdocs에 있는 XAMPP 파일을 모두 삭제한 뒤에 내려받은 파일의 압축을 풀고 해당 파일을 xampp/htdocs로 복사합니다.






   다시 localhost에 접속해서 결과를 확인합니다. 아래와 같이 화면이 나오면 끝입니다.







 

 2.2 Hello World 페이지 만들기

 

  이번 절에서는 설치된 CodeIgniter의 기본 Welcome 화면을 수정하여 Hello World 페이지를 만들어 보겠습니다.


  웹 브라우저에 locahost로 접속했을 때 "Welcome to CodeIgniter"라는 화면을 봤을 것입니다. 


  주소에 컨트롤러를 입력하지 않고 호스트 명만 입력했는데 어떤 컨트롤러가 실행되고, 어떤 뷰가 화면에 출력됐습니다. 


  이런 역할을 해주는 것이 application/config/routes.php에 있습니다.


  

1
2
3
4
5
<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');
 
 
$route['default_controller'= "welcome";
$route['404_override'= '';
cs




   4번 라인의 기본적으로 welcome.php를 실행하게 두었습니다. 사이트의 메인 화면을 main.php 컨트롤러가 담당한다면 main으로 수정해주시면 됩니다. 그 다음 도메인만 입력하고 사이트에 접속하면 메인 화면을 볼 수 있습니다. CodeIgniter의 컨트롤러는 application/controller에 작성합니다. 





   다음은 welcome.php 파일의 내용을 보도록 하겠습니다.





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
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
 
class Welcome extends CI_Controller {
 
    /**
     * Index Page for this controller.
     *
     * Maps to the following URL
     *         http://example.com/index.php/welcome
     *    - or -  
     *         http://example.com/index.php/welcome/index
     *    - or -
     * Since this controller is set as the default controller in 
     * config/routes.php, it's displayed at http://example.com/
     *
     * So any other public methods not prefixed with an underscore will
     * map to /index.php/welcome/<method_name>
     * @see http://codeigniter.com/user_guide/general/urls.html
     */
    public function index()
    {
        $this->load->view('welcome_message');
    }
}
 
/* End of file welcome.php */
/* Location: ./application/controllers/welcome.php */
cs

  



    Line 20: CodeIgniter의 주소체계는 http://호스트/컨트롤러/메서드로 되어있습니다. 

routes.php에서 default_controller를 welcome.php로 지정하여 컨트롤러명은 알 수 있는데 실행되는 메서드명은 알 수 없습니다. index 메서드를 선언하면 http://localhost/welcome/ 까지만 쳐도 자동으로 http://localhost/welcome/index 라고 실행이 됩니다. 에러 방지의 목적도 있기 때문에 index 메서드는 항상 만드는 것이 좋습니다.




    Line 22: 퓨 파일을 로딩하라는 의미이며 applcation/views/welcome_message.php 파일이 로딩됩니다.




  다음으로 컨트롤러에 선언된 뷰 파일(welcome_message.php)을 보겠습니다.





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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Welcome to CodeIgniter</title>
 
    <style type="text/css">
    ::selection{ background-color: #E13300; color: white; }
    ::moz-selection{ background-color: #E13300; color: white; }
    ::webkit-selection{ background-color: #E13300; color: white; }
    body {
        background-color: #fff;
        margin: 40px;
        font: 13px/20px normal Helvetica, Arial, sans-serif;
        color: #4F5155;
    }
    a {
        color: #003399;
        background-color: transparent;
        font-weight: normal;
    }
    h1 {
        color: #444;
        background-color: transparent;
        border-bottom: 1px solid #D0D0D0;
        font-size: 19px;
        font-weight: normal;
        margin: 0 0 14px 0;
        padding: 14px 15px 10px 15px;
    }
    code {
        font-family: Consolas, Monaco, Courier New, Courier, monospace;
        font-size: 12px;
        background-color: #f9f9f9;
        border: 1px solid #D0D0D0;
        color: #002166;
        display: block;
        margin: 14px 0 14px 0;
        padding: 12px 10px 12px 10px;
    }
    #body{
        margin: 0 15px 0 15px;
    }
    
    p.footer{
        text-align: right;
        font-size: 11px;
        border-top: 1px solid #D0D0D0;
        line-height: 32px;
        padding: 0 10px 0 10px;
        margin: 20px 0 0 0;
    }
    
    #container{
        margin: 10px;
        border: 1px solid #D0D0D0;
        -webkit-box-shadow: 0 0 8px #D0D0D0;
    }
   </style>
</head>
<body>
 
<div id="container">
    <h1>Welcome to CodeIgniter!</h1>
 
    <div id="body">
        <p>The page you are looking at is being generated dynamically by CodeIgniter.</p>
 
        <p>If you would like to edit this page you'll find it located at:</p>
        <code>application/views/welcome_message.php</code>
 
        <p>The corresponding controller for this page is found at:</p>
        <code>application/controllers/welcome.php</code>
 
        <p>If you are exploring CodeIgniter for the very first time, you should start by reading the <a href="user_guide/">User Guide</a>.</p>
    </div>
 
    <p class="footer">Page rendered in <strong>{elapsed_time}</strong> seconds</p>
</div>
 
</body>
</html>
cs





  welcome_message.php를 아래와 같이 수정해서 hello world 문구를 띄워봅시다.




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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Welcome to CodeIgniter</title>
 
    <style type="text/css">
    ::selection{ background-color: #E13300; color: white; }
    ::moz-selection{ background-color: #E13300; color: white; }
    ::webkit-selection{ background-color: #E13300; color: white; }
    body {
        background-color: #fff;
        margin: 40px;
        font: 13px/20px normal Helvetica, Arial, sans-serif;
        color: #4F5155;
    }
    a {
        color: #003399;
        background-color: transparent;
        font-weight: normal;
    }
    h1 {
        color: #444;
        background-color: transparent;
        border-bottom: 1px solid #D0D0D0;
        font-size: 19px;
        font-weight: normal;
        margin: 0 0 14px 0;
        padding: 14px 15px 10px 15px;
    }
    code {
        font-family: Consolas, Monaco, Courier New, Courier, monospace;
        font-size: 12px;
        background-color: #f9f9f9;
        border: 1px solid #D0D0D0;
        color: #002166;
        display: block;
        margin: 14px 0 14px 0;
        padding: 12px 10px 12px 10px;
    }
    #body{
        margin: 0 15px 0 15px;
    }
    
    p.footer{
        text-align: right;
        font-size: 11px;
        border-top: 1px solid #D0D0D0;
        line-height: 32px;
        padding: 0 10px 0 10px;
        margin: 20px 0 0 0;
    }
    
    #container{
        margin: 10px;
        border: 1px solid #D0D0D0;
        -webkit-box-shadow: 0 0 8px #D0D0D0;
    }
   </style>
</head>
<body>
 
<div id="container">
    <h1>Hello world</h1>
 
    <div id="body">
        <p> 코드이그나이터 설치 후 볼 수 있는 화면입니다.</p>
    </div>
 
    <p class="footer">Page rendered in <strong>{elapsed_time}</strong> seconds</p>
</div>
 
</body>
</html>
cs





 이번 절에서는 CodeIgniter의 Welcome 화면을 변경하여 원하는 결과를 화면에 출력했습니다. 


 다음 장에서는 이번 절에서 빠진 모델을 추가하여 MVC 패턴으로 Todo Application을 만들어 보겠습니다.










* 이 포스트는 서적 '만들면서 배우는 CodeIgniter 프레임워크'를 참고하여 작성하였습니다.

다른 카테고리의 글 목록

Web/CodeIgniter 카테고리의 포스트를 톺아봅니다
조회수 확인
PHP - AJAX and MySQL

 




1. AJAX Database Example

 아래 예제는 AJAX를 이용하여 웹페이지에서 데이터베이스로부터 정보를 어떻게 가져오는지에 대한 예제입니다.
 



2. Example Explained - The MySQL Database

 데이터 베이스 테이블은 아래와 같습니다.

idFirstNameLastNameAgeHometownJob
1PeterGriffin41QuahogBrewery
2LoisGriffin40NewportPiano Teacher
3JosephSwanson39QuahogPolice Officer
4GlennQuagmire41QuahogPilot

 

 


3. Example Explained

 예제는 리스트 박스를 사용자가 클릭 했을 때, showUser()를 호출하게 하는 예제를 만들겠습니다.


 
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
37
38
39
40
41
42
<html>
<head>
<script>
function showUser(str) {
    if (str == "") {
        document.getElementById("txtHint").innerHTML = "";
        return;
    } else { 
        if (window.XMLHttpRequest) {
            // code for IE7+, Firefox, Chrome, Opera, Safari
            xmlhttp = new XMLHttpRequest();
        } else {
            // code for IE6, IE5
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        xmlhttp.onreadystatechange = function() {
            if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                document.getElementById("txtHint").innerHTML = xmlhttp.responseText;
            }
        }
        xmlhttp.open("GET","getuser.php?q="+str,true);
        xmlhttp.send();
    }
}
</script>
</head>
<body>
 
<form>
<select name="users" onchange="showUser(this.value)">
  <option value="">Select a person:</option>
  <option value="1">Peter Griffin</option>
  <option value="2">Lois Griffin</option>
  <option value="3">Joseph Swanson</option>
  <option value="4">Glenn Quagmire</option>
  </select>
</form>
<br>
<div id="txtHint"><b>Person info will be listed here...</b></div>
 
</body>
</html>
cs

 



 코드 설명:

  첫째로, 어느 사람도 선택되지 않았는지 확인합니다. 


  사람이 선택되었다면, 아래와 같은 일을 합니다:

   - XMLHttpRequest 객체를 생성

   - 서버 반응에 의해 실행되어질 함수 생성

   - 서버로 요청을 보냄

   - URL에 추가된 파라미터 q를 확인




4. The PHP File
 자바스크립트에 의해 호출되는 서버의 페이지는 getuser.php라는 PHP 파일입니다.

   
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<!DOCTYPE html>
<html>
<head>
<style>
table {
    width: 100%;
    border-collapse: collapse;
}
table, td, th {
    border: 1px solid black;
    padding: 5px;
}
th {text-align: left;}
</style>
</head>
<body>
 
<?php
$q = intval($_GET['q']);
 
$servername = "localhost";
$username = "----";
$password = "----";
$dbname = "mydb";
 
// Create connection
$con = new mysqli($servername$username$password$dbname);
 
if (!$con) {
    die('Could not connect: ' . mysqli_error($con));
}
 
mysqli_select_db($con,"ajax_demo");
$sql="SELECT * FROM user WHERE id = ".$q;
$result = mysqli_query($con,$sql);
 
echo "<table>
<tr>
<th>Firstname</th>
<th>Lastname</th>
<th>Age</th>
<th>Hometown</th>
<th>Job</th>
</tr>";
while($row = mysqli_fetch_array($result)) {
    echo "<tr>";
    echo "<td>" . $row['firstname'] . "</td>";
    echo "<td>" . $row['lastname'] . "</td>";
    echo "<td>" . $row['age'] . "</td>";
    echo "<td>" . $row['hometown'] . "</td>";
    echo "<td>" . $row['job'] . "</td>";
    echo "</tr>";
}
echo "</table>";
mysqli_close($con);
?>
</body>
</html>
cs
 



  




 설명:

  1. PHP는 MySQL 서버와 연결을 엽니다.

  2. 일치하는 사람을 찾습니다.

  3. HTML 테이블을 생성한 뒤, 데이터를 채우고, txtHint placeholder로 전송합니다.

 






* 이 강좌는 'w3schools'를 참조하여 작성하였습니다.

다른 카테고리의 글 목록

Web/PHP 카테고리의 포스트를 톺아봅니다

[PHP] 43. Limit Data - PHP 강좌, PHP5

2015.06.13 14:07 - Palpit
조회수 확인
PHP Limit Data Selections From MySQL


1. Limit Data Selections From a MySQL Database
 MySQL은 명시된 레코드의 갯수만큼 반환하는 LIMIT 절을 제공합니다.

 LIMIT 절은 여러 페이지 결과나 SQL로 페이지 매길 때 쉽게 사용가능 하고, 큰 테이블에서 유용합니다. 

 Orders 테이블에 1 부터 30까지의 모든 레코드만을 보기를 원한다고 가정합시다. SQL 질의는 아래와 같습니다:

$sql = "SELECT * FROM Orders LIMIT 30";



 SQL 질의가 실행될 때, 처음 30개의 레코드를 반환할 것 입니다.

 16부터 25까지의 레코드를 원한다면??

 MySQL은 이러한 처리를 위한 방법을 제공합니다: OFFSET

 아래 SQL 질의는 레코드 16부터 시작하여 10개의 레코드만을 반환할 것 입니다.



$sql = "SELECT * FROM Orders LIMIT 10 OFFSET 15";

 





* 이 강좌는 'w3schools'를 참조하여 작성하였습니다.

다른 카테고리의 글 목록

Web/PHP 카테고리의 포스트를 톺아봅니다

[PHP] 42. Update Data - PHP 강좌, PHP5

2015.06.13 14:07 - Palpit
조회수 확인

PHP Update Data in MySQL
 

1. Update Data In a MySQL Table Using MySQLi
 UPDATE 구문은 테이블에 존재하는 레코드를 수정하는데 사용됩니다:

UPDATE table_name
SET column1=value, column2=value2,...
WHERE some_column=some_value 


 MyGuests 테이블을 살펴봅시다:


 

 



 아래 에제는 id 2인 레코드를 수정하는 예제입니다.

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
<?php
$servername = "localhost";
$username = "----";
$password = "----";
$dbname = "myDB";
 
// Create connection
$conn = new mysqli($servername$username$password$dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
 
$sql = "UPDATE MyGuests SET lastname='Moon' WHERE id=2";
 
if ($conn->query($sql=== TRUE) {
    echo "Record updated successfully";
else {
    echo "Error updating record: " . $conn->error;
}
 
$conn->close();
?>
cs



 수정하고 난 뒤 조회를 해보겠습니다.



 

 




 위 결과처럼 id 2 레코드의 lastname이 변경되었습니다.
 




 




* 이 강좌는 'w3schools'를 참조하여 작성하였습니다.

다른 카테고리의 글 목록

Web/PHP 카테고리의 포스트를 톺아봅니다

[PHP] 41. Delete Data - PHP 강좌, PHP5

2015.06.13 14:06 - Palpit
조회수 확인

PHP Delete Data From MySQL


1. Delete Data From a MySQL Table Using MySQLi
 DELETE 구문은 테이블에서 레코드를 지울 때 사용됩니다.


DELETE FROM table_name
WHERE some_column = some_value



 * DELETE 문법의 WHERE 절을 명시하세요!: WHERE 절은 삭제되어야할 레코드를 명시합니다. WHERE 절을 빼트린다면, 모든 레코드가 삭제될 것 입니다!


 MyGuests 테이블을 살펴봅시다.

 





 아래 예제는 MyGuests 테이블의 id가 1번인 레코드를 삭제하는 예제입니다:


 

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
 
<?php
$servername = "localhost";
$username = "----";
$password = "----";
$dbname = "myDB";
 
// Create connection
$conn = new mysqli($servername$username$password$dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
 
// sql to delete a record
$sql = "DELETE FROM MyGuests WHERE id=1";
 
if ($conn->query($sql=== TRUE) {
    echo "Record deleted successfully";
else {
    echo "Error deleting record: " . $conn->error;
}
 
$conn->close();
?>
 
cs







 




삭제를 완료하고 다시 전체 데이터를 조회를 해보겠습니다.




 




 id 1 데이터가 삭제된 걸 확인 할 수 있습니다.








* 이 강좌는 'w3schools'를 참조하여 작성하였습니다.

다른 카테고리의 글 목록

Web/PHP 카테고리의 포스트를 톺아봅니다

[PHP] 40. Select Data - PHP 강좌, PHP5

2015.06.13 14:05 - Palpit
조회수 확인

PHP Select Data From MySQL
 




1. Select Data From a MySQL Database
 SELECT 구문은 하나 이상의 테이블에서 데이터를 선택하는데 사용됩니다.



SELECT column_name(s) FROM table_name


 또는 테이블로부터 모든 컬럼을 선택하는데 사용됩니다.


SELECT * FROM table_name





2. Select Data With MySQLi
 아래 예제는 MyGuests 테이블에서 id, firstname, lastname을 페이지에 선택하여 출력하는 예제입니다:


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
<!DOCTYPE html>
<html>
<body>
 
<?php
$servername = "localhost";
$username = "----";
$password = "----";
$dbname = "myDB";
 
// Create connection
$conn = new mysqli($servername$username$password$dbname);
// Check connection
if ($conn->connect_error) {
     die("Connection failed: " . $conn->connect_error);
 
$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = $conn->query($sql);
 
if ($result->num_rows > 0) {
     // output data of each row
     while($row = $result->fetch_assoc()) {
         echo "<br> id: "$row["id"]. " - Name: "$row["firstname"]. " " . $row["lastname"] . "<br>";
     }
else {
     echo "0 results";
}
 
$conn->close();
?>  
 
</body>
</html>
cs
 

 


 




 첫째로 MyGuests 테이블로부터 id, firstname, lastname 컬럼을 선택하는 SQL 질의를 설정합니다.
 다음 라인의 코드에서 질의를 실행하고 $result 변수에 결과 데이터를 넣습니다.

 그 다음, num_rows() 함수로 0 이상의 열을 반환했는지 검사합니다.




 0 이상의 열을 반환했다면, fetch_assoc() 함수로 루프를 통해 모든 결과를 associative 배열에 넣습니다.
 while() 반복문은 결과 집합을 통해 루프를 돌고, id, firstname, lastname 컬럼을 출력합니다.

 
 또한, HTML 테이블에도 결과를 넣을 수 있습니다:


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
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
 
// Create connection
$conn = new mysqli($servername$username$password$dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
 
$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = $conn->query($sql);
 
if ($result->num_rows > 0) {
    echo "<table><tr><th>ID</th><th>Name</th></tr>";
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo "<tr><td>".$row["id"]."</td><td>".$row["firstname"]." ".$row["lastname"]."</td></tr>";
    }
    echo "</table>";
else {
    echo "0 results";
}
$conn->close();
?>
 
cs









* 이 강좌는 'w3schools'를 참조하여 작성하였습니다.

다른 카테고리의 글 목록

Web/PHP 카테고리의 포스트를 톺아봅니다
조회수 확인

PHP Prepared Statements
 Prepared 구문은 SQL 삽입에 매우 유용한 구문입니다.



1. Prepared Statements and Bound Parameters
 Prepared 구문은 높은 효율로 SQL 구문을 반복적으로 실행하는데 유용합니다.
 
 Prepared 구문은 아래 순서로 구동됩니다:
  1. Prepare: SQL 구문 템플릿으로 데이터베이스에 생성되고 보내집니다. 특정 값을 명시하지 않은 체 내비둡니다. (label "?")
   예: INSERT INTO MyGuests VALUES(?, ?, ?)
  
  2. 데이터베이스는 SQL 구문 템플릿을 해석, 컴파일하고 질의 최적화를 수행하고, 실행없이 결과를 저장합니다.

  3. Execute: 어플리케이션은 값을 파라미터와 연결하고, 데이터베이스는 구문을 실행합니다. 어플리케이션은 원하는 다른 값에 따라 여러 번 구문을 실행 할 수 있습니다.

 SQL 구문을 직접 실행하는 것과 비교해보면, prepared 구문은 2가지 주 장점을 가지고 있습니다:
  - Prepared 구문은 질의 준비를 단 한번 완료함으로써, 파싱 타임을 줄여줍니다.
  - 연결된 파라미터는 서버의 대역폭(bandwidth)를 줄여줍니다. 전체 질의를 보내는 것이 아닌, 필요로 할 때마다 파라미터만 보내므로.
  - Prepared 구문은 SQL 삽입에 매우 유용합니다.





2. Prepared Statements in MySQLi
 
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
37
38
39
<?php
$servername = "localhost";
$username = "root";
$password = "rhapsody3";
$dbname = "myDB";
 
// Create connection
$conn = new mysqli($servername$username$password$dbname);
 
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
 
// prepare and bind
$stmt = $conn->prepare("INSERT INTO MyGuests (firstname, lastname, email) VALUES (?, ?, ?)");
$stmt->bind_param("sss"$firstname$lastname$email);
 
// set parameters and execute
$firstname = "John";
$lastname = "Doe";
$email = "john@example.com";
$stmt->execute();
 
$firstname = "Mary";
$lastname = "Moe";
$email = "mary@example.com";
$stmt->execute();
 
$firstname = "Julie";
$lastname = "Dooley";
$email = "julie@example.com";
$stmt->execute();
 
echo "New records created successfully";
 
$stmt->close();
$conn->close();
?>
cs

 




 

 









* 이 강좌는 'w3schools'를 참조하여 작성하였습니다.

다른 카테고리의 글 목록

Web/PHP 카테고리의 포스트를 톺아봅니다