PHP WEB制作

phpフレームワークlaravel4でデータベースを操作してみました。

投稿日:2013年12月4日 更新日:

phpのフレームワークlaravel4でデータベースの操作をためしました。
laravel4では、「Eloquent ORM」が含まれており、簡単にデータベースの操作が可能です。

1. 今回ブログの記事とコメント用のテーブルを操作します。
CREATE TABLE IF NOT EXISTS `entries` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`title` varchar(100) DEFAULT NULL,
`text` varchar(100) DEFAULT NULL,
`updated_at` datetime DEFAULT NULL,
`created_at` datetime DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE IF NOT EXISTS `comments` (

`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`entry_id` int(10) unsigned DEFAULT NULL,
`text` varchar(100) DEFAULT NULL,
`updated_at` datetime DEFAULT NULL,
`created_at` datetime DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

2. 接続するデータベースの指定
app/config/database.phpの以下の部分を編集します。
‘mysql’ => array(
‘driver’ => ‘mysql’,
‘host’ => ‘localhost’,
‘database’ => ‘laravel’,
‘username’ => ”,
‘password’ => ”,
‘charset’ => ‘utf8′,
‘collation’ => ‘utf8_unicode_ci’,
‘prefix’ => ”,
),

3. app/models/Entry.phpとComment.phpを作成します。

ファイルの中身は、
– Entry.php
<?php
class Entry extends Eloquent{
// 1(エントリー)対多(コメント)の関連を設定します。
public function comment() {
return $this->hasMany(‘Comment’);
}
}

– Comment.php
<?php
class Comment extends Eloquent{
// 1(エントリー)対多(コメント)の関連を設定します。
public function entry() {
return $this->belongsTo(‘Entry’);
}
}
です。

 

4. コントローラのアクションでデータベースを送信します。

public function showTest() {
$entry = Entry::find(1); // 1記事目取得します。
echo $entry->title; // 1記事目のタイトルが表示されます。

$comments = Entry::find(1)->comment; // 1記事目のコメントを取得します。
foreach ($comments as $key => $comment) {
echo $comment->text.”<br>”; // コメントの内容を表示します。
}
return View::make(‘test’);
}

-PHP, WEB制作

関連記事

レスポンシブにも対応!③ フリックスライダーを作成してみました。

レスポンシブにも対応!③ フリックスライダーを作成してみました。

今回はレスポンシブに対応できるスライドショーを作成してみたいと思います。 ただ、レスポンシブに対応しているだけでなく、 スマホに便利なフリックも可能なものをご紹介致します。 前回までの関連記事です。 …

デザインの幅が広がる!クオリティの高いイラストサイトまとめ

デザインの幅が広がる!クオリティの高いイラストサイトまとめ

デザインの幅が広がる!クオリティの高いイラストサイトまとめ http://www.markernet.co.jp/blog/2015/08/07/post-5940/ Facebook

jQueryを使ってみよう【開閉式メニューを作る編】

jQueryを使ってみよう【開閉式メニューを作る編】

html・CSSでのマークアップは何となく分かるけどjQueryはちょっと分からないという方、 今からjQueryを使ってみようと思っている方必見。 jQueryの便利な使い方をご紹介します。 jQu …

多言語サイトの作り方は?デザインやビジネスにおける重要性について徹底解説

多言語サイトの作り方は?デザインやビジネスにおける重要性について徹底解説

貴社のWEBサイトは、言葉の壁に阻まれていませんか?グローバル市場で成功を収めている企業には、ある共通点があります。それは、多言語サイトの活用です。驚くべきことに、多言語サイトを導入した企業の70%以 …

PHP(CakePHP)の開発でうまく動作しない場合について

PHP(CakePHP)の開発でうまく動作しない場合について

PHP(CakePHP)の開発でうまく動作しない場合の解決方法について何点か紹介します。 – CakePHPのモデルのsave()メソッドでレコードを更新したときに更新日付(modified列)が更新 …