无法在HTML文件中调用PHP函数,尝试在不同的代码中使用相同的代码工作正常,但此处不可用
当我按下登录按钮时,它会刷新页面,并且不会做任何事情。我试着输入错误的服务器IP只是为了检查错误,但我猜它没有响应登录按钮并直接刷新页面 无法在HTML文件中调用PHP函数,尝试在不同的代码中使用相同的代码,在那里工作正常,但在这里不行:无法在HTML文件中调用PHP函数,尝试在不同的代码中使用相同的代码工作正常,但此处不可用,php,html,sql,Php,Html,Sql,当我按下登录按钮时,它会刷新页面,并且不会做任何事情。我试着输入错误的服务器IP只是为了检查错误,但我猜它没有响应登录按钮并直接刷新页面 无法在HTML文件中调用PHP函数,尝试在不同的代码中使用相同的代码,在那里工作正常,但在这里不行: <title> Database Login </title> <body> </head> <body> <span> <div class="heading"> &l
<title> Database Login </title>
<body>
</head>
<body>
<span>
<div class="heading">
<h3><img src="http://zicom.com/img/ilayashop-1482233381.jpg" alt="Zicom Logo" >
<h1><b>MAaaS Login<b></h1><br>
</span>
</div>
<div class='admin'>
<form method='post' action=''>
<p class='main'> Enter your Details </p>
<p> Enter User Name <input type="text" name="name" id="userInput"></p>
<p> Enter password <input type="password" name="pass" id="userInput"> </p>
<br>
<input id="login" type="submit" name="submit" value="Login">
</form>
</div>
<?php
if($_POST){
$UN = $_POST['name'];
$PS = $_POST['pass'];
$scon=odbc_connect("Driver={SQL Server};Server=XXXXXXX; Database=Sampledata;","XX","XXXXX");
$query="SELECT [password] FROM [Simcarddata].[dbo].[MasterUser] Where username='$UN'";
$rs=odbc_exec($scon,$query);
if (!$rs)
{
$msg="SQL statement failed with error:\n";
$msg.=odbc_error($scon).": ".odbc_errormsg($scon)."\n";
} else {
$number_of_rows = odbc_num_rows($rs);
$msg="$number_of_rows records found.\n";
}
while(odbc_fetch_row($rs))
{
$field1 = odbc_result($rs,1);
// print ("$PS and $field1");
if ($PS == $field1){
print ("TRUE");
header("Location: /test.php");
}
else {
print ("Incorrect Username or password");
}
}
odbc_close($scon);
header("Refresh:2");
}
?>
</body>
</html>
如果$\u服务器['REQUEST\u METHOD']='POST',请使用此选项,而不是$\u POST,或者如果$\u服务器['REQUEST\u METHOD'],请使用ifisset$\u POST=='POST'请使用此选项,而不是使用if$\u POST或ifisset$\u POST我只是稍微整理了一下HTML标记,并使用了更好的方法检查POST数据-但我认为问题在于格式错误的HTML混淆了表单
<html>
</head>
<title> Database Login </title>
</head>
<body>
<span>
<div class="heading">
<h3><img src="http://zicom.com/img/ilayashop-1482233381.jpg" alt="Zicom Logo" ></h3>
<h1><b>MAaaS Login<b></h1>
<br>
</div>
</span>
<div class='admin'>
<form method='post'>
<p class='main'> Enter your Details </p>
<p>Enter User Name <input type="text" name="name" id="userInput"></p>
<p>Enter password <input type="password" name="pass" id="userInput"></p>
<br>
<input id="login" type="submit" name="submit" value="Login">
</form>
</div>
<?php
if( $_SERVER['REQUEST_METHOD']=='POST' && isset( $_POST['name'], $_POST['pass'] ) ){
$UN = $_POST['name'];
$PS = $_POST['pass'];
$scon=odbc_connect("Driver={SQL Server};Server=XXXXXXX;Database=Sampledata;","XX","XXXXX");
$query="SELECT [password] FROM [Simcarddata].[dbo].[MasterUser] Where username='$UN'";
$rs=odbc_exec( $scon, $query );
if (!$rs) {
$msg="SQL statement failed with error:\n";
$msg.=odbc_error($scon).": ".odbc_errormsg($scon)."\n";
} else {
$number_of_rows = odbc_num_rows($rs);
$msg="$number_of_rows records found.\n";
}
while( odbc_fetch_row( $rs ) ) {
$field1 = odbc_result($rs,1);
if ($PS == $field1){
print ("TRUE");
header("Location: /test.php");
} else {
print ("Incorrect Username or password");
}
}
odbc_close($scon);
header("Refresh:2");
}
?>
</body>
</html>
我只是稍微整理了一下HTML标记,并使用了一种更好的方法来检查POST数据——但我认为问题在于格式错误的HTML混淆了表单
<html>
</head>
<title> Database Login </title>
</head>
<body>
<span>
<div class="heading">
<h3><img src="http://zicom.com/img/ilayashop-1482233381.jpg" alt="Zicom Logo" ></h3>
<h1><b>MAaaS Login<b></h1>
<br>
</div>
</span>
<div class='admin'>
<form method='post'>
<p class='main'> Enter your Details </p>
<p>Enter User Name <input type="text" name="name" id="userInput"></p>
<p>Enter password <input type="password" name="pass" id="userInput"></p>
<br>
<input id="login" type="submit" name="submit" value="Login">
</form>
</div>
<?php
if( $_SERVER['REQUEST_METHOD']=='POST' && isset( $_POST['name'], $_POST['pass'] ) ){
$UN = $_POST['name'];
$PS = $_POST['pass'];
$scon=odbc_connect("Driver={SQL Server};Server=XXXXXXX;Database=Sampledata;","XX","XXXXX");
$query="SELECT [password] FROM [Simcarddata].[dbo].[MasterUser] Where username='$UN'";
$rs=odbc_exec( $scon, $query );
if (!$rs) {
$msg="SQL statement failed with error:\n";
$msg.=odbc_error($scon).": ".odbc_errormsg($scon)."\n";
} else {
$number_of_rows = odbc_num_rows($rs);
$msg="$number_of_rows records found.\n";
}
while( odbc_fetch_row( $rs ) ) {
$field1 = odbc_result($rs,1);
if ($PS == $field1){
print ("TRUE");
header("Location: /test.php");
} else {
print ("Incorrect Username or password");
}
}
odbc_close($scon);
header("Refresh:2");
}
?>
</body>
</html>
可能是个愚蠢的问题,但是这个页面有.php扩展名?它也可能是由于您所拥有的格式错误的HTML。另外-一旦你发送了html内容,你就不能使用标题html到处都是-我猜格式错误的html是这里的根本问题。这可能是个愚蠢的问题,但是这个页面有.php扩展名?它也可能是由于您所拥有的格式错误的HTML。还有-发送html内容后不能使用标题html到处都是-我猜格式错误的html是根本问题。按下登录按钮后,页面刷新并返回登录页面。我仍然面临相同的问题,按下登录按钮后,页面刷新并返回登录页面。