<./>.dev./hood

mysql_connect ====> new PDO()
mysql_fetch_(row|array|assoc) ====> $stmt->fetch()

쿼리의 경우

예전:
    $q = mysql_query("SELECT * FROM table WHERE field1 = $field1 AND field2 = '$field2' ORDER BY id");

PDO (정석대로):
    $q = $dbh->prepare("SELECT * FROM table WHERE field1 = ? AND field2 = ? ORDER BY id");
    $q->bindParam(1, $field1, PDO::PARAM_INT);
    $q->bindParam(2, $field2, PDO::PARAM_STR);
    $q->execute();

PDO (그나마 좀 간소화시킨 문법):
    $q = $dbh->prepare("SELECT * FROM table WHERE field1 = ? AND field2 = ? ORDER BY id");
    $q->execute(array($field1, $field2));

///////////////////////////////////////////

$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();


바인딩 처리가 관건인듯.

'Server Side > PHP' 카테고리의 다른 글

브라우저 캐시 남기지 않기  (0) 2016.08.31
코드이그나이터 설정  (0) 2016.08.17
classs static 활용법  (0) 2016.08.09
foreach 로 다차원 배열 만들기  (0) 2016.08.08
PHP 로 XML/RSS 파일 생성하기  (0) 2016.08.07