<!DOCTYPE html>
<html lang="ko">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>sample page</title>
<style>
body{display: flex; align-items: flex-start; justify-content: space-between; padding: 0 40px;}
body>div{width: calc(50% - 40px); display: flex; flex-direction: column;}
h1 { font-size:14pt;padding:5px 30px;background-color:#333; color: #fff; display: inline-block; border-radius: 20px;}
table tr td {padding:5px 10px; color: #333; background-color: #cecece;}
input[type="submit"]{border-radius: 4px; padding: 5px 10px; border: 0; background-color: #333; color: #fff; cursor: pointer;}
span{font-size: 12px; color: #666;}
</style>
</head>
<body>
<div class="ctl">
<h1>추가하기</h1>
<table>
<form method="post" action="add.php">
<tr><td>NAME:</td><td><input type="text" name="name"></td></tr>
<tr><td>leg:</td><td><input type="number" name="leg"></td></tr>
<tr><td>eat:</td><td><input type="number" name="eat" max="3"> <span>1 = 육식, 2 = 채식, 3 = 잡식</span></td></tr>
<tr><td></td><td><input type="submit" value="추가"></td></tr>
</form>
</table>
<hr>
<h1>삭제하기</h1>
<table>
<form method="post" action="remove.php">
<tr><td>srh idx:</td><td><input type="number" name="idx"></td></tr>
<tr><td>srh name:</td><td><input type="text" name="name"></td></tr>
<tr><td>srh leg:</td><td><input type="number" name="leg"></td></tr>
<tr><td></td><td><input type="submit" value="삭제"></td></tr>
</form>
</table>
<hr>
<h1>변경하기</h1>
<table>
<form method="post" action="update.php">
<tr><td>select idx:</td><td><input type="number" name="idx"></td></tr>
<tr><td>change name:</td><td><input type="text" name="name"></td></tr>
<tr><td>change leg:</td><td><input type="number" name="leg"></td></tr>
<tr><td></td><td><input type="submit" value="변경"></td></tr>
</form>
</table>
<hr>
<form method="post" action="./select.php" class="form_srh">
<tr><td>이름 검색: </td><td><input type="text" name="name" class="srh_name"></td></tr>
<tr><td></td><td><input type="submit" value="송신"></td></tr>
</form>
</div>
<div class="view">
<h1>테이블 리스트 조회</h1>
<table>
<thead>
<td>idx</td>
<td>name</td>
<td>leg</td>
<td>eat</td>
</thead>
<tbody class="table">
</tbody>
</table>
</div>
<script src="//code.jquery.com/jquery-latest.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
function postActive(data){
$('.table').empty();
data = JSON.parse(data);
data.forEach(function(data){
var idx = data.idx;
var name = data.name;
var leg = data.leg;
var eat = data.food;
$('.table').append(
`<tr>
<td>${idx}</td>
<td>${name}</td>
<td>${leg}</td>
<td>${eat}</td>
</tr>`
);
})
}
$.post('https://www.jesang0.com/db_test/select.php',function(data){
postActive(data);
})
$('body').on('submit', '.form_srh', function(e){
e.preventDefault();
var srh_name = $('.srh_name').val();
$.post('https://www.jesang0.com/db_test/select.php',{name: srh_name},function(data){
postActive(data);
});
})
})
</script>
</body>
</html>
1. Select
<?php
require_once "db_info.php";
$query = " SELECT
test_table.idx,
test_table.name,
test_table.leg,
eat_table.food
FROM test_table
LEFT OUTER JOIN eat_table
ON test_table.eat = eat_table.idx
";
if (isset($_POST['name'])){
$name = $_POST['name'];
if($name != ''){
$query .= "WHERE name LIKE '$name'";
}
}
try {
$pdo = new PDO("mysql:host={$dbHost};dbname={$dbName};charset={$dbChar}", $dbUser, $dbPass);
$statement = $pdo->query($query);
$result = $statement->fetchall(PDO::FETCH_ASSOC);
$result = json_encode($result, JSON_UNESCAPED_UNICODE);
echo $result;
} catch(PDOException $ex){
echo "<h1>연결 실패:" . $ex->getMessage() . "</h1>";
}
?>
2. Insert
<?php
require_once "db_info.php";
$name = $_POST['name'];
$leg = $_POST['leg'];
$eat = $_POST['eat'];
try {
$pdo = new PDO("mysql:host={$dbHost};dbname={$dbName};charset={$dbChar}", $dbUser, $dbPass);
$query = "INSERT INTO test_table (name, leg, eat) VALUES ('$name', '$leg', '$eat')";
$pdo->exec($query);
unset($pdo);
header('Location: index.php');
} catch(PDOException $ex){
echo "<h1>연결 실패:" . $ex->getMessage() . "</h1>";
}
?>
3. Update
<?php
require_once "db_info.php";
$idx = $_POST['idx'];
$name = $_POST['name'];
$leg = $_POST['leg'];
try {
$pdo = new PDO("mysql:host={$dbHost};dbname={$dbName};charset={$dbChar}", $dbUser, $dbPass);
$stmt = $pdo->prepare("UPDATE test_table SET name = :name, leg = :leg WHERE idx = '$idx'");
$stmt->bindValue(":name",$name);
$stmt->bindValue(":leg",$leg);
$stmt->execute();
unset($stmt);
header('Location: index.php');
} catch(PDOException $ex){
echo "<h1>연결 실패:" . $ex->getMessage() . "</h1>";
}
4. Delete
<?php
require_once "db_info.php";
$idx = $_POST['idx'];
$name = $_POST['name'];
$leg = $_POST['leg'];
try {
$pdo = new PDO("mysql:host={$dbHost};dbname={$dbName};charset={$dbChar}", $dbUser, $dbPass);
if($idx != null){
$query = "DELETE from test_table where idx = '$idx'";
}else if ($name != null){
$query = "DELETE from test_table where name = '$name'";
}else {
$query = "DELETE from test_table where leg = '$leg'";
}
$pdo->exec($query);
unset($pdo);
header('Location: index.php');
} catch(PDOException $ex){
echo "<h1>연결 실패:" . $ex->getMessage() . "</h1>";
}