Code Monkey home page Code Monkey logo

hoot's Introduction

#README

##このコードの趣旨 このコードは、皆さんがゼミサーバーのパスワードやユーザーの個人情報を流出させることを防ぎます。

##説明 実は、Git の管理化に大切な個人情報(ユーザーの写真等)や、ゼミサーバーのパスワードを入れるのは非常に危険です。 なぜなら、Github にプッシュした時に、大切な個人情報やゼミのパスワードも一緒にプッシュされてしまうからです。 夏合宿ではそのようなトラブルを防ぐために先生が作成したコードを使用しました。 しかし、今後、みなさんがコードを書く上で、既に機能が搭載されているコードではなく、1 から自分で作りたいことがあると思います。 そのために、こちらのコードを用意しました。

#開発前の初期設定 いくつかのファイルがはじめから用意されています。 例えば、pdo_connect.php を使用すれば、データベースにアクセスし、テーブルにデータを追加したり、削除することが簡単にできます。 .htaccess ではローカル開発環境を自分で構築した人のための記述があり、たった一行をコメントアウトするだけでゼミサーバーの環境とローカル開発環境を使い分ける事ができます。

これらの機能を有効にするために、settings_develop.php と settings_production.php を開き、主に以下の部分を自分のものに変更してください。

'dbname' => 'dbname', 'user' => 'dbname', 'password' => 'db_password'

例えば、hoge さんであれば、以下のように編集すれば OK です。

'dbname' => 'hoge', 'user' => 'hoge', 'password' => '自分のパスワード'

これで初期設定は終了です。

##データベースの使用方法

<?php
require 'pdo_connect.php'

/* 値の配列を渡してプリペアドステートメントを実行する */
$sql = 'SELECT name, colour, calories
    FROM fruits
    WHERE calories < :calories AND colour = :colour';
$sth = $dbh->prepare($sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY));
$sth->execute(array(':calories' => 150, ':colour' => 'red'));
$red = $sth->fetchAll();

大体、すべてのテーブルへの書き出しと取り出しはこの数行を少し変えれば再現できるはずです。 では、実際に試してみましょう。

$sql変数にsql文を入れます。 今回は新しいテーブルを作成してから、コードを編集して呼び出してみましょう。

シェル(ターミナル)を開いて、 ゼミサーバーにssh接続し、接続できたら、データベースに接続します。 その中で以下のSQL文を実行してください。

create table mybook (id serial primary key, name text, link text);

実行できたら、早速、これにデータを入れて呼び出しましょう。

index.phpの一行目から追記します。

require 'pdo_connect.php'
$sth = $dbh->prepare('INSERT INTO mybook(name, link) VALUES(?, ?)');
$sht->execute(array('リーダブルコード', 'https://www.oreilly.co.jp/books/9784873115658/'));

これだけでphpからsql文を実行できます。 select文で取り出してみましょう

$sth = $dbh->prepare('select name, link from mybook where name = ? AND link = ?');
$sth->execute(array('リーダブルコード', 'https://www.oreilly.co.jp/books/9784873115658/'))
$book1 = $sth->fetchAll();
var_dump($book1)

更に詳しいことが知りたい方はこちらを御覧ください。 https://www.php.net/manual/ja/pdo.prepare.php

説明は以上です。

hoot's People

Contributors

rikuta930 avatar hannah-86 avatar

Stargazers

 avatar

Watchers

James Cloos avatar  avatar

hoot's Issues

9月29日までのTODO

TODO

==================================
9/29日までに絶対に追加する機能

フロントエンド

    • 迷惑行為の通報時に遷移するページとフォーム

バックエンド

    • 迷惑行為の通報機能
    • 返信機能
    • mypageの履歴を24時間以内にする
    • 既読の耳マーク
    • mypageの各レコードに24時間中、何時間経過したかを表示する。
    • 返信は一回のみ
    • 返信はmypageに表示するが、コメントの画像は表示しない。
    • プロフィール編集ページを確認
    • httpsでしか通信できないようにhtaccessを書き換える。

プロジェクトマネジメント

    • 9/27日20時からミーティングを開く
    • 提出用資料の作成
    • 石橋先生との最終確認

=============================
2次審査及び、サービスをリリースする際に追加したい機能

フロントエンド

    • ふくろうが飛ぶアニメーション
    • サンプルフクロウの設置
    • パスワード再設定画面
    • メールアドレス承認画面
    • 録音(record.php)のボタンを更にわかりやすくする
    • mypageの既読用の耳のアイコンをクリックしたら既読を示すポップアップが出現するようにする。

バックエンド

    • ユーザー認証の際にトークンを発行してメールアドレスが本人のものかどうかチェックする。
    • centOSの機能を利用して、hoot_hashtag テーブルのidをつける。

9/22

フロント+バックエンド

  1. detail.php
  • 概ねXD通り
  1. index.php
    -吹き出しをつける。

  2. record.php
    -年代、性別、フリーワードを消し、ジャンルのプルダウンを追加する。
    -ボタンを使いやすいように変更する。

4 edit_profile の変更できるフィールドをメールアドレス、パスワード、アイコンにする。

------------------------------------フロント、サーバーサイド共にここまでOK

  1. 削除ボタン
    ーーーーーーーーーーーーー
    フロントだけ
    sign, login画面のUIを変更する。

mypageの上部のUIをlogin画面と揃える。
フクロウの画像 プロフィール編集のボタン

index.php のフクロウが飛ぶようにする。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.