2012-07-03 3 views
0

Я пытаюсь создать систему входа для моего мобильного приложения jQuery, но ничего не делает после нажатия кнопки входа в систему. Прямо сейчас я не использую соединение db.jQuery Мобильная система входа в систему и PHP не работает

index.html

<!doctype html> 
<html> 
<head> 
<meta charset="utf-8"> 
<title>Untitled Document</title> 
<link href="jquery.mobile-1.1.0/jquery.mobile.theme-1.0.min.css" rel="stylesheet" type="text/css"> 
<link href="jquery.mobile-1.1.0/jquery.mobile.structure-1.1.0.min.css" rel="stylesheet" type="text/css"> 
<script src="jquery.mobile-1.1.0/jquery-1.7.2.min.js" type="text/javascript"></script> 
<script type="text/javascript"> 
    $(document).ready(function() { 
    $('#loginform').submit(function(){ 
    $('#output').html('Connecting...'); 
    var postTo = 'http://www.hedonsoft.com/game/login.php'; 
    $.post(postTo,{userLbl: $('[name=username]').val(), passwordLbl: $('[name=password]').val()}, function (data){ 
     if(data.message){ 
      $('#output').html(data.message);  
     }else{ 
      $('#output').html("Could not connect"); 
     } 
     }, 'json'); 

     return false; 
    }); 
    }); 
</script> 
<script src="jquery.mobile-1.1.0/jquery.mobile-1.1.0.min.js" type="text/javascript"></script> 
<link rel="stylesheet" type="text/css" href="custom.css" /> 
</head> 

<body> 
<div data-role="page" id="mc_main"> 
    <div data-role="header" id="header"> 
    <h1>Main Menu</h1> 
    </div> 

<div data-role="content"> 
<div data-role="collapsible" id="logindiv"><h2>Login</h2> 
    <form id="loginform" method="post"> 
<div data-role="fieldcontain"> 
     <label for="user">Username:</label> 
     <input type="text" name="user" id="user" value="" /> 
    </div> 
    <div data-role="fieldcontain"> 
     <label for="pass">Password:</label> 
     <input name="pass" type="password" id="pass" value=""> 
    </div> 
    <input type="submit" value="Login" data-icon="check" data-theme="a"/> 
    </form> 
    <div id="output"></div> 
     </div> 
</div> 
</body> 
</html> 

login.php

<?php 
if(isset($_POST['username'] and isset($_POST['password'])) { 

// do logic for logining in (usually query your db) 
if ($_POST['username'] == 'test' and $_POST['password'] == 'test') { 
$data['success'] = true; 
$data['message'] = 'Login succesful'; 
} else { 
$data['success'] = false; 
$data['message'] = 'Login failed'; 
} 
// return json 
echo json_encode($data); 
} 
?> 

я получаю 'Подключение ...' в #output, но это все.

+0

является 'postTo' поперечным запрос домена? – Ohgodwhy

+0

Да. Это мобильное приложение – RapsFan1981

+0

У меня такая же точная проблема! Я пытался найти решение около 5 месяцев! Любая помощь будет большой. Благодарю. –

ответ

1

Ваше имя пользователя для поля пользователя - «пользователь».

Изменение JavaScript, чтобы выглядеть следующим образом

$.post(postTo,{userLbl:$('[name=user]').val(), ... 

Тогда ваш login.php должен lõoke так:

<?php 
if(isset($_POST['userLbl'] and isset($_POST['passwordLbl'])) { 

// do logic for logining in (usually query your db) 
if ($_POST['userLbl'] == 'test' and $_POST['passwordLbl'] == 'test') { 
$data['success'] = true; 
$data['message'] = 'Login succesful'; 
} else { 
$data['success'] = false; 
$data['message'] = 'Login failed'; 
} 
// return json 
echo json_encode($data); 
} 
?> 
+0

should искать $ _POST ['userLbl']? {userLbl: $ ('[name = username]'). val() – Waygood

+0

да да да !!! вы rigth! $ _POST ['userLbl']. Спасибо! – nicowernli

+0

Всем спасибо! :) – RapsFan1981

4

Код login.php имеет синтаксическую ошибку в строке 2. Должно быть:

if(isset($_POST['userLbl']) && isset($_POST['passwordLbl']))

Смежные вопросы