私はサーバー上にPHPスクリプトを持っていますが、私が必要とすることの大半は正常に動作しています。私は現在、特定のユーザーに対して特別なユーザー特権を設定しています。PHPエコーがXcodeで受信されました。隠しキャラクターはありますか?
私がログインしているユーザーは、以下を使用してprivlegesの名前や「空白」を返し、その後、特別なユーザデータベースに登録されているかどうかを確認:
private function checkSpecialUser($userID)
{
$db = new DbConnect();
$result = $db->query("SELECT privelege FROM special_users WHERE userID = $userID");
if ($privName = $result->fetch_object())
{
echo $privName->privelege;
}
else
{
echo 'blank';
}
$db->close();
}
Xcodeで、私はシンプルを設定しています私が持っている問題に今
NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:&requestError];
NSString *packName = (NSString *)[[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding];
packName = [packName stringByReplacingOccurrencesOfString:@" " withString:@""];
NSLog(@"packName is %@", packName);
if([packName isEqualToString:@"blank"])
{
NSLog(@"user is not special");
}
else
{
NSLog(@"User is special :-)");
}
return packName;
:PHPスクリプト(つまり、すべてが正常に動作しますので、私は、接続部を残しておきます)によって返された文字列を返す関数。ユーザが特別な権限を持っていない場合、最初のNSLogは "packName is blank"を表示します。これはまさに私が期待するものです。しかし、if文は、packNameがequalToString "blank"であることを認識しなければなりません。それは常に「else」に達し、「User is special :-)」と表示します。
AREが登録されているユーザーと二重チェックしましたが、予想通りの文字列を返しますが、再度equalToString応答をトリガーしません。
PHPのエコーには、削除する必要のある隠された文字が含まれていますか、何らかの理由でデータベースから正しく値が取得されていませんか?データベースでは、各行は単にvarcharであるuserIDと、varcharである権限の名前です。
誰かがヒントをお持ちでしたら、本当に感謝しています。ありがとう。
は '@"空白 "'空白の特別な並べ替えですか?なぜあなたは '@" "'を使わないのですか? – cairnz
通常、私はちょうどそれが何かをエコーバックしていたことを確認したいと思っていました。それが空白だったら私は100%それが働いていたと確信していなかったでしょう。 – TheBestBigAl