当前位置: 首页 > 面试题库 >

更新用户详细信息,SQL Server 2008 sqlsrv

孟均
2023-03-14
问题内容

您好,我在运行脚本时遇到了一些麻烦,我不断收到一条错误消息,说它需要两个参数,并且我不知道如何解决它,这里是脚本:

<?php
session_start ();
if(isset($_SESSION['user'])){
$username = $_SESSION['username'];
if(isset($_POST['submit'])){
    $oldpassword = $_POST['oldpassword'];
    $newpassword = $_POST['newpassword'];
    $serverName = "server";
    $connectionInfo = array("Database"=>"database","UID"=>"id", "PWD"=>"pass");
    $conn = sqlsrv_connect( $serverName, $connectionInfo);
    if( $conn === false){
        echo "Error in connection.\n";
        die( print_r( sqlsrv_errors(), true));
    }
    $tsql = "SELECT userPass FROM customers WHERE userName='$username'";
    $stmt = sqlsrv_query($conn, $tsql, array(), array( "Scrollable" => 'static' ));
    if ( !$stmt ){
        die( print_r( sqlsrv_errors(), true));
    }
    $rows = sqlsrv_num_rows($stmt);
    if($rows === false){
        die( print_r( sqlsrv_errors(), true));
    }elseif($rows == 0){
        echo "No rows returned.";
        exit();
    }else{
        $querychange = sqlsrv_query("UPDATE customers SET userPass='$newpassword' WHERE userName='$username'");
        session_destroy();
        die ("Your password has been changed. <a href='index.php'>Return</a> to the main page and login with your new password.");
    }
}
}
?>

我不断收到这个错误

PHP警告:sqlsrv_query()至少需要2个参数,第27行的file_name.php中给出1个

第27行是我更新客户的地方。如果有人能在脚本中发现错误,您能告诉我吗,是的,我还没有完成SQL注入,在这个阶段,我只是想在实现之前使其正常工作。

感谢您提供的所有帮助,不胜感激


问题答案:

尝试将连接传递到sqlsrv_query

就像是:

 $querychange = sqlsrv_query($conn, "UPDATE customers SET userPass='$newpassword' WHERE userName='$username'");


 类似资料:
  • 我正在使用spring security的spring boot 2.2.4。我面临的问题是,每次我与新用户登录时,主要用户名都会重置为新登录用户的详细信息,为什么。然而,正如我所观察到的,会话ID仍然正确。我不理解这种行为。知道吗? 用户详情服务 UserDetails类

  • 我对Java和Spring3(过去8年主要使用PHP)还很陌生。我已经使用spring security 3来处理所有默认的userDetails和userDetailsService,我知道我可以通过使用以下命令访问控制器中登录用户的用户名: 但有两个问题我想不通: > 我希望在用户登录时存储许多其他用户详细信息(如DOB、性别等),并在以后通过控制器进行访问。我需要做什么才能使创建的userD

  • cmf_update_current_user($user) 功能 更新当前登录前台用户的信息 参数 $user: array 前台用户的信息 返回 无

  • 问题内容: 我如何验证信用卡。我需要做检查。黑莓中有API可以做到吗? 问题答案: 您可以使用以下方法来验证信用卡号

  • cmf_update_current_user($user) 功能 更新当前登录前台用户的信息 参数 $user: array 前台用户的信息 返回 无