先日こちらの質問で下記のようなものはできました。
まだ途中ですがこのようなソースになっています。
<?php page = filter_input(INPUT_GET, 'page'); $start = (int) $page * 5; $sql = sprintf("SELECT user_data.id,birth_year,birth_month,birth_day,pref,city,major_category,major_skill,cont_date,introduction FROM user_data,user_pr WHERE user_data.id=user_pr.user_id ORDER BY id DESC LIMIT %d, 5", $start); $stmt = $pdo->prepare($sql); $stmt->execute(); $sql = $pdo->query("SELECT count(user_data.id) as maxcount FROM user_data,user_pr WHERE user_data.id=user_pr.user_id;"); $rec = $sql->fetch(PDO::FETCH_ASSOC); $maxcount=$rec["maxcount"]; $maxcount=ceil($maxcount/5); foreach ($stmt as $row) { echo '<a href="human_detail.php?EN=" target="_blank">'; echo 'EngineerNo.'.$row['id'].'<br />'; echo '<img src="" alt="">'; $birth = $row['birth_year'].sprintf('%02d', $row['birth_month']).sprintf('%02d', $row['birth_day']); echo '年齢:'.floor((date("Ymd")-$birth)/10000).'歳'; echo ' | '; echo '所在:'.$row['pref'].' '.$row['city']; echo ' | '; echo '専攻カテゴリー:'.$row['major_category']; echo ' | '; echo '専攻スキル:'.$row['major_skill']; echo ' | '; echo '契約可能時期:'.$row['cont_date'].'<br /><br />'; echo 'PR'.$row['introduction'].'<br /><br />'; echo '</a>'; echo '<hr>'; }
urlいぢれば動作確認できるのでページャは省略します。
人材をクリックすると人材詳細のページ(下記)を作りかけているのですが仕組みがいまいち分かりません。
一覧がhuman_list.php
詳細がhuman_detail.php
として、まずhuman_list.phpのa href="human_detail.php?EN="の分部をどう組み込んでいけばよいかが分かりません。
仮にa href="human_detail.php?EN=1"だったとして
human_detail.php?EN=1に飛びます。
user_dataテーブル
user_prテーブル
user_skillテーブル
human_detail.phpではこの3つのテーブルの情報が必要なので下記のSQLは必要だと思います。
sql
1SELECT UD.id, UP.user_id, US.user_id 2FROM user_data UD 3LEFT JOIN user_pr UP ON UD.id = UP.user_id 4LEFT JOIN user_skill US ON UD.id = US.user_id;
human_detail.phpは、誰の情報を表示するか?のページなわけですが
それはa href="human_detail.php?EN=1"の分部でURLはゲットできます。
それをSQLで取得する際の方法が分かりません。
単に1テーブルだけを取得するなら分かります。
$EN = filter_input(INPUT_GET, 'EN'); $sql = sprintf("SELECT * FROM user_data WHERE id = %d"$EN)
これを
sql
1SELECT UD.id, UP.user_id, US.user_id 2FROM user_data UD 3LEFT JOIN user_pr UP ON UD.id = UP.user_id 4LEFT JOIN user_skill US ON UD.id = US.user_id;
と組み合わせるのが分かりません。
色々話が脱線してる部分もあるかもしれませんが、
アドバイスいただきたいです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/06/26 07:44
退会済みユーザー
2016/06/26 07:46
2016/06/26 07:47
退会済みユーザー
2016/06/26 07:50
2016/06/26 07:55
退会済みユーザー
2016/06/26 07:59
2016/06/26 08:10 編集
退会済みユーザー
2016/06/26 09:22
2016/06/26 09:35