"Lib my.php"의 두 판 사이의 차이

(새 문서: {{소문자}} *com_idb.php ==global== <source lang='php'> $mysqli = new mysqli('localhost', '계정명', '패스워드', '디비명'); if($mysqli->connect_errno) die "Connect failed:...)
 
 
(사용자 3명의 중간 판 62개는 보이지 않습니다)
1번째 줄: 1번째 줄:
{{소문자}}
==개요==
*com_idb.php
{{DISPLAYTITLE:lib_my.php}}
;lib_my.php
*필자의 커스텀 함수 라이브러리
*[[lib_my_old.php]]를 [[mysqli]]에 맞게 개편한 것.
*캐릭터셋은 [[UTF-8]]을 사용
*소스코드: https://raw.github.com/jmnote/php_lib/master/lib_my.php


==global==
==global==
<source lang='php'>
<syntaxhighlight lang='php'>
$mysqli = new mysqli('localhost', '계정명', '패스워드', '디비명');
$mysqli = new mysqli('localhost', '계정명', '패스워드', '디비명');
if($mysqli->connect_errno) die "Connect failed: ".$mysqli->connect_error;
if($mysqli->connect_errno) die('Connect failed: '.$mysqli->connect_error);
$mysqli->query("SET NAMES 'utf8'");
if(!$mysqli->set_charset('utf8')) die('Error loading character set utf8: '.$mysqli->error);
</source>


==query==
function query_rows($qry) {
<source lang='php'>
  global $mysqli;
function query($qry, $mode='APPLY')
  $result = $mysqli->query($qry);
{
  if($result === false) die("Query: [[ $qry ]] → Error: ".$mysqli->error);
if($mode == 'TEST') {
  $rows= array();
echo "<font color=red>$qry;</font><br />";
  eval('while(@$row = $result->fetch_assoc()) array_push($rows, $row);');
return;
  return $rows;
}
if($mode == 'SHOW')echo "$qry<br>";
global $mysqli;
$result = $mysqli->query($qry);
if($result === FALSE) die("query_error ($qry)");
return $result ;
}
}
</source>


==query_one==
function query_row($qry) {
<source lang='php'>
  $rows = query_rows($qry);
function query_one($qry) {
  if(count($rows)<1) return false;
$result = mysql_query($qry);
  return $rows[0];
if($result === false) die("query_error [ $qry ] message : ".mysql_error());
$row = mysql_fetch_array($result, MYSQL_NUM);
return $row[0];
}
}
</source>


==query_arr==
function query_values($qry) {
<source lang='php'>
  global $mysqli;
function query_arr($query) {
  $result = $mysqli->query($qry);
$result = mysql_query($query);
  if($result === false) die("Query: [[ $qry ]] → Error: ".$mysqli->error);
if($result === false) die("query_error [ $query ] message : ".mysql_error());
  $arr = array();
$arr = array();
  while($row = $result->fetch_row()) $arr[] = $row[0];
while($row = mysql_fetch_array($result, MYSQL_NUM)) $arr[] = $row[0];
  return $arr;
return $arr;
}
}
</source>


==query_all==
function query_one($qry) {
<source lang='php'>
  global $mysqli;
function query_all($query) {
  $result = $mysqli->query($qry);
$result = mysql_query($query);
  if($result === false) die("Query: [[ $qry ]] → Error: ".$mysqli->error);
if($result === false) die("query_error [ $query ] message : ".mysql_error());
  $row = $result->fetch_row();
$arr= array();
  if(count($row)<1) return false;
eval('while(@$r = mysql_fetch_assoc($result)) array_push($arr, $r);');
  return $row[0];
return $arr;
}
}
</source>


==single_quotes==
function query($qry) {
<source lang='php'>
  global $mysqli;
function single_quotes($value) {
  $result = $mysqli->query($qry);
return "'$value'";
  if($result === false) die("Query: [[ $qry ]] → Error: ".$mysqli->error);
  return $result ;
}
}


==insert_rows==
function my_escape($str) {
<source lang='php'>
  global $mysqli;
function insert_rows($arr, $table_name, $mode='APPLY') {
  return $mysqli->real_escape_string($str);
foreach($arr as $row) {
$keys = array_keys($row);
$keys = array_map('mysql_real_escape_string', $keys);
$values = array_values($row);
$values = array_map('mysql_real_escape_string', $values);
$values = array_map('single_quotes', $values);
$keys_str = implode(',', $keys);
$values_str = implode(',', $values);
if($mode == 'TEST') echo "INSERT INTO $table_name ($keys_str) VALUES ($values_str);<br/>";
else query("INSERT INTO $table_name ($keys_str) VALUES ($values_str)");
}
}
}
</source>


==print_rows==
function insert_id() {
<source lang='php'>
  global $mysqli;
function print_rows($rows) {
  return $mysqli->insert_id;
echo "<table><tr>";
foreach($rows[0] as $key => $value) {
echo "<th>$key</th>";
}
echo "</tr>";
foreach($rows as $row) {
echo "<tr>";
foreach($row as $key => $value) {
echo "<td>$value</td>";
}
echo "</tr>";
}
echo "</table>";
}
}
</source>
</syntaxhighlight>
</source>
 
==사용예시==
<syntaxhighlight lang='php'>
# SELECT
$rows = query_rows('SELECT * FROM table WHERE name=?', $name);
$row = query_row('SELECT * FROM table WHERE id=?', $id);
$name = query_one('SELECT name FROM table WHERE id=', $id);
$cnt = query_one('SELECT COUNT(*) FROM table');
 
# INSERT
query('INSERT INTO table1 (id, name) VALUES (?, ?)', $id, $name);
</syntaxhighlight>
 
==같이 보기==
*[[lib_my_old.php]]
*[[lib_arr.php]]
*[[lib_utf8.php]]
*[[lib_db.js]] (유니티용)
*[[lib_pdo.php]]
 
==참고==
*https://github.com/jmnote/php_lib/blob/master/lib_my.php


[[분류: DB]]
[[분류: DB]]
[[분류: PHP]]
[[분류: PHP]]
[[분류: 커스텀 함수]]
[[분류: 커스텀 함수]]

2020년 12월 25일 (금) 23:22 기준 최신판

1 개요[ | ]

lib_my.php

2 global[ | ]

$mysqli = new mysqli('localhost', '계정명', '패스워드', '디비명');
if($mysqli->connect_errno) die('Connect failed: '.$mysqli->connect_error);
if(!$mysqli->set_charset('utf8')) die('Error loading character set utf8: '.$mysqli->error);

function query_rows($qry) {
  global $mysqli;
  $result = $mysqli->query($qry);
  if($result === false) die("Query: [[ $qry ]] → Error: ".$mysqli->error);
  $rows= array();
  eval('while(@$row = $result->fetch_assoc()) array_push($rows, $row);');
  return $rows;
}

function query_row($qry) {
  $rows = query_rows($qry);
  if(count($rows)<1) return false;
  return $rows[0];
}

function query_values($qry) {
  global $mysqli;
  $result = $mysqli->query($qry);
  if($result === false) die("Query: [[ $qry ]] → Error: ".$mysqli->error);
  $arr = array();
  while($row = $result->fetch_row()) $arr[] = $row[0];
  return $arr;
}

function query_one($qry) {
  global $mysqli;
  $result = $mysqli->query($qry);
  if($result === false) die("Query: [[ $qry ]] → Error: ".$mysqli->error);
  $row = $result->fetch_row();
  if(count($row)<1) return false;
  return $row[0];
}

function query($qry) {
  global $mysqli;
  $result = $mysqli->query($qry);
  if($result === false) die("Query: [[ $qry ]] → Error: ".$mysqli->error);
  return $result ;
}

function my_escape($str) {
  global $mysqli;
  return $mysqli->real_escape_string($str);
}

function insert_id() {
  global $mysqli;
  return $mysqli->insert_id;
}

3 사용예시[ | ]

# SELECT
$rows = query_rows('SELECT * FROM table WHERE name=?', $name);
$row = query_row('SELECT * FROM table WHERE id=?', $id);
$name = query_one('SELECT name FROM table WHERE id=', $id);
$cnt = query_one('SELECT COUNT(*) FROM table');

# INSERT
query('INSERT INTO table1 (id, name) VALUES (?, ?)', $id, $name);

4 같이 보기[ | ]

5 참고[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}