Mini Shell

Direktori : /home/runcloud/webapps/wpdefault/domain/
Upload File :
Current File : /home/runcloud/webapps/wpdefault/domain/index.php

<?php
session_start();
if(!isset($_SESSION['login'])) {
	header('LOCATION:login.php'); die();
}
?>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="robots" content="noindex">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css">
  <link href="https://fonts.googleapis.com/css?family=Montserrat" rel="stylesheet">
 <title>CRUD Operation using JSON File in PHP</title>
 <style>
.table td.domain {word-break: break-all;}
.payment-form{padding-bottom:50px;font-family:'Montserrat',sans-serif}
.payment-form.dark{background-color:#f6f6f6}
.payment-form .content{box-shadow:0 2px 10px rgba(0,0,0,0.075);background-color:#fff}
.payment-form .block-heading{padding-top:50px;margin-bottom:40px;text-align:center}
.payment-form .block-heading p{text-align:center;max-width:420px;margin:auto;opacity:.7}
.payment-form.dark .block-heading p{opacity:.8}
.payment-form .block-heading h1,.payment-form .block-heading h2,.payment-form .block-heading h3{margin-bottom:1.2rem;color:#3b99e0}
.payment-form form{border-top:2px solid #5ea4f3;box-shadow:0 2px 10px rgba(0,0,0,0.075);background-color:#fff;padding:0;max-width:600px;margin:auto}
.payment-form .title{font-size:1em;border-bottom:1px solid rgba(0,0,0,0.1);margin-bottom:.8em;font-weight:600;padding-bottom:8px}
.payment-form .products{background-color:#f7fbff;padding:25px}
.payment-form .products .item{margin-bottom:1em}
.payment-form .products .item-name{font-weight:600;font-size:.9em}
.payment-form .products .item-description{font-size:.8em;opacity:.6}
.payment-form .products .item p{margin-bottom:.2em}
.payment-form .products .price{float:right;font-weight:600;font-size:.9em}
.payment-form .products .total{border-top:1px solid rgba(0,0,0,0.1);margin-top:10px;padding-top:19px;font-weight:600;line-height:1}
.payment-form .card-details{padding:25px 25px 15px}
.payment-form .card-details label{font-size:12px;font-weight:600;margin-bottom:15px;color:#79818a;text-transform:uppercase}
.payment-form .card-details button{margin-top:.6em;padding:12px 0;font-weight:600}
.payment-form .date-separator{margin-left:10px;margin-right:10px;margin-top:5px}
@media (min-width: 576px) {
.payment-form .title{font-size:1.2em}
.payment-form .products{padding:40px}
.payment-form .products .item-name{font-size:1em}
.payment-form .products .price{font-size:1em}
.payment-form .card-details{padding:40px 40px 30px}
.payment-form .card-details button{margin-top:2em}
}
 </style>
</head>
<body>
<main class="container page">
    <section class="payment-form dark">
<?php
$json = file_get_contents('domain.json');
$data = json_decode($json,true);
switch($_GET['action']) {
	case 'add':
    	if(isset($_POST['btnadd'])){
			 $add_arr = array(
			 'dbname' => $_POST['dbname'],
			 'domain' => str_replace(array("\r\n"," "), array(",",""), $_POST['domain'])
			 );
			 $data[] = $add_arr;
			 
			 $data = json_encode($data, JSON_PRETTY_PRINT);
			 file_put_contents('domain.json', $data);
			 
			 header('location: index.php');
		 }  ?>
		 
		 	<div class="container">
			    <div class="block-heading">
		          <h2>Add Record</h2>
		        </div>   
				<form method="post" name="frmAdd">
					<div class="card-details">
				        <div class="row">
			                <div class="form-group col-sm-12">
			                    <label>Tên DB</label>
			                    <input class="form-control" type="text" name="dbname" placeholder="vd: tenstore" required>
			                </div>
			                <div class="form-group col-sm-12">
			                    <label>Domain (Mỗi domain 1 hàng)</label>
			                    <textarea class="form-control" name="domain" rows="4" placeholder="vd: tenstore.com" required></textarea>
			                </div>
			                <input class="btn btn-primary btn-block confirm-button" type="submit" value="Add" name="btnadd">
				        </div>
					</div>
				           
				</form>
					
				</div>
		 	
	 <?php
    break;
case 'update':
    	$edit_id = $_GET['edit_id'];
		 $data_array = $data;
		 //get json data
		 $row = $data_array[$edit_id]; 
		if(isset($_POST['btnUpdate']))
		{ 
		 
		 $update_arr = array(
		 'dbname' => $_POST['dbname'],
		 'domain' => str_replace(array("\r\n"," "), array(",",""), $_POST['domain'])
		 );
		 
		 $data_array[$edit_id] = $update_arr;
		 
		 $data = json_encode($data_array, JSON_PRETTY_PRINT);
		 file_put_contents('domain.json', $data);
		 
		 header('location: index.php');
		 } ?>
		 
		 	<div class="block-heading">
	          <h2>Update Record</h2>
	        </div> 
		 	<form method="post" name="frmUpdate">
			 	<div class="card-details">
			        <div class="row">
		                <div class="form-group col-sm-12">
		                    <label>Tên Data</label>
		                    <input class="form-control" type="text" name="dbname" value="<?=$row['dbname'];?>" readonly>
		                </div>
		                <div class="form-group col-sm-12">
		                    <label>Domain (Mỗi domain 1 hàng)</label>
		                    <textarea class="form-control" name="domain" rows="4"><?=str_replace(",","\n",$row['domain']);?></textarea>
		                </div>
		                <input class="btn btn-primary btn-block confirm-button" type="submit" value="Update" name="btnUpdate">
			        </div>
				</div>
			</form>	
		 
	 <?php
    break;
case 'delete':
	    $delete_id = $_GET['delete_id'];
		 unset($data[$delete_id]);	 
		 //encode back to json
		 $data = json_encode($data, JSON_PRETTY_PRINT);
		 file_put_contents('domain.json', $data);	 
		 header('location: index.php');
    break;
default:     
?>
		<div class="col-sm-12">
			<div class="row col-sm-12">				
				<a href="taodb.php" class="btn btn-primary col-sm-3">Tạo DB</a>
				<a href="restore.php" class="btn btn-info col-sm-3">Import DB</a>
				<a href="?action=add" class="btn btn-primary col-sm-3">Add Domain</a>
				<button id="button_save" type="button" class="btn btn-info col-sm-3">GEN FILE</button>				
			</div>
			<p id="button_note"></p>
		</div>
        <div>
			<div class="row col-sm-12">	
		<table border="1" align="center" class="table table-striped table-hover table-borderless">			    
			    <thead>
			    <tr>
			        <th scope="col">ID</th>
			        <th scope="col">Tên DB</th>
			        <th scope="col">Domain</th>
			        <th scope="col">#</th>
			    </tr>
			    </thead>
			    <tbody>
			<?php
			include 'domain.php';						  
			 if(!empty($data)){
				 foreach($data as $keyid => $row){  ?>
			        <tr>
				        <td><?php echo $keyid; ?></td>
			            <td><?php echo $row['dbname']; ?></td>
			            <td class="domain"><?php echo $row['domain']; ?></td>
			            <td><a href="?action=update&edit_id=<?php echo $keyid; ?>">Edit</a>
			            <!--&nbsp;/&nbsp;<a href="?action=delete&delete_id=<?php echo $keyid; ?>">Delete</a> -->
			            </td>
			        </tr>
			        <?php
					 }
			    }
			    ?>
			    </tbody>
			</table>
			</div>
		</div>
			<?php
		}	?>
	</section>
</main>
</body>
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
<script>
$("#button_save").click(function(){
	$("#button_note").html("Đang lưu file...");
  $.ajax({
	  url: "save.php",
	  success: function(result){
	  $("#button_note").html(result);
  }});
});
</script>
</body>
</html>