0
방금 로그인 시스템을 조금 만들었지 만, 약간의 ubelievable 문제가 있습니다. 때로는 로그인하지 않는 경우도 있습니다.php, jquery - 같은 페이지에 게시
Loging이 코드에 의해 수행에 : 편의를 위해
if(isset($_POST['logedOut'])) {
setcookie('username', '', time() - 3600);
setcookie('userid', '', time() - 3600);
$logedIn = false;
} else if(isset($_POST['logedIn'])) {
echo 'POST SENT';
$expire = ($_POST['remember'] == true) ? time() + $GLOBALS['year'] : '';
setcookie('username', $_POST['logedIn'], $expire);
setcookie('userid', $_POST['id'], $expire);
$username = $_POST['logedIn'];
$userid = $_POST['id'];
$logedIn = true;
} else if (isset($_COOKIE['username'])) {
$logedIn = true;
$username = $_COOKIE['username'];
$userid = $_COOKIE['userid'];
} else {
echo 'POST NOT SENT';
$logedIn = false;
}
: 자바 스크립트의 내부
if(isset($_POST['logedIn'])) {
echo 'POST SENT';
$logedIn = true;
} else {
echo 'POST NOT SENT';
$logedIn = false;
}
나는 양식을 작성마다
function checkUser (mail, pass, rem) {
var sectionName = 'checkUser';
$.ajax({
async: true,
type: 'POST',
url: 'php/readDB.php',
cache: false,
contentType: 'application/x-www-form-urlencoded; charset=UTF-8',
data: {section: sectionName, email: mail, password: pass, remember: rem},
dataType: 'text',
timeout: 3000,
beforeSend: function() {
console.log('Read from DB called');
},
success: function(data) {
if(data!='false') {
$('<form action="#" method="post"><input type="hidden" name="logedIn" value="' + mail + '" /><input type="hidden" name="remember" value="' + rem + '" /><input type="hidden" name="id" value="' + data + '" /></form>').appendTo('body').submit();
} else {
$('#afterDialog').html('Uživatelské jméno nebo heslo je špatně zadáno.');
$('#afterDialog').dialog('open');
}
},
error: function(request, errorType, errorMessage) {
alert('Error: ' + errorType + ' with message: ' + errorMessage);
},
complete: function() {
console.log('Read from DB completed');
}
});
}
를 호출 버튼을 클릭해야 ,이 함수가 호출되고 각 경우에 양식이 오른쪽으로 채워지면 $ ('...')로 이동합니다. submit();하지만 90 try의 % POST 데이터는 전송되지 않으며 PHP 페이지는 "POST NOT SENT"를 반향합니다. 로그인 양식 (메일, 패스, 렘)에서 동일한 입력 데이터로 10 %가 성공적으로 로그인됩니다. (문제는 어디에 있습니까?)
관측 : 만약 .submit()으로 주석을 달고, 페이지를 새로 고침하고 – SilentCry
'$ _POST [ 'logedIn']'를 PHP에 전달하는 곳은 무엇입니까? – MrUpsidown
"어디에서 $ _POST [ 'logedIn'을 전달할 것인가? '] 귀하의 PHP에? "위의 자바 스크립트 코드의 17 번째 줄 – SilentCry