こちらのサイトを参考にしながらカレンダーを作りまして、そこにデータベースの内容を反映させたいのですが、まだ勉強したてということもあり、わからず困っています。
参考サイトを元に作成したPHPファイルは字数制限で載せれなかったのでリンク先のGitHubに載せたのでそちらで見ていただけたらと思います。
恐らくですが、今現在できていることは、カレンダーを作り、祝日などもGOOGLEのAPI使って反映させて、MYSQLに接続して、テーブルにアクセスしているところまでです。
DBの内容は
yoteiテーブル(yotei_id,yotei_title,start_date,end_date,start_time,end_time)
yotei_groupテーブル(yotei_group_id,yotei_id,user_id)
userテーブル(user_id,name,password)
上記カラムはもう少しありますが、ひとまず主要な部分だけです。
xampp使ってphpmyadminからmysqlにデータ登録しています。
こちらでやりたいのが、yoteiテーブルのstart_dateとカレンダーの日付を照合して一致している日にyoteiテーブルのyotei_titleとstart_time,end_timeを表示を表示して、yotei_titleにリンクつけて、yoteiの詳細ページへいきたいという感じです。
現状select文で20181001で範囲指定はしているのですが、変動する場合を考えると不適切だとは感じています。
yotei_groupはyoteiとuserを繋げる中間テーブルです。
記事を調べて自力で実装までしたかったのですが、実際現在のコード自体理解が追いついていないというのも現状です。
もしよろしければ回答やアドバイス等いただけると大変助かりますのでよろしくお願いいたいたしますm(_ _)m
追記、上のGitHub196行目のselect文の箇所です。
php
1 2try{ 3 //検索処理 4 $stmt = $pdo->prepare('SELECT * FROM yotei 5 JOIN yotei_group 6 ON yotei_group.yotei_id = yotei.yotei_id 7 WHERE DATE_FORMAT(yotei.start_date, "%y%m") = DATE_FORMAT("2018-10-01", "%y%m") 8 ORDER BY yotei.start_date ASC;'); 9 $display_date_next = date("Y-m-d",strtotime(' +1 month',strtotime($display_date))); 10 $stmt -> bindParam(':month_fast_day', $display_date, PDO::PARAM_STR); 11 $stmt -> bindParam(':next_month_fast_day', $display_date_next, PDO::PARAM_STR); 12 $stmt -> execute();//実行 13 if ( $stmt == false ){ 14 //print 'SELECTしましたがユーザーデータが一件もありません'; 15 } 16} catch (Exception $e) { 17 exit('データベース検索に失敗しました。'.$e->getMessage()); 18}
あなたの回答
tips
プレビュー