public function register($username, $password, $gender, $age, $area, $job){ $ip = $_SERVER["REMOTE_ADDR"]; $password = password_hash($_POST["password"], PASSWORD_DEFAULT); $stmt = $this->mysqli->prepare("INSERT INTO users (username, password, gender, age, area, job, ip) VALUES(?, ?, ?, ?, ?, ?, ?)"); $stmt->bind_param('sssssss', $_POST["username"], $password, $_POST["gender"], $_POST["age"], $_POST["area"], $_POST["job"], $ip); return $stmt->execute(); }
mysql
int型だと、”.”がはじかれるので、varcharに変更します。
| student | $2y$10$kJtKFIht9YDow8rOwx…hoge | male | 20歳未満 | 東京都 | 学生 | 192168 |
alter table users change ip ip varchar(41);
OKですね。後で、ipをuniqueにすれば、同じipアドレスで重複して登録できなくなります。
| endo | $2y$10$66Cp8MFw9..hoge | male | 20-29歳 | 東京都 | 学生 | 192.168.33.1 |
さぁ~、いよいよ マッチングの設計をしていきましょう!!!
一応、facebookの「知り合いかも」のUIを見てみましょう。
「写真」「名前」「職業」「友達になる」「共通の知り合い」が表示されてますね。
プロフィール写真の表示は後からuploadする機能を追加するとして、表示項目としては、異性の「username」「age」「job」「メールを送る」ってところですかね。
あ、「一言メッセージ」も追加しときますかね。
初期の表示アルゴリズムは、「新しく登録された順」、「年齢が近い」、「登録エリアが近い」に毎回シャッフルした係数を掛けてsort って感じがいいかな。