繁体   English   中英

使用 xampp 在 localhost 上访问 html/php 文件时出现错误 404

[英]ERROR 404 while accessing html/php file on localhost with xampp

我正在尝试使用 xampp 在 localhost 上访问我的 html 网站。 php 文件与 html 文件一起长期存储在 htdocs 中。 但是我似乎仍然收到此错误。 我的数据库名称是 check,表名称是 loginform。

<?php
$host="localhost";
$user="root";
$password="";
$dbname="check";

//create connection
$conn=mysqli_connect('$host', '$user', '$password', '$dbname');

//check connection
if (mysqli_connect_errno()) {
    die('could not connect:'.mysqli_connect_error());

    # code...
}
//accept values
if (isset($_POST['username'])) {

    $uname=$_POST['username'];
    $password=$_POST['password'];

    $sql="select * from loginform where $uname='".$user."' AND $password='".$pass."' limit 1";

    $result=mysqli_query($sql);
//check query
    if (mysqli_num_rows($result)==1) {

        echo "You have Successfully logged in";
        exit();

    }
    else{
        echo "Invalid credentials";
        exit();
    }
    mysqli_close($conn);

}

我无法访问您的电脑以找出当前位置,但我将讨论您的代码您的登录表单是 vuln [sql injection] 您应该使用 mysqli_real_escape_string(); 或使用 php pdo 更安全(使用 bindParam )

例如:

# mysql connection
$con = new PDO("mysql:host=localhost;dbname=database", 'username', 'password', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));

$user = $_POST['username'];
$pass = $_POST['password'];

# login
$query = "SELECT * FROM `tableUsers` WHERE `username`=? AND `password`=?";
$run = $con->prepare($query);
$run->bindParam(1, $user, PDO::PARAM_STR);
$run->bindParam(2, $pass, PDO::PARAM_STR);
$run->execute();
$count = $run->RowCount();
if($count > 0) { // or if ($count === 1)
   // login complete the $_SESSION
} else {
   // wrong password
}

此代码阻止 SQLi 但仍然是 XSS

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM