// 文字化け防止
$db->set_charset("utf8");
-if(isset($_GET['action']) && isset($_GET['name'])){
+if(isset($_GET['action'])){
$action = $_GET['action'];
- $name = urldecode($_GET['name']);
- escapeMySQLArgumentString($name);
-
- if(strcmp($action, 'join') == 0){
- //通常モード
- $stmt = $db->prepare(QUERY_SELECT_USER_ID);
- $stmt->bind_param(QUERY_SELECT_USER_ID_TYPES, $name);
- $stmt->execute();
- if($stmt->errno == 0){
- //クエリ成功
- $stmt->store_result();
- // 結果の個数を確認
- if($stmt->num_rows == 0){
- //ユーザー名はリストになかった=はじめてのひと
- $stmt = $db->prepare(QUERY_ADD_USER);
- $stgName = DEFAULT_START_STAGE;
- $stmt->bind_param(QUERY_ADD_USER_TYPES, $name, $stgName);
- $stmt->execute();
- if($stmt->errno == 0){
- //クエリ成功
- $stmt = $db->prepare(QUERY_SELECT_USER_ID);
- $stmt->bind_param(QUERY_SELECT_USER_ID_TYPES, $name);
+ if(isset($_GET['name'])){
+ $name = urldecode($_GET['name']);
+ escapeMySQLArgumentString($name);
+
+ if(strcmp($action, 'join') == 0){
+ //通常モード
+ $stmt = $db->prepare(QUERY_SELECT_USER_ID);
+ $stmt->bind_param(QUERY_SELECT_USER_ID_TYPES, $name);
+ $stmt->execute();
+ if($stmt->errno == 0){
+ //クエリ成功
+ $stmt->store_result();
+ // 結果の個数を確認
+ if($stmt->num_rows == 0){
+ //ユーザー名はリストになかった=はじめてのひと
+ $stmt = $db->prepare(QUERY_ADD_USER);
+ $stgName = DEFAULT_START_STAGE;
+ $stmt->bind_param(QUERY_ADD_USER_TYPES, $name, $stgName);
$stmt->execute();
if($stmt->errno == 0){
//クエリ成功
- $stmt->store_result();
- if($stmt->num_rows == 0){
- //ユーザー名はリストになかった=そんな…登録したのに。あきらめてエラーを返す
- responseError();
+ $stmt = $db->prepare(QUERY_SELECT_USER_ID);
+ $stmt->bind_param(QUERY_SELECT_USER_ID_TYPES, $name);
+ $stmt->execute();
+ if($stmt->errno == 0){
+ //クエリ成功
+ $stmt->store_result();
+ if($stmt->num_rows == 0){
+ //ユーザー名はリストになかった=そんな…登録したのに。あきらめてエラーを返す
+ responseError();
+ } else{
+ //ユーザー名がリストにある=予想通り
+ $stmt->bind_result($id);
+ $stmt->fetch();
+ responseNewUser($db, $id);
+ }
} else{
- //ユーザー名がリストにある=予想通り
- $stmt->bind_result($id);
- $stmt->fetch();
- responseNewUser($db, $id);
+ //クエリ失敗
+ responseError();
}
} else{
//クエリ失敗
responseError();
}
} else{
- //クエリ失敗
- responseError();
+ //すでにユーザー名がリストにある=続きからプレイ
+ $stmt->bind_result($id);
+ $stmt->fetch();
+ $stgName = getUserStage($db, $id);
+ responseExistUser($db, $id, $stgName);
}
} else{
- //すでにユーザー名がリストにある=続きからプレイ
- $stmt->bind_result($id);
- $stmt->fetch();
- $stgName = getUserStage($db, $id);
- responseExistUser($db, $id, $stgName);
+ //クエリ失敗
+ responseError();
}
- } else{
- //クエリ失敗
- responseError();
- }
- } else if(strcmp($action, 'devjoin') == 0){
- //開発者モード
- if(!isset($_GET['stage'])){
- responseError();
- }
- $stgName = urldecode($_GET['stage']);
- $stmt = $db->prepare(QUERY_SELECT_USER_ID);
- $stmt->bind_param(QUERY_SELECT_USER_ID_TYPES, $name);
- $stmt->execute();
- if($stmt->errno == 0){
- //クエリ成功
- $stmt->store_result();
- // 結果の個数を確認
- if($stmt->num_rows == 0){
- //ユーザー名はリストになかった=はじめてのひと
- $stmt = $db->prepare(QUERY_ADD_USER);
- //$stgName = DEFAULT_START_STAGE;
- $stmt->bind_param(QUERY_ADD_USER_TYPES, $name, $stgName);
- $stmt->execute();
- if($stmt->errno == 0){
- //クエリ成功
- $stmt = $db->prepare(QUERY_SELECT_USER_ID);
- $stmt->bind_param(QUERY_SELECT_USER_ID_TYPES, $name);
+ } else if(strcmp($action, 'devjoin') == 0){
+ //開発者モード
+ if(!isset($_GET['stage'])){
+ responseError();
+ }
+ $stgName = urldecode($_GET['stage']);
+ $stmt = $db->prepare(QUERY_SELECT_USER_ID);
+ $stmt->bind_param(QUERY_SELECT_USER_ID_TYPES, $name);
+ $stmt->execute();
+ if($stmt->errno == 0){
+ //クエリ成功
+ $stmt->store_result();
+ // 結果の個数を確認
+ if($stmt->num_rows == 0){
+ //ユーザー名はリストになかった=はじめてのひと
+ $stmt = $db->prepare(QUERY_ADD_USER);
+ //$stgName = DEFAULT_START_STAGE;
+ $stmt->bind_param(QUERY_ADD_USER_TYPES, $name, $stgName);
$stmt->execute();
if($stmt->errno == 0){
//クエリ成功
- $stmt->store_result();
- if($stmt->num_rows == 0){
- //ユーザー名はリストになかった=そんな…登録したのに。あきらめてエラーを返す
- responseError();
+ $stmt = $db->prepare(QUERY_SELECT_USER_ID);
+ $stmt->bind_param(QUERY_SELECT_USER_ID_TYPES, $name);
+ $stmt->execute();
+ if($stmt->errno == 0){
+ //クエリ成功
+ $stmt->store_result();
+ if($stmt->num_rows == 0){
+ //ユーザー名はリストになかった=そんな…登録したのに。あきらめてエラーを返す
+ responseError();
+ } else{
+ //ユーザー名がリストにある=予想通り
+ $stmt->bind_result($id);
+ $stmt->fetch();
+ //responseNewUser($db, $id);
+ responseExistUser($db, $id, getUserStage($db, $id));
+ }
} else{
- //ユーザー名がリストにある=予想通り
- $stmt->bind_result($id);
- $stmt->fetch();
- //responseNewUser($db, $id);
- responseExistUser($db, $id, getUserStage($db, $id));
+ //クエリ失敗
+ responseError();
}
} else{
//クエリ失敗
responseError();
}
} else{
- //クエリ失敗
- responseError();
+ //すでにユーザー名がリストにある=続きからプレイ
+ $stmt->bind_result($id);
+ $stmt->fetch();
+ //未実装(本当はデータベースから続きのステージ名を取得するべき)
+ updateUserStage($db, $id, $stgName);
+ responseExistUser($db, $id, $stgName);
}
- } else{
- //すでにユーザー名がリストにある=続きからプレイ
- $stmt->bind_result($id);
- $stmt->fetch();
- //未実装(本当はデータベースから続きのステージ名を取得するべき)
- updateUserStage($db, $id, $stgName);
- responseExistUser($db, $id, $stgName);
}
- } else{
- //クエリ失敗
- responseError();
+ } else if(strcmp($action, 'chstg') == 0){
+ //ステージ移動
+ if(!isset($_GET['id'])){
+ exit("eee");
+ }
+ $id = $_GET['id'];
+ updateUserStage($db, $id, $name);
+ exit("success");
}
}
}
$stmt->bind_param(QUERY_UPDATE_USER_STAGE_TYPES, $stageName, $userID);
$stmt->execute();
//エラーチェック省略
+ if($stmt->errno != 0){
+ exit("error573");
+ }
+ $stmt->close();
}
function getUserStage($db, $userID)