PHPやります!PHPでスクリプト/CGI作ります! -2ページ目

【ぶっこぬく為替レート】その1

とあるサイトから為替レートをぶっこぬくツールを作ります。

っていうか、作ってます。

http://garbagetool.org/gaikarate/

まだ作成中ですが、まもなく出来そうです。

完成カラの!?

せっかく出来たんだから、ブラッシュして別なものを作り上げよう。
もっと実用的なヤツ。もっと楽しそうなヤツ。

【完成】http://garbagetool.org/

ドメイン取得しました。

http://garbagetool.org/

たぶん、明日には見れると思います。ドメインのとおり、ゴミツールとなっております。
とりあえず、動きますけどテスト進んでないです。
ちょっと、別にやることが出来たので。画面も使いやすさとかデザインまったく考えてません。

アクセスが増えそうなら、メンテナンスしていきます。


わざわざ誰も興味無いようなことばっかり時間かけて書くのもアレなので、次に別なもの作る時はもう少し考えたいと思います。

じゃ。

【コーディング】ブログを簡単に見るヤツ12

なんだか、ひさしぶりです。

ちょっと知り合いのつながりで、ホームページ作ってました。
ということで、再開です。

アカウント登録処理です。

必要な必要なパラメータ
・NAME
・MAIL
・PASSWORD

処理の流れ
1.パラメータチェック → エラーがあったら、エラー画面を表示。
・NAME 半角英数であること。
・MAIL メールアドレス形式であること。
・PASSWROD 半角英数であること。

2.登録するメールアドレスが既に登録されていないか確認。 → 既に登録されている場合は、X-StatにERR_MAIL_ALREADY(304)を設定してレスポンス。

3.登録する名前が既に登録されていないか確認。 → 既に登録されている場合は、X-StatにERR_NAME_ALREADY(303)を設定してレスポンス。

4.トークン作成
メールアドレスとタイムスタンプをくっつけた物をmd5+base64したヤツ。

5.仮登録テーブルに「名前・メールアドレス・パスワード・トークン」を追加。
insert into tbl_registtemp (NAME, MAIL, PASSWORD, TOKEN) values (?, ?, ?, ?)");
$stmt->bind_param("ssss", $name, $mail, $password, $token);

6.本登録メールを送信。本登録URLを記載。


------本登録URLからの処理------
必要な必要なパラメータ
・TOKEN

1.パラメータチェック → エラーがあったら、エラー画面を表示。
・TOKEN 設定されていること。

2.仮登録テーブルにトークンが登録されていること。 → 登録されていない場合は、エラー画面。

3.仮登録テーブルからデータを取得。(名前・メールアドレス・パスワード・登録日付)

4.取得したメールアドレスが既に登録されていないか確認。 → 既に登録されている場合は、仮登録テーブルからデータを削除してエラー画面を表示。

5.取得した名前が既に登録されていないか確認。 → 既に登録されている場合は、仮登録テーブルからデータを削除してエラー画面を表示。

6.ユーザーテーブルに取得したデータを追加。

7.仮登録テーブルからデータを削除。

8.セッションにログイン状態を設定。 ※ログイン状態を設定することで、TOPにアクセスするとアカウントトップ画面が表示される。


---------出来た---------
・ログイン
・ログインチェック
・RSS登録
・RSS解除
・ログアウト
・メール送信フラグ設定
・メールアドレス変更
・メール送信時間設定
・オレ専用RSS作成
・メール送信(※sendmailの設定が必要)
・アカウント削除
・アカウント登録

---------まだ---------


よし。とりあえず、全部出来ました。

まだ、テスト全然してないのでテストして動かなかったところは直していきます。

これから、ドメイン取りたいと思います。

【設計】ブログを簡単に見るヤツ10

アカウントを登録する処理でも、トークン保存用のテーブルを使います。

<メールアドレス変更テーブル>
ID    ただの主キー
NAME   名前
MAIL   メールアドレス
PASSWORD  パスワード
TOKEN   トークン 
DATE    更新日付

mysql> create table tbl_registtemp (
ID int not null primary key auto_increment,
NAME varchar(64) not null,
MAIL text not null,
PASSWROD text not null,
TOKEN text not null,
DATE timestamp not null);

こんなカンジです。

やはり、適当な設定をしているので変更になる可能性もあります。