menu


2016年4月30日土曜日

メール登録ホーム




これは、今作っているメールとして、広告ホームです。実際の物を表示しています。
まだ、リンク先は、作成していません。
ベースのhtmlは、FC2で、作りました。何も難しい事は、してません。


ソース



2016年4月29日金曜日

MySQLアクセスクラス




これは、phpで書いたMySQLのアクセスクラスのベースです。これを使い各アクセスクラスを作成します。

後は、各機能のベースとして、継承して作成します。

今回は、メールスタンド用として、切りだしました。



2016年4月28日木曜日

メールスタンド作成にあたり、今回は、phpのクラスを使う

前回は、べたべたのphpプログラムでした。

今回は、クラス化しようと思います。

なぜなら、今後も使い回すと思うし、クラス化すれば、サイトにもソースを載せやさすいからです。

前回は、勉強しながらだったから、そこまでやる時間もなかったし、デバッグも大変なんで、よしました。

今回は、クラス化して今後の効率化も、考えます。

前回は、ひどかった!各ソースに同じソースがありました。

今回は、クラス化して、ライブラリーとして、外部に出します。


2016年4月27日水曜日

メール送信処理



これは、phpで書いたメール送信処理です。
これだけでメール送信できます。送信先をデータベースから読み込みながらこの処理を呼ぶだけで、送信が可能となります。これは、前回ping送信サイト作成の時に登録後の確認メール送信用に作った処理です。

このソースでは、本文をじかに書いてますが、変数に入れて読んであげれば、簡単にメール送信処理が作れます。

今回は、メールスタンド用として、切りだしました。



メールスタンドデータベース構造


メールスタンドでの管理データベース構造は、以下を考えています。登録するメール内容は、使い回しも考えて保存と、ヘッダー・フッター・本文に分けて使い回しできるように考えています。過去の送信メールも、保存します。同じメールを使うかもしれないしね!登録情報は、名前とメールアドレスだけ、ここに性別とか年齢とか、アンケートして、情報を登録すれば、送信先をターゲットで絞って送信できるようになる。ここは、使う方しだい!
過去のメールも、使い回しと、いつどんなメールしたがわかるように保存します。このメールスタンドは、私がショップサイトやってたら、欲しい機能を考えました。

登録情報
テーブル 内容
名前 登録者の名前
メールアドレス 登録者のメールアドレス


メールヘッダー
テーブル 内容
タイトル ヘッダータイトル
本文 ヘッダー文章


メールフッター
テーブル 内容
タイトル フッタータイトル
本文 フッター文章


メール本文
テーブル 内容
タイトル 本文タイトル
本文 本文文章


送信メール
テーブル 内容
タイトル 送信メールタイトル
本文 送信メール内容全て
送信日付け 送信した日付け


メールスタンド用データベース

今考えているのは、名前とメールアドレス
メールヘッダー
本文
メールフッター
送信履歴
この5つのデータベースの作成が必要と考えています。
毎回メールを1から作るのは、効率が悪いですよね!
機能としては、個人名を自動で挿入する。
後は、全員に送信する。
今考えているデータベースは、こんな感じです。

2016年4月26日火曜日

メール登録ホーム作成


メール登録ホーム自体は、簡単なんです。以下のソースで作成できます。
結局phpで作ります。
実際には、ホームページとしての記載が必要ですが、以下の処理がメール登録ホームの本体となります。
このホームから送信したデータベース登録処理が実際の登録処理となります。



メールスタンドについて



メールスタンド!
これは、個人のサイトから、読者にメールを発信する為のスタンドです。
何も知識の無い人が、やろうと思うと、結構大変です。
無料のメルマガスタンドを使う方法もありますが、100人まで、でも、無料サイトでやれば、容量は、もっと使えます。
読者発信や、お店の宣伝なんかに使えます。
ステップメールや、時間指定メールは、できませんが、情報発信は、簡単にできます。
今作成を始めました。
私が勉強した知識で簡単に作れます。
基本は、読者登録用のホームと解除用のホームとメール作成用のホームです。
前回のping発信に使った所を借りて作ろうと思っています。
いま、構成を考えています。
余計な広告を出したく無いのです。
ホームは、htmlで作成!
保存送信は、phpで、データ管理は、データベース!
これで作ろうと思っています。
ホームページへの戻り方や、登録エラー対応を今回どうするかを考えています。
メール配信機能をあなたは、欲しいと思いますか?
読者管理があれば、集客アップすると思いますか?
ショップやお店のホームページをお持ちで機能の無い方なら、欲しいと思います。
作り方は、これから私のホームページで公開していきます。
自分で作れない方で、欲しい方は、相談にのります。
お金をかけるなら、メルマガスタンドを登録すれば、簡単なんですけどね!

[OM-S] オレンジメール 一番使いやすいメール配信&ステップメール

2016年4月25日月曜日

MySQL基本的な書き方めも

create table
テーブルを作る
create table テーブル名(列名 形,列名 形)


SELECT
指定したテーブルのデータを検索、取得します。
*(アスタリスク)で指定した場合、全てのフィールドのデータを取得します。
・全てのフィールドの値を取得する場合
SELECT * FROM テーブル WHERE 条件式 AND 条件式;
・取得するフィールドを指定する場合
SELECT フィールド1, フィールド2, フィールド3 FROM テーブル WHERE 条件式 AND 条件式;

INSERT
指定したテーブルにデータを追加します。
INSERT INTO テーブル (フィールド1, フィールド2, フィールド3) VALUES (フィールド1の値, フィールド2の値, フィールド3の値);

UPDATE
条件式で一致したデータを更新します。
UPDATE テーブル SET フィールド = 値, フィールド = 値 WHERE 条件式 AND 条件式;

DELETE
条件式で一致したデータを削除します。
DELETE FROM テーブル WHERE 条件式 AND 条件式;

データ型

データ型とは、フィールドにどのようなデータを格納するのかを示すものです。カラム型、フィールド型とも呼ばれます。
フィールドにデータ型を指定することで、データの格納や管理が効率的に行えるようになります。

数値型

整数や少数、浮動小数点数を格納するときに指定する型です。
数値型は、商品の価格や数量、整理番号などを管理するフィールドに用います。
型名値の範囲UNSIGNEDを付与した場合の範囲
TINYINT-128~+1270~+255
SMALLINT-32768~+327670~+65535
MEDIUMINT-8388608~+83886070~+16777215
INT-2147483648~+21474836470~+4294967295
BIGINT-9223372036854775808~+92233720368547758070~+18446744073709551615
FLOAT(M.D)-3.402823466E+38 ~ -1.175494351E-38,
0,
1.175494351E-38 ~ 3.402823466E+38
負数は使用不可
DOUBLE(M.D)-1.7976931348623157E+308 ~ -2.2250738585072014E-308,
0,
2.2250738585072014E-308 ~ 1.7976931348623157E+308
負数は使用不可
DECIMAL(M.D)MとDで変化するなし(利用不可)
※「UNSIGNED」はデータ型に対して付与するもので、負の値の挿入を許可しない場合に用います。
※Mは表示幅、DはDecimalという意味で小数点以下の桁数を表します。マイナス記号も一文字としてカウントされます。

DECIMALの例

値の範囲
DECIMAL(4,1)-999.9 ~ +9999.9
DECIMAL(5,1)-9999.9 ~ +99999.9
DECIMAL(6,1)-99999.9 ~ +999999.9
DECIMAL(6,2)-9999.99 ~ +99999.99
DECIMAL(6,3)-999.999 ~ +9999.999

使い分け

整数のみしか格納しない場合は、TINYINT()、INT()、BIGINT()を使用します。
どれを使用するかは、格納するデータの大きさで決めます。

TINYINTについて

TINYINT()は、UNSINGEDを指定することで0~255というRGBカラーコードやIPアドレスに使用される範囲になりますので、これらのデータを格納するときはTINYINT()を指定するのがよいです。

注意

金額を格納するフィールドに整数のみしか格納できないINT()などの型を指定するときは注意が必要です。
日本円は一般的に小数点以下を使用しないので、INT()やBIGINT()を指定しがちですが、為替相場などでは「銭」の単位が使用されるからです。このような場合は浮動小数が格納できるFLOAT()、DOUBLE()、DECIMAL()などの型を指定します。

文字型

固定長の文字列の他、可変長の文字列、選択式の文字列、バイナリデータなどを格納できます。
一番多く使用されるのは、CHARとVARCHARです。
型名値の範囲(バイト)挿入に必要なサイズ
CHAR(M)255Mバイト
VARCHAR(M)255X+1バイト
TINYBLOB255X+1バイト
BLOB65535X+2バイト
MEDIUMBLOB16777215X+3バイト
LONGBLOB4294967295X+4バイト
TINYTEXT255X+1バイト
TEXT65535X+2バイト
MEDIUMTEXT16777215X+3バイト
LONGTEXT4294967295X+4バイト
ENUM("選択肢1","選択肢2",・・・)65535 選択肢1~2バイト
SET("選択肢1","選択肢2",・・・)64選択肢1/2/4/8バイト

使い分け

基本的には、VARCHAR型もしくはTEXT型を文字列の長さによって使い分ければよいと思います。

CHAR型とVARCHAR型の違い

CHAR型の場合、CHAR(10)とすると、それに「ABC」という文字列を挿入しても消費容量は10バイトとなります。
一方、VARCHAR型の場合、VARCHAR(10)とすると、それに「ABC」という文字列を挿入すると消費容量は3バイト(正確には4バイト)となります。
なお、MySQLでは、ひとつのテーブルにCHAR型とVARCHAR型を混同して使うことはできません。

日付・時刻型

日付、時刻を格納するときに利用するデータ型です。
格納するデータに適したものを以下の5つの型から選択します。
型名フォーマット値の範囲
DATEYYYY-MM-DD1000-01-01 ~ 9999-12-31
TIMEHH:MM:SS-838:59:59 ~ 838:59:59
DATETIMEYYYY-MM-DD HH:MM:SS1000-01-01 00:00:00 ~ 9999-12-31 23:59:59
TIMESTAMPYYYY-MM-DD HH:MM:SS1970-01-01 00:00:01 ~ 2037-12-31 23:59:59
YEARYYYY1901 ~ 2155、そして 0000 (4桁の場合)
70  ~ 69 (2桁の場合、70は1970を表し69は2069を表す)
※デフォルトは4桁
テーブル作成
メンバーテーブル作成
名前
ログインID
メールアドレス
パスワード
最終アクセス日時
create table member(nane text,loginid char(16),mail char(64),pass char(32),lastdate datetime);

サイト情報テーブル作成
ログインID
サイト名
サイトID
RSSファイル名及びファイルパス
ping先
最終送信日時
create table usersite(loginid char(16),saitname text,saitid char(16),saitpath text,ping text);