用于 SQL Server 登录表单的 PHP 脚本
Posted
技术标签:
【中文标题】用于 SQL Server 登录表单的 PHP 脚本【英文标题】:PHP Script for log in form with SQL Server 【发布时间】:2018-08-05 15:29:20 【问题描述】:我在本地运行一个网站。我为登录表单创建了一个 php 脚本。
<?php
#starts a new session
session_start();
#includes a database connection
$serverName = "SQLServerNamehere"; //serverName\instanceName
$connectionInfo = array( "Database"=>"DatabaseNameHere",
"UID"=>"ServerUsernameHere", "PWD"=>"ServerPasswordHere");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn )
echo "Connection established.<br />";
else
echo "Connection could not be established.<br />";
die( print_r( sqlsrv_errors(), true));
#catches user/password submitted by html form
$email = $_POST['email'];
$password = $_POST['password'];
#checks if the html form is filled
if(empty($_POST['email']) || empty($_POST['password']))
echo "Fill all the fields!";
else
#searches for email and password in the database
$query = "SELECT * FROM [dbo].[Test] WHERE UserEmail(SQL Table
column)='$email' AND UserPassword(SQL table column)='$password'";
$result = sqlsrv_query($conn, $query);
#checks if the search was made
if($result === false)
die( print_r( sqlsrv_errors(), true));
#checks if the search brought some row and if it is one only row
if(sqlsrv_has_rows($result) != 1)
echo "Email/password not found";
else
#creates sessions
while($row = sqlsrv_fetch_array($result))
$_SESSION['id'] = $row['id'];
$_SESSION['name'] = $row['name'];
$_SESSION['user'] = $row['user'];
$_SESSION['level'] = $row['level'];
#redirects user
header("Location: homepage.html");
?>
这个文件叫做signin.php
我的 html 登录表单名为 signin.html:
<form class="login-form" action = 'signin.php' method="post">
<input type="text" placeholder="email"/>
<input type="password" placeholder="password"/>
<button>login</button>
</p> -->
</form>
现在,当用户在输入正确的凭据后单击登录按钮时,我希望将用户重定向到主页选项卡,但是当您输入凭据并单击登录按钮时,它只显示 PHP 代码。我对此很陌生,有人可以向我解释我如何使它工作吗?谢谢
【问题讨论】:
创建另一个脚本,并将以下代码放入其中:<?php phpinfo(); ?>
。在浏览器中运行它。看到代码了吗?您的服务器处理程序有问题,将代码解析为 PHP。
【参考方案1】:
如果它正在显示 PHP 代码,则您的网络服务器未设置为处理 PHP 文件。
如何做到这一点取决于您的操作系统和网络服务器堆栈,但通常,您需要安装一个 PHP 处理程序,然后向您的网络服务器添加配置,告诉它当一个 PHP 文件的请求进入时,通过将该代码发送到 PHP 应用程序并将其作为呈现的网页返回。
您可以参考 PHP 文档了解更多信息:
http://php.net/manual/en/install.php
【讨论】:
以上是关于用于 SQL Server 登录表单的 PHP 脚本的主要内容,如果未能解决你的问题,请参考以下文章