PHPでOOP (894レス)
上下前次1-新
27: 2007/02/24(土)18:52 ID:??? AAS
wktk
28: 1 ◆SWtzLesEmM 2007/02/24(土)20:07 ID:??? AAS
>>25
主キーをオートインクリメント(連番の)の設定にしておくのを忘れてました。orz
CREATE TABLE `message` (
`message_id` int(11) NOT NULL auto_increment,
`name` text,
`title` text,
`message` text,
`create_date` datetime default NULL,
PRIMARY KEY (`message_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
29: 2007/02/25(日)02:57 ID:??? AAS
サンプルページ公開して
30: 2 2007/02/25(日)16:11 ID:??? AAS
定番のhelloを表示w
class hello {
var $aisatu = "こんにちは";
}
$re = new hello();
$aisatu = $re->aisatu;
echo $aisatu;
読み図ら買ったら適当に改行して
31: 2 2007/02/25(日)16:19 ID:??? AAS
#オブジェクト学校のhelloクラスを作る
class hello {
#このクラスに生徒である$aisatu君がいる
#彼に「こんにちは」という言葉を覚えさせる
var $aisatu = "こんにちは";
#放課後なので括弧で閉じる
}
#クラスの風景を覗くための魔法
$re = new hello();
#生徒$aisatu君に「こんにちは」を言わせるための魔法を矢で飛ばす。
省4
32: 2007/02/26(月)16:35 ID:??? AAS
コードの解説なんてしなくても見ればわかる。
「なぜOOP」か、だとか、
こういう場合にOOPが役立つ、というのを具体的なコードで示してくれ
33: 2007/02/26(月)18:41 ID:??? AAS
namespace は結局 PHP5 では実装されなかったんだね・・・・
悲しい。悲しすぎる。
34(1): 2007/02/26(月)23:07 ID:??? AAS
MVCのMをOOPでCは手続きVはテンプレート
35: 1 ◆SWtzLesEmM [age] 2007/02/27(火)15:21 ID:??? AAS
>>22 (1)最初はOOPを使わないで掲示板を作ってみる
OOPを使わないで作った簡単な掲示板をアップしてみます。
>>26
ファイルは、他に掲示板のトップページと、DB接続関係のデータを入れたファイルを用意しました。
WEBサーバのルート直下にデプロイした場合を想定しています。
/index.html 掲示板のトップページ
/db.php データベースの接続関係のデータのファイル
/input.php メッセージ入力ページ
/list.php メッセージ一覧ページ
/message.php メッセージ詳細ページ
36: 1 ◆SWtzLesEmM 2007/02/27(火)15:22 ID:??? AAS
index.htmlの内容は以下の通りです。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>掲示板メニュー</title>
</head>
<body>
<h1>掲示板メニュー</h1>
<div id="menu">
<ul>
省6
37: 1 ◆SWtzLesEmM 2007/02/27(火)15:24 ID:??? AAS
db.phpの内容は以下の通りです。
<?php
/**
* データベース
*/
//本番環境ドメイン名
define("DOMAIN", "xrea.com");//ドメイン名に含まれる文字列を指定
//MySQL設定(本番環境とテスト環境で切替え)
if (ereg(DOMAIN, $_SERVER['SERVER_NAME'])) {
//本番環境
省12
38: 1 ◆SWtzLesEmM 2007/02/27(火)15:25 ID:??? AAS
db.phpの続きです。
//MySQL接続関数
function db_connect() {
// MySQL 接続
$link = mysql_connect(DBSERVER, DBUSER, DBPASSWORD);
if (!$link) {
die('mysql_connect ERROR: ' . mysql_error());
}
// MySQL DB 選択
$db_selected = mysql_select_db(DBNAME, $link);
省7
39: 1 ◆SWtzLesEmM 2007/02/27(火)15:26 ID:??? AAS
db.phpの続き(その2)です。
//MySQLプリペアードステートメント関数(SQLインジェクション対策)
//(参考)外部リンク[php]:www.php.net
function mysql_prepare($query, $phs = array()) {
$phs = array_map(create_function('$ph', 'return "\'".mysql_real_escape_string($ph)."\'";'), $phs);
$curpos = 0;
$curph = count($phs)-1;
for ($i = strlen($query) - 1; $i > 0; $i--) {
if ($query[$i] !== '?') {
continue;
省12
40: 1 ◆SWtzLesEmM 2007/02/27(火)15:30 ID:??? AAS
input.phpの内容は以下の通りです。
<?php
/**
* メッセージ入力画面
*/
require_once("db.php");
db_connect();
//
$name = $_POST['name'];
$title = $_POST['title'];
省3
41(2): 1 ◆SWtzLesEmM 2007/02/27(火)15:30 ID:??? AAS
db.phpの続きです。
//入力値バリデート
if (0 < strlen($name) && 0 < strlen($title) && 0 < strlen($message)) {
//DB保存処理
$create_date = date("Y/m/d H:i:s");
$sql = "INSERT message SET
name = ? ,
title = ? ,
message = ? ,
create_date = ? ";
省13
42: 1 ◆SWtzLesEmM 2007/02/27(火)15:34 ID:??? AAS
>>41
間違えました。
>db.phpの続きです。
ではなくて、
「input.phpの続きです。」
でした。(・∀・)
あと、
>$url = "外部リンク:".$_SERVER['HTTP_HOST']."/test2/list.php";//メッセージ一覧
ではなくて、
$url = "外部リンク:".$_SERVER['HTTP_HOST']."/list.php";//メッセージ一覧
省4
43: 1 ◆SWtzLesEmM 2007/02/27(火)15:40 ID:??? AAS
>>41の訂正です。
input.phpの続きです。
//入力値バリデート
if (0 < strlen($name) && 0 < strlen($title) && 0 < strlen($message)) {
//DB保存処理
$create_date = date("Y/m/d H:i:s");
$sql = "INSERT message SET
name = ? ,
title = ? ,
message = ? ,
省15
44: 1 ◆SWtzLesEmM 2007/02/27(火)15:42 ID:??? AAS
input.phpの続き(その2)です。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>メッセージ入力</title>
</head>
<body>
<h1>メッセージ入力</h1>
<div id="menu">
<ul>
省21
45: 1 ◆SWtzLesEmM 2007/02/27(火)15:44 ID:??? AAS
list.phpの内容は以下の通りです。
<?php
/**
* メッセージ一覧画面
*/
require_once("db.php");
db_connect();
//
$page = intval($_GET['page']);
$max = 10;//1ページ当たりの最大表示件数
省12
46: 1 ◆SWtzLesEmM 2007/02/27(火)15:45 ID:??? AAS
list.phpの続きです。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>メッセージ一覧</title>
</head>
<body>
<h1>メッセージ一覧</h1>
<div id="menu">
<ul>
省14
上下前次1-新書関写板覧索設栞歴
あと 848 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.016s