Created
March 10, 2015 12:43
-
-
Save momota10s/a42a5921a8cb168399f7 to your computer and use it in GitHub Desktop.
簡易掲示板のformです。codeigniterとbootstrapを使用しています。また、非同期通信によってlikeボタンと投稿ボタンによるsubmitでリロードをしない実装となっています。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
if ( ! defined('BASEPATH')) exit('No direct script access allowed'); | |
?> | |
<?php | |
$username = array( | |
'name' => 'name', | |
'value' => set_value('name'), | |
'size' => '25', | |
'type' => 'text', | |
'class' => 'form-control' | |
); | |
$comment = array( | |
'name' => 'comment', | |
'value' => set_value('comment'), | |
'rows' => '5', | |
'cols' => '50', | |
'class' => 'form-control' | |
); | |
?> | |
<!DOCTYPE html> | |
<html lang="ja"> | |
<head> | |
<meta charset="utf-8"> | |
<meta http-equiv="X-UA-Compatible" content="IE=edge"> | |
<meta name="viewport" content="width=device-width, initial-scale=1"> | |
<meta name="description" content=""> | |
<meta name="author" content=""> | |
<link href="//maxcdn.bootstrapcdn.com/bootswatch/3.2.0/simplex/bootstrap.min.css" rel="stylesheet"> | |
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> | |
<script src="https://netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script> | |
<!--JQuery code--> | |
<script> | |
$(function() { | |
$('#form').on("submit", function() { | |
//HTMLでの送信をキャンセル | |
event.preventDefault(); | |
var form = $('#form'); | |
var submit = $("#form button[type='submit']"); | |
var input = $("#form input"); | |
var textarea = $("#form textarea"); | |
//入力チェック | |
if(textarea.val() == ''){ | |
alert('テキストエリアに入力してください'); | |
return false; | |
} | |
$.ajax({ | |
url:form.attr('action'), | |
type:form.attr('method'), | |
data:form.serialize(), | |
}).done(function(data) { | |
console.log(data); | |
//入力フォームの値を空にする | |
input.val(""); | |
textarea.val(""); | |
//htmlの書き換え | |
var Node=document.getElementById("display"); | |
Node.innerHTML= data; | |
$("#display").html(data); | |
}); | |
}); | |
$(".display").on("submit","form", function(){ | |
//HTMLでの送信をキャンセル | |
event.preventDefault(); | |
var form = $('.like_form'); | |
var submit = $(".like_form input[type='submit']"); | |
var id = $(this).find("input").val(); | |
var text = $(this).find("p"); | |
$.ajax({ | |
url: "/board/index.php/like_add", | |
type: "POST", | |
data: { | |
id : id | |
} | |
}).done(function(data) { | |
console.log(data); | |
$(text).html(data); | |
}).fail(function(result){ | |
// alert('error!!!'); | |
}); | |
}); | |
}); //$(function(){}) | |
</script> | |
</head> | |
<body> | |
<div id="display_all" class="container"> | |
<div class="panel panel-default"> | |
<div class="panel-heading"> | |
<h4><a href='/board/' >簡易掲示板</a></h4> | |
</div> | |
<div class="panel-body"> | |
<form id="form" method="POST" action="/board/index.php/add"> | |
<div class="form-group"> | |
<label for="exampleInputEmail1">投稿者</label> | |
<!-- <?php //echo form_error('name'); ?> --> | |
<?php echo form_input($username); ?> | |
</div> | |
<div class="form-group"> | |
<label for="exampleInputEmail1">メッセージ</label> | |
<!-- <?php //echo form_error('comment'); ?> --> | |
<?php echo form_textarea($comment); ?> | |
</div> | |
<button type="submit" id='submit-button' class="btn btn-default">Send</button> | |
</form> | |
</div> | |
</div> | |
<!--今までの投稿を表示--> | |
<?php $query = $this->boardmodel->loadComments(); ?> | |
<?php foreach ($query->result() as $row){ ?> | |
<div id="display" class="panel panel-default display"> | |
<div class="panel-body"> | |
<div class="form-group"> | |
<label for="exampleInputEmail1">投稿者</label> | |
<p class='name_text'><?php echo($row->name); ?></p> | |
</div> | |
<div class="form-group"> | |
<label for="exampleInputEmail1">投稿日時</label> | |
<p class='date_text'><?php echo($row->date); ?></p> | |
</div> | |
<div class="form-group"> | |
<label for="exampleInputEmail1">メッセージ内容</label> | |
<p class='comment_text'><?php echo($row->comment); ?></p> | |
</div> | |
<form class="like_form" method='POST' action='/board/index.php/like_add'> | |
<div class="form-group like_display"> | |
<label for="exampleInputEmail1">いいね数</label> | |
<p class="like_text"><?php echo($row->like_count); ?></p> | |
</div> | |
<input type="hidden" name='id' value=<?php echo($row->id); ?> > | |
<input type="submit" id='submit-button' value='like' class="btn btn-default"> | |
</form> | |
</div> | |
</div> | |
<?php } ?> | |
</div> <!-- /container --> | |
</body> | |
</html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment