Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 过期方法:不推荐的通知和警告_Php_Html_Mysql - Fatal编程技术网

Php 过期方法:不推荐的通知和警告

Php 过期方法:不推荐的通知和警告,php,html,mysql,Php,Html,Mysql,我正在尝试学习PHP和MYSQL,我完成了这段代码,它似乎可以工作,但我有很多警告,我不知道它们是什么意思,无论如何PHP连接到数据库。代码如下: myPgae.php打开主页 <!DOCTYPE HTML> <html> <head> <link rel="stylesheet" href='http://localhost/prove/librerie/bootstrap/css/bootstrap.css'></script&g

我正在尝试学习PHP和MYSQL,我完成了这段代码,它似乎可以工作,但我有很多警告,我不知道它们是什么意思,无论如何PHP连接到数据库。代码如下:

myPgae.php打开主页

<!DOCTYPE HTML>
<html>
<head>
    <link rel="stylesheet" href='http://localhost/prove/librerie/bootstrap/css/bootstrap.css'></script>
    <script type="text/javascript" src='http://localhost/prove/librerie/angular.min.js'></script>
    <script type="text/javascript" src='http://localhost/prove/librerie/bootstrap/js/bootstrap.min.js'></script>
<body>
    <form action="procces.php" method="POST">
        <div class="text-info identazione" class="identazione">Username : </div><input lass="form-control" type="text" name="username"/>
        <div class="text-info identazione">Password : </div><input type="text" name="password"/>
        <div class="identazione"><input class=" btn btn-success" type="submit"/></div>
    </form>
</body>
</head>

<style>
    body {
        padding : 50px;
    }   
    .identazione{
        padding: 12px;
    }

</style>
process.php

这是警告的证据

另外,如果它能帮助你,我正在研究Chrome并使用Wampp。我用意大利语写的,我希望这不是问题,反正我已经创建了数据库,它的名字是:login,用用户名、密码和id定义。我已经创建了一个usertest和userpass,如果我尝试登录,它们会工作,但有相同的错误

更新:

我在risutato中更改了结果,这是我的错误,现在只有两个警告,无论如何我必须更新我的知识,我正在处理过时的源


在你继续之前停止,你正在使用过时的方法,在你继续之前需要做一些阅读

mysql不再受支持,并且使用起来很危险,注入攻击。建议您阅读本手册,并开始了解如何使用它进行数据库查询-

如果您愿意,也可以使用mysqli,但我建议使用PDO

接下来,您需要了解一下安全性,您将密码存储为普通测试,这很糟糕。为了提供良好的安全性,我建议您在此处阅读-

这将使您了解如何使用密码\u散列函数以及密码\u验证函数


希望这有帮助。

为了您自身的安全:不要使用mysql\u connect

切换到mysqli或pdo

无论如何,要隐藏/抑制不推荐使用的警告,您可以在页面顶部执行以下操作:

错误报告所有^E\U已弃用;
错误报告0;已弃用但未删除。您正在使用哪个版本$暴动!=$结果。@Chris我看到了ti,但没有帮助我,我将再次查看它,并查看未定义的变量。同时检查这个:@Teshtek基本上这意味着你正在使用一个旧的API mysql,而你真的不应该这样做。看到PDO和mysqli之间的区别了吗?好的,现在我在看密码散列。不管怎样,你在帮助meThis,它会比我更好地解释这个区别-
    <?php 
//da myPage a variabili locale
    $username = $_POST['username'];
    $password = $_POST['password'];
//per prevenire mysql injection
    $username= stripcslashes($username);
    $password= stripcslashes($password);
    $username= mysql_real_escape_string($username);
    $password= mysql_real_escape_string($password);
//connessione al server e selezione database
    mysql_connect("localhost","root","");
    mysql_select_db("login");
//query al database per utente
    $risultato= mysql_query("select * from utenti where username = '$username' and password = '$password' ") or die("Utente non trovato, verificare le credenziali".mysql_error());
    $riga = mysql_fetch_array($result);
    if($riga['username']==$username && $riga['password']==$password){
        echo "Login effettuato. Benvenuto".$riga['username'];
    }
    else
        echo "Login errato. Reinserisci i dati";

?>