我提交表单按钮后试图保持同一页面。 根据用户点击的按钮,我想在单击按钮的同一页面上显示某些信息。
出于某种原因,它一直将我重新引导回我的问题" ask_login.php"单击按钮后的页面。 我已经阅读过,有些人建议使用AJAX或JQuery,但我并不是很了解它。如果能得到一些帮助,我将不胜感激。感谢。
loggedin.php
<?php
$username = $_POST['username'];
$password = $_POST['password'];
if($username && $password) {
//info is provided
$queryget = mysql_query("SELECT * FROM users WHERE id='$username' AND password='$password'");
$numrows = mysql_num_rows($queryget);
if($numrows != 0) {
//something has been found
$_SESSION['id'] = $username;
} else {
echo "Wrong username/password";
echo "<script>alert('Username/Password are wrong');</script>";
echo "<script language='javascript'>window.location = 'ask_login.php';</script>";
}
}
else {
echo "Wrong username/password";
echo "<script>alert('Username/Password are wrong');</script>";
echo "<script language='javascript'>window.location = 'ask_login.php';</script>";
}
?>
<form method="POST" action="">
<input type="submit" name="details" value="Details">
</form>
<form method="POST" action="">
<input type="submit" name="optionB" value="option B">
</form>
<form method="POST" action="">
<input type="submit" name="optionC" value="option C">
</form>
答案 0 :(得分:1)
<form action="#">
。没有行动意味着提交到当前网址,英镑符号表示当前文件&#39;而且不应该导航。虽然我不确定表格在语义上是否允许这样做。
我建议在ajax上发布表单数据。它不难做到,Jquery提供了最常用的ajax函数,你基本上循环遍历表单中的每个输入,并将值推送到uri编码的字符串并通过ajax调用发布。
答案 1 :(得分:0)
我认为以下代码不正确... if($ username&amp;&amp; $ password)
试试这个
if(!empty($username) && !empty($password))
答案 2 :(得分:0)
我认为应该是
<?php
if($_POST)
{
$username = $_POST['username'];
$password = $_POST['password'];
if($username && $password) {
//info is provided
$queryget = mysql_query("SELECT * FROM users WHERE id='$username' AND password='$password'");
$numrows = mysql_num_rows($queryget);
if($numrows != 0) {
//something has been found
$_SESSION['id'] = $username;
} else {
echo "Wrong username/password";
echo "<script>alert('Username/Password are wrong');</script>";
echo "<script language='javascript'>window.location = 'ask_login.php';</script>";
}
}
else {
echo "Wrong username/password";
echo "<script>alert('Username/Password are wrong');</script>";
echo "<script language='javascript'>window.location = 'ask_login.php';</script>";
}
}
?>
<form method="POST" action="">
<input type="submit" name="details" value="Details">
</form>
<form method="POST" action="">
<input type="submit" name="optionB" value="option B">
</form>
<form method="POST" action="">
<input type="submit" name="optionC" value="option C">
</form>
答案 3 :(得分:0)
您可以使用jquery处理表单
$.post( "test.php", $( "#testform" ).serialize(),function(e){alert(e);} );
test.php的
<?php
$username = $_POST['username'];
$password = $_POST['password'];
if($username && $password) {
//info is provided
$queryget = mysql_query("SELECT * FROM users WHERE id='$username' AND password='$password'");
$numrows = mysql_num_rows($queryget);
if($numrows != 0) {
//something has been found
$_SESSION['id'] = $username;
} else {
echo "Wrong username/password";
echo "<script>alert('Username/Password are wrong');</script>";
echo "<script language='javascript'>window.location = 'ask_login.php';</script>";
}
}
else {
echo "Wrong username/password";
echo "<script>alert('Username/Password are wrong');</script>";
echo "<script language='javascript'>window.location = 'ask_login.php';</script>";
}
?>
http://api.jquery.com/jquery.post/
要注意,没有输入验证!
阅读本页
http://www.php.net/manual/en/function.mysql-real-escape-string.php