私のuserLogin.phpスクリプトに2x JSON_encode行が含まれているという問題があります。2つのjson_encode行が必要です(Swiftへの出力)
echo json_encode($userDetails);
echo json_encode($communities);
これがいっぱいですuserLogin.phpスクリプトを下回る:
<?php
require ("Conn.php");
require ("MySQLDao.php");
$email = htmlentities($_POST["email"]);
$password = htmlentities($_POST["password"]);
$returnValue = array();
if(empty($email) || empty($password))
{
$returnValue["status"] = "error";
$returnValue["message"] = "Missing required field";
echo json_encode($returnValue);
return;
}
$secure_password = md5($password);
$dao = new MySQLDao();
$dao->openConnection();
$userDetails = $dao->getUserDetailsWithPassword($email,$secure_password);
if(!empty($userDetails))
{
$returnValue["status"] = "Success";
$returnValue["message"] = "User is registered";
echo json_encode($userDetails);
}else{
$returnValue["status"] = "error";
$returnValue["message"] = "User is not found";
echo json_encode($returnValue);
}
//once logged in run function to get list of communities
$communities = array();
$communities = $dao->getCommunities($email);
echo json_encode($communities);
$dao -> closeConnection();
?>
$userDetails
店、まさにこのようなID、名前、電子メールアドレスとして、ログインした人の詳細が表示されます。
$communities
は、人がメンバーである別のコミュニティの名前を格納する配列です。各メンバーは、異なる数のコミュニティの一部である場合があります。
ユーザーがログインすると、すぐに両方のアレイが必要になります。そのため、両方のアレイがuserLogin.phpスクリプトに含まれています。これらはSwiftに返され、$communities
の場合は、その内容をUITableViewに表示します。
しかし、これは構文エラーであるため、複数のJSONブロックを出力できないことを学んだことがあります。 (私のXcodeでエラーが報告されています)
どのようにこの問題を解決できますか?
あなたに少しの天才! – RDowns