PHP 오류 메시지를 해결하는 방법은 무엇입니까? 시도했지만 여전히 성공하지 못했습니다.
P粉773659687
2023-08-08 12:34:18
<p><br /></p>
<pre class="brush:php;toolbar:false;">function verifyUserID($session_id, $userid) {
/* 사용자가 데이터베이스에 있는지 확인 */
$query = "user_sessions에서 session_id를 선택하세요. session_id = '$session_id' AND userid = '$userid'";
$stmt = $this->db->prepare($query);
$stmt->execute(array(':userid' => $userid, ':sessionid' => $session_id)); // 오류 메시지는 여기에서 오고 있음을 나타냅니다.
$count = $stmt->rowCount();
if (!$stmt || $count < 1) {
1을 반환합니다. // 사용자 이름 실패를 나타냅니다.
}
$dbarray = $stmt->fetch();
/* 사용자 ID가 올바른지 확인 */
if ($session_id == $dbarray['session_id']) {
0을 반환합니다. // 성공! 사용자 이름 및 사용자 ID가 확인되었습니다.
} 또 다른 {
2를 반환합니다. // 사용자 ID가 유효하지 않음을 나타냅니다.
}
}</pre>
<p>저는 一直收到这个错误信息。</p>
<인용문>
<p>치명적인 오류: 포착되지 않은 PDO예외: SQLSTATE[HY093]: 잘못된 매개변수 번호: 바인딩된 변수 수가 C:xampphtdocstintoadminincludesSession.php:129의 토큰 수와 일치하지 않습니다. 스택 추적: #0 C:xampphtdocstintoadminincludesSession.php(129) : PDOStatement->execute(Array) #1
</인용문>
<pre class="brush:php;toolbar:false;">function verifyUserID($session_id, $userid) {
/* 사용자가 데이터베이스에 있는지 확인 */
$query = "user_sessions에서 session_id를 선택하세요. session_id = '$session_id' AND userid = '$userid'";
$stmt = $this->db->prepare($query);
$stmt = array(':userid' => $userid, ':sessionid' => $session_id); // 오류 메시지는 여기에서 오고 있음을 나타냅니다.
$stmt->execute();
$count = $stmt->rowCount();
if (!$stmt || $count < 1) {
1을 반환합니다. // 사용자 이름 실패를 나타냅니다.
}
$dbarray = $stmt->fetch();
/* 사용자 ID가 올바른지 확인 */
if ($session_id == $dbarray['session_id']) {
0을 반환합니다. // 성공! 사용자 이름 및 사용자 ID가 확인되었습니다.
} 또 다른 {
2를 반환합니다. // 사용자 ID가 유효하지 않음을 나타냅니다.
}
}</pre>
<p>给误提示</p>
자리 표시자 앞에 콜론(:)을 추가하고 $userID 및 $sessionID 변수를 쿼리와 연결하지 않아야 합니다.
으아악