致命错误:未捕获的PDOException:SQLSTATE [IMSSP]:试图绑定参数号65536。SQLServer支持最多2100个参数

时间:2020-07-09 18:31:26

标签: php sql-server

我正在尝试使用PDO和SQL Server创建简单的登录功能,但是由于某些原因,我一直收到此错误。我不确定所有这些参数的来源,所以我不确定如何解决此问题。这是代码:

数据库连接:


function dbconnect()
{
    $serverName = "Server";
    $databaseName = "Name";
    
    try {
        
        $db = new PDO("sqlsrv:Server = $serverName; Database = $databaseName", "Username", "Password");
        $db -> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        
    } catch (PDOException $ex) {

        $ex ->getMessage();
        
    }
    
    return $db;
    
}

登录功能:

include (__DIR__ . '/DB_Connect.php');

function checkLogin ($username, $password)
{
    $db = dbconnect();
    
    $stmt = $db->prepare("SELECT * FROM Users WHERE Username = ':username' and Password = ':password'");
    
    $binds = array
    (
        ":username" => $username,
        ":password" => sha1($password)
    );
    
    if ($stmt->execute($binds))
    {
        return ("True");
    }
    else
    {
        return ("False");
    }
    
    return ($stmt->rowCount() > 0);
}

会话变量:

<?php

    session_start();
    
    include __DIR__ . '/Models/Models_Application.php';
    include __DIR__ . '/Functions.php';
    
    $results = "";
    $username = filter_input(INPUT_POST, 'Username');
    $password = filter_input(INPUT_POST, 'Password');
    $action = filter_input(INPUT_POST, 'action');
    
    if( $action === "Login" && checkLogin($username, $password) == "True")
    {
        $_SESSION['logged_In'] = "True";
        header('location:Home.php');
    }
    else
    {
        if(isPostRequest())
        {
            $results = "Invalid Username or Password, please try again<br>";
        }
    }
?>

除了表单和登录页面外,几乎还有所有代码。我能提供的任何帮助将不胜感激。

0 个答案:

没有答案