[音楽再生] ROBボーデン:こんにちは。 私はロブだし、私はあなたが準備ができている願っています このソリューションでの在庫を置く。 まずは、レジスタを見てみましょう。 そこでここでは、チェックしていることを覚えておいてください フォームがされたかどうかを このページに投稿さ。 我々は行っているので、最初にすること 行うには、他に行くです。 そして、我々はレンダリングするつもりだ 登録フォーム。 だから、登録フォームが起こっている register.PHPに投稿する。 そして、何それが送信しようとしている? これは、ユーザ名を送信するために起こっている ユーザーは、パスワードを記入しようとしている、 ·確認 - パスワードを再度入力しました。 だから今、そのフォームはに投稿されたとき あればregister.PHP我々はこれを実行します。 場合は、このを見て、我​​々は最初だ 入力を検証する予定。 我々は確認していることを確認したいユーザ名 とパスワードが空ではありませんでしたし、その 実際に確認 パスワードと一致する。 私達は私達ができることを確認したら 実際にユーザを登録します。 どういう意味ですか? まあ、我々は、挿入したい 我々のデータベースへのユーザー。 そして、これは、我々はそれをやる方法です。 だから我々は、ユーザーに挿入しようとしている テーブルのフィールドのユーザー名、 ハッシュ、および現金。 キャッシュ·フローのデフォルト値 万になるだろう。 そして、我々は、ユーザー名として渡すつもりだ、 POSTの超を通してユーザ名、 フォームから送信されたのは、グローバル。 そして、我々は暗号化するつもりだ パスワード。 それが成功したのであれば、結果 非falseになります。 それが失敗したなら、私たち 謝罪したい。 何かが間違っていた。 そして、何が間違っている可能性が? さて、が存在する必要がある 一意のユーザ名。 だからクエリでは、故障している可能性があり もし、すでにユーザ名 表に存在していた。 だから、一意のユーザ名だったと仮定すると、 その後、我々はつかむためにクエリを実行しようとしている そのユーザーのID。 IDがあることを覚えている 自動インクリメント。 だから、それはいくつかの失敗が起こった場合 その理由は、その後、我々は謝罪したい 我々は、IDをつかむことができなかったこと。 しかし、その後、それが失敗しなかったと仮定して 私たちは、どのようなクエリからIDをつかむ 、という我々のセッションで店を返さ - 私たちはすることによって、このユーザーをログに記録する セッションIDを記憶する スーパーグローバル、そして最後に 当社のポートフォリオにリダイレクトします。 そして、それは、レジスタのためにそれだ。 今、私たちは、引用符に移動するつもりだ。 だから、引用は持っているつもりされている 本当に同じようなセットアップ。 我々は、これがコードであることをここで見ることが 我々は、フォームがあるときに実行するつもりだ このページに投稿さ。 しかし、最初に私たちは実際に持っている そのフォームをレンダリングする。 そう見積フォームを見てみ、 どのようなフィールドがある? 我々は、すべての引用符が単一であることがわかり 名前の記号を持つテキストボックス。 だから引用フォームがポストされたとき quote.PHPに我々は今、するつもりだ このコードを実行する。 そして、私たちの記事で唯一の変数は、スーパー グローバルシンボルになるだろう。 私たちは、ことを確認することを検証する 彼らは実際のシンボルとなりました。 彼らがなかった場合、我々はあなたが言う 記号を入力する必要があります。 彼らはシンボルで提供されるものと仮定すると、 私たちは、そのシンボルを検索します。 今でルックアップが持つかもしれない覚えている まあ、それはなかったので、失敗しました。 そもそも有効なシンボル。 だから、これはfalseを返しを見れば、 我々はそれを謝罪したい シンボルが見つかりませんでした。 我々は、我々は今、シンボルを見つけたら quote.PHPテンプレートをレンダリングすることができます。 それは何のように見えるのでしょうか? それはちょうど、そのシェアを印刷するために起こっている たどのような銘柄名の 株価が何であれ価値がある。 今、なぜ我々は、このデータを元に戻して使うのですか 機能? それはだから、株式名とシンボル 実際に特別な含まれている場合があります 文字はいけない HTMLとして解釈する。 大丈夫、だから、引用のためのこれだけです。 今、私たちは、index.phpを見てみたい とポートフォリオ。 しかし、最初に私たちは実際に構築する必要があり ポートフォリオテーブル。 ここでは、我々はそれをやろうとしている方法です。 それでは、構造を見てみましょう。 そして、我々は見ているポートフォリオ テーブルには、IDを持っているとしている。 だから、ユーザーのものになるだろう 株式の挿入のID。 我々はあることを行っている記号を、持っている 我々はしている会社の象徴 のために株式を挿入する。 した後、株式は数ある 挿入されている株式。 だから、PSET仕様あたりのを覚えている 私たちは、そのIDや記号を指定 - 我々は、IDをインデックスをチェックアウトし、 シンボルは主キーです。 そのように、ユーザIDとシンボル対 つだけ表示されます この表の時間。 それでは、コードを見てみましょう。 だから今index.phpがすべてをつかむために起こっている ポートフォリオ情報との それをユーザーに表示します。 したがって、最初、私たちは現金をつかむつもりだ ユーザーが現在持っていることから、 現金テーブル。 クエリは常に起こっていることを覚えておいて、 配列の配列を返します。 だから我々は現金のみを選択したにもかかわらず、 単一の行から、我々はまだする必要が にインデックスを付けることによって、その現金をつかむ ゼロ番目の行のインデックスとつかむ 現金インデックス。 だから今我々は、すべてを選択したい ポートフォリオ·テーブルからの情報 それは現在に関連します ログインしているユーザー。 もちろん、我々はそれを検証する必要が それは実際には、成功した我々 我々は照会するたびに、常に行う必要があります。 我々はその情報のすべてを取得したら、 PSET仕様は私たちに、その我々に通知 きれいに保存するためにこれを行う必要があります この内のすべての情報 位置配列。 だから我々は、すべてをループしている 見上げポートフォリオ情報、 の各行に関連する株式 その後、ポートフォリオ情報、および 位置配列に名前を格納し、 価格、株式および記号のすべて その株に関連付けられている。 そして最後に、我々はレンダリングするつもりだ portfolio.PHP、金額を渡す 現金の我々は現在持っている、 位置配列先ほど 構築されており、このタイトル ポートフォリオされるページ。 それではportfolio.PHPを見てみましょう。 そして、我々は主要な興味深いことがわかります の部分は、このループである。 だから我々は位置をループしている 配列の作成、 テーブル、どこにそのテーブル - 我々はして各行を移入している 我々は中に置か情報 位置配列。 繰り返しますが、我々はデータを元に戻して使用する必要があります 場合は、このシンボルまたは名前 HTML文字が含まれている。 そしてここでは、終値としている 我々が持っている株式の量 どれだけのことを得るために 現在ユーザに価値があります。 そして、それは、ポートフォリオのためにそれだ。 今は売りを見てみましょう。 だから売るに戻って行くことになるだろう 我々はregister.PHPで持っていたフォーマット。 私たちは、フォームが起こっていることがわかります このページにポストされる。 しかし、最初に、我々はページをロードすると、 我々はこれをやろうとしている。 だから、これは何をやっている? さて、私たちは販売ページを持つことができ 1つのテキストボックスのユーザーを持っている この記号を入力すること 私たちは販売したい。 しかし、我々はもう少し賢いことになるだろう そして我々は、ドロップを持っているつもりです それは、ユーザが選択することを可能にするダウン 彼らは既に持っている実際のシンボル。 だから我々は、ユーザーのポートフォリオを取得している。 我々のポートフォリオから選択するつもりだ そのユーザすべてのシンボル 現在、現在がある ログインしているユーザー。 それが成功したことを確認してください。 そして今、我々はをループするつもりだ ただグラブ、情報を返さ 各シンボル、及びそれを記憶する この記号配列内。 そして今、我々はするつもりだ 売るフォームをレンダリングします。 だから売るフォームがしようとしているだけ ドロップダウンメニューを選択してください。 ·販売フォーム内の​​各オプションがある 単にシンボルをプリントアウトしようとして 私たちは、から取得こと ポートフォリオテーブル。 だから売るフォームがしようとしている バックsell.PHPに提出。 sell.PHPを見ると、これはコードです 我々は提出したときには、実行するために起こっている このページへ。 私たちは、そのユーザーを検証する 実際に記号を入力した。 今、彼らがしたと仮定して - だから今、我々は何を決定したい ユーザーが実際に販売して共有 ユーザーは、どのくらいの現金を取得する必要があります 多くの株式を売却するため。 だから我々は、その株式の数をつかむ ユーザーは、この記号のために持っている。 私達はのためのポートフォリオで見上げている ユーザーおよび指定された記号を与えられ。 今すぐ確認し、実際にことを確認する 行が返されました。 それがなかった場合、ユーザはないので、 実際に販売するそのシンボルを持っている。 彼らはそのシンボルを持っていると仮定すると、 我々は数をつかむことを望む 彼らが持っている株式。 そして今、我々はどのように調べたい 多くの各株式は価値がある。 だから我々は、ルックアップ機能を使用していました。 私たちは、価値を探している シンボルの。 今、ルックアップが成功したと仮定すると、 私たちは実際にすべてを更新するつもりだ 情報。 だから我々は、ポートフォリオから削除する 我々は販売している株式。 我々は、ユーザーのを更新したい 現金の量。 そして、我々は株式でそれを更新している 倍の株価 - だから、どのくらいのお金です ユーザーはただ作った。 そして今、我々は我々の歴史を更新したい。 だから我々は見て撮影していない まだ履歴テーブルで。 だから我々は戻ってこれに来ます。 今、最後にリダイレクトするようになるだろう ポートフォリオにバックアップします。 それでは、購入を見てみましょう。 だから、購入はかなりあるべき 売却に似ています。 我々は、我々は再びつもりだことがわかります 我々はしているかどうかを確認する このページへの提出。 我々は、我々がしているしていないと仮定すると、 購入フォームをロードしようとして。 それでは、購入フォームは次のようにしますか? 我々はそれが普通のだここを参照してください ために起こっている形 バックbuy.PHPに提出。 そして、それはそのシンボルを持っているために起こっている ユーザは、数を入力されている 利用者が購入したい株 そのシンボルの、それはそれだ。 我々はbuy.​​PHPに戻って送信する際そこで、我々はしている 今、このコードを実行しようとして。 我々は再びそれを検証する ユーザーは有効なものを入力した。 そこでここでは確かに、彼ら作っている 実際に記号を入力した。 ここでは、ことを確認して作っている彼ら 実際に入力された株式。 そしてここで我々は確認していることを作っている彼ら 株式の整数を入力したので、 彼らは、ABCの株式を購入しようとしていない。 今、私たちはの価格を調べたい シンボルので、我々はどのくらいの現金私たちを知っている ユーザーから差し引く必要があります。 今、私たちはどれだけの現金利用者を選択します 実際に持ち、そのことを確認してください それが成功しました。 ここでは、現金をつかんだ。 そして今ここに、我々は確認しています ユーザーが十分な現金を持っていること。 もしそうであれば株式数のユーザー 倍の各の価格を購入したい これらの株式をより大きくなる 我々が持っている現金の額は、 ユーザーはそれを買う余裕はない。 ユーザーが十分な現金を持っていると仮定すると、 今、私たちは、挿入したい ユーザーのポートフォリオ。 まあ、我々はユーザーの挿入します ポートフォリオこれがあることを起こる場合は、 利用者が購入されて初めて その特定のシンボル。 しかし、彼らはすでに起きた場合 いくつかのアップルの株式を持っている? さて、今、私たちは上を利用しています キーUPDATEステートメントを複製します。 以前、我々はそれを指定された理由にするためです IDとシンボルが共同でなければなりません 主キー、私たちがしようとするように、 あるIDと記号を挿入する すでにそこに、我々だけで更新します その新株式が含まれるように株式 ユーザーが購入している。 今、私たちは量を更新する ユーザーが持っている現金、ので、それら ただ、それらの共有にいくつかのお金を費やした。 そして最後に、我々は更新します 履歴テーブルを再び。 その、再び、我々は見ていきます 二中で。 そして最後に、我々はリダイレクトします portfolio.PHPにバックアップします。 それでは見てみましょう 履歴テーブル。 今履歴テーブルであることを覚えている すべての買物を追跡することになってや だけではなく、すべてのユーザーが作成することを販売しています その株式の現在の数 ユーザーがある、持っているもの ポートフォリオ用です。 だから我々は、そのユーザーを追跡している 購入するかどうか、販売している この特定のトランザクションは、購入した または売る、というのシンボル 買っまたは売却、株式数 我々は、買うか、または販売していることを というのシングルシェアの価格 買っまたは売却し、最終的に、時間 その本買ったり、販売 発生している。 そして、それは歴史のすべてだ 私たちが必要とする情報 を追跡する。 当社が販売を見たときにそう、我々はそれを見た 我々は歴史の売りに挿入し、 我々が購入するか、販売しているかどうかなど、 現在のタイムスタンプ、および 現在のユーザー、というのシンボル 売却された株式数 販売され、価格はさ この時点での在庫。 同様に、購入するには、よ ほとんど同じに見える。 唯一の違いは、代わりにある 販売するのでは購入している。 だから売りおよび買い、我々に挿入している 履歴テーブルのすべて 起こっていることを購入し、販売しています。 そうhistory.PHPが行うために必要なすべてはグラブです 歴史からの情報 テーブルは、必ずそれが成功すること、 その情報をレンダリングします。 そうhistory.PHPテンプレートを見て、 興味ある情報 まさにここである。 我々は、すべてをループしている トランザクション、印刷本か 日付時刻の書式、売買だった 我々はこの取引をしたこと。 我々はデータを元に戻して使用する必要が覚えている 上の シンボル、念のため。 そして最後に、多くのフォーマットが 購入された株式と価格 その時点で、単一の共有の。 そして、それは歴史のすべてが表示されます 我々が必要な情報。 そして、それはこのPSETのためにそれだ。 私の名前はロブであり、この CS50ファイナンスだった。