我是PHP,HTML,jQuery的新手,我需要一些帮助。我有一个PHP脚本,当我单击提交按钮时,我需要激活它。我已将其设置为将我的会话设置为我的用户名和ID。如果输入的信息与数据库相同,我真正需要的是一种更新或附加p标签到我的div的方法。
这是我的代码:
<div class="modal-footer">
<input type="submit" name="sumbit" value="Login" class="btn btn-primary" />
<?php
if (isset($_POST["username"])) {
$username = $_POST["username"];
$password = $_POST["password"];
$sql = "select * from users where username = '$username' and password = '$password' limit 1";
$res = mysql_query($sql) or die(mysql_error());
if (mysql_num_rows($res)) {
$row = mysql_fetch_assoc($res);
$_SESSION["uid"] = $row["id"];
$_SESSION["username"] = $row["username"];
header("Location: index.php");
} else {
?>
//I want to add the text to my modal body above this code
<?php
}
}
?>
</div>
另外,如果你还没有注意到我正在使用bootstrap。
我的主要问题是我不知道如何运行PHP来检查信息是否正确,如果点击则没有关闭模态。
答案 0 :(得分:1)
这里需要的是一个AJAX请求,可以为您提取所有这些信息。
这样的事情:
<强> HTML 强>
<div class="modal-footer">
<input type="submit" name="sumbit" value="Login" class="btn btn-primary" />
</div>
<强> Jquery的强>
$("input[name='submit']").click(function(e){
e.preventDefault(); //to prevent form from submitting itself
$.post('phpcode.php', $("#form_id").serialize, function(response){
if(response.status)
{
location.reload('index.php');
}
else
{
$(".modal-footer").html(response.message);
}
});
});
PHP (phpcode.php)
if (isset($_POST["username"])) {
$username = $_POST["username"];
$password = $_POST["password"];
$sql = "select * from users where username = '$username' and password = '$password' limit 1";
$res = mysql_query($sql) or die(mysql_error());
if (mysql_num_rows($res)) {
$row = mysql_fetch_assoc($res);
$_SESSION["uid"] = $row["id"];
$_SESSION["username"] = $row["username"];
return json_encode(array('status' => true));
} else {
return json_encode(array('status' => false, 'message' => 'Error Message or whatever you\'d like to show'));
}
}
我在这里假设了很多东西。如果你有什么不明白的话,请随时回来。