『入る学科間違えた高専生』の日記

プログラミングのコードを書いたりする予定です。あとは日記等。あといつまで高専生やねん

【Heroku】PostgreSQLにPHPでアクセスしてクズペディアなるものを運用してみた

はじめに

今回Heroku上のPostgreSQLにアクセスしてPHPでWebプログラミングできまいか!?と思って始めました.
クラスの人がたまたま発言した「クズペディア」なるものの作成に励むようになったわけです

クズペディアとはWikipediaのパロディでたまたまクラスの人が出した名前のものをそのまま使おう!
って思った主が勝手に制作したクソみたいなサイトです. なお,先ほどちょっとしたバグを発見したので暇な時に修正しておきます

手順

  • アドオン追加
  • アドオン追加されたかの確認
  • PostgreSQLにアクセス
  • スキーマ(?)等の確認
  • PHPでのデータベース接続設定

Herokuのアカウントを持っていること前提で話を進めていきます!

heroku.com

また,アプリケーションも作成しておいてください

アドオン追加

  1. コマンドでの追加
    Herokuリモートを設定しているリポジトリでは以下をするとできます.
    そうでなければ最後に「--app appname」ていう感じでやったら出来たと思います
$ heroku addons:create heroku-postgresql
  1. ブラウザ上での追加 こっちのほうが確実だと思います

addons.heroku.com

クレジットカードを持っていない私は,上記リンクでアドオン追加をしました.

アドオン追加されたかの確認

$ heroku config

PostgreSQLにアクセス

Herokuでは他の人とデータベースを区別するために変数を使ってアクセスするようです
もしかしたら変数の名前が違うかもしれません.
ブラウザ上で追加された方は,その下に大文字で書いてある文字があるのでそれを使います

$ heroku pg:psql HEROKU_POSTGRESQL_IVORY_URL

終了

テーブルやデータの追加等の作業が終わったら「\q」でPostgreSQLから抜け出せます.
昨年の授業でPostgreSQL習っていた私にとっては調べることはなかったです

appname::IVORY=> \q

スキーマ(?)等の確認

以下コマンドを実行するとPHP上でデータベースに接続するために使用するdbnameなどの情報を得ることができます!
コピペミスして「なんで繋がらないんだよ(#^ω^)」っていう感じにならないようにw
←私はhostのはじめのeを取りこぼして20分ぐらい耐久してました

$ heroku pg:credentials HEROKU_POSTGRESQL_IVORY_URL

ちょっと待ったら以下のようにでます

Connection info string:
   "dbname=xxxxxxxxxxxxxxx host=ec2-xxx-xxx-xxx-xxx.compute-1.amazonaws.com port=5432 user=xxxxxxxxxxxx password=xxxxxxxxxXXxxxxxXxx-xxxxxxxxXXxx sslmode=require"
Connection URL:
    postgres://xxxxxxxxxxxx:xxxxxxxxxXXxxxxxXxx-xxxxxxxxXXxx@ec2-xxx-xxx-xxx-xxx.compute-1.amazonaws.com:5432/xxxxxxxxxxxxxxx

Connection URLは上からusernamepasswordhostportdbnameです

  • usernameは/から:まで
  • passwordは:から@まで
  • hostは@から:まで
  • portは:から/まで
  • dbnameは:から最後まで

説明わかりづらいわ!!

最後に

最初にも書いたんですが,「クズペディア」...
なんでしょうねwwクズ専用用語百科事典というものです.

https://github.com/nnsnodnb/kuzupediagithub.com

現在README.mdを編集中です!

「お前これで今回Herokuに繋げたのにURL教えないの?」って思った方!(いないよ)
お待ちかねのURLです.良かったらクズ用語登録してみてください!!

クズペディア

関連図書

関連記事

nnsnodnb.hatenablog.jp