답변 2개 / 댓글 1개
채택된 답변
+20 포인트
2023-07-27 (목) 19:16:51
방법은 다양합니다.
쿠키사용, 회원가입요구, 소셜미디어 로그인, 세션사용, CAPTCHA 사용 등
예시를 참고하셔서 원하시는 로직으로 구현 하시면 될 것 같습니다.
Copy
<?php
// PHP 세션을 시작합니다.
session_start();
// 투표 처리 로직을 수행합니다.
function handleVote()
{
// 사용자 IP 주소를 가져옵니다.
$user_ip = $_SERVER['REMOTE_ADDR'];
// 해당 IP의 세션 변수가 설정되어 있는지 확인합니다.
if (!isset($_SESSION['voted_ips'])) {
$_SESSION['voted_ips'] = array();
}
// 해당 IP가 이미 투표한 IP 목록에 있는지 확인합니다.
if (in_array($user_ip, $_SESSION['voted_ips'])) {
// 이미 투표한 IP이므로 투표 참여를 막습니다.
echo "하루에 한 번만 투표가 가능합니다.";
} else {
// 투표 처리를 진행합니다.
// ...
// 투표가 성공적으로 처리되면 IP를 투표한 IP 목록에 추가합니다.
$_SESSION['voted_ips'][] = $user_ip;
echo "투표가 완료되었습니다.";
}
}
// 투표 요청이 들어온 경우 처리합니다.
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
handleVote();
}
?>
<!DOCTYPE html>
<html>
<head>
<title>투표 페이지</title>
</head>
<body>
<h1>투표 페이지</h1>
<form method="post" action="">
<!-- 투표 양식 등록 -->
<input type="submit" value="투표" />
</form>
</body>
</html>
2023-07-28 (금) 04:53:55
쿠키 하나 궈 보시죠 ^^
답변에 대한 댓글 1개
2023-07-28 (금) 04:57:33
답변을 작성하려면 로그인이 필요합니다.
참고해 보세요