데이터베이스에 저장된 세션 토큰에서 사용자의 (1 - 세션 토큰이있는 것만) 사용자 이름을 검색하려고합니다. 행 ID, 코드, 사용자 이름으로 서식이 지정됩니다. 나는 그 다음 사용자 이름을 검색 할 수있는 배열에 행을 저장하는 행을 검색하려고합니다. 배열로 PDO 데이터베이스에서 항목을 검색하여 문자열을 검색하는 방법
테이블 SQLCREATE TABLE `signup` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`code` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`username` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `code` (`code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1;
테이블 정보
id code username
1 123-145-546-48 CallumCarmicheal
나는이 알아낼 수 없습니다
$db2 = new PDO("mysql:host={$mysql_host};dbname={$mysql_database};charset=utf8", $mysql_user, $mysql_password, $options);
$token = "123-145-546-48";
$query = "
SELECT
id,
code,
username
FROM signup
WHERE
code = $token
";
try {
$stmt = $db2->prepare($query);
$stmt->execute();
} catch (PDOException $ex) {
die("Failed to run query: " . $ex->getMessage());
}
// return the Username from getting the token
return ...
테스트를 봤는데 현재 코드는, 아마 간단하지만 관리자가 세션 코드를 생성하고 사용자 이름을 설정해야하는 가입 시스템을 만들었습니다. 그러면 사용자 이름이 표시되고 사용자는 이메일과 비밀번호를 입력 할 수 있습니다. 이것은 사용자 이름을 검색 할 것이지만 내가 시도한 모든 것은 빈 문자열을 반환하거나 아무 것도 반환하지 않습니다. 사용자 등록 후 세션 토큰이 삭제됩니다.