Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.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 mysql表Paasword列添加amp;最后_Php_Mysql - Fatal编程技术网

Php mysql表Paasword列添加amp;最后

Php mysql表Paasword列添加amp;最后,php,mysql,Php,Mysql,我创建了一个mysql表,并使用php通过输入标记将数据插入表中。当我使用在表的密码列中插入密码值时。它会自动添加amp在字符串的末尾。如何删除它 <?php $username = $_POST['username']; $password = $_POST['password']; echo $username; echo $password; $connection = mysqli_connect("localhost", "root", "", "register"); if (

我创建了一个mysql表,并使用php通过输入标记将数据插入表中。当我使用
在表的密码列中插入密码值时。它会自动添加
amp在字符串的末尾。如何删除它

<?php
$username = $_POST['username'];
$password = $_POST['password'];
echo $username;
echo $password;
$connection = mysqli_connect("localhost", "root", "", "register");
if (!$connection) {
    die("can not connect to database");
}
$sql = "SELECT * FROM signupinfo WHERE username= '" . $username . "' AND password ='" . $password . "' ";
$result = mysqli_query($connection, $sql);
if (!$result) {
    die(mysqli_error($connection));
}
if (mysqli_num_rows($result) == 1) {
    echo "login successfull";
} else {
    echo "sorry incorrect password or username";
}

可能有3种可能性:

1) 检查密码字段的字符集,它应该是utf8\u general\u ci

2) 删除不需要的空间,如:

从signupinfo中选择*,其中username='“$username.”和password='“$password.”

3) 对密码变量进行如下解码:


从signupinfo中选择*,其中username='“$username.”和password='“.html\u entity\u decode($password)。”

您可以在DB上共享您提交的PHP代码吗。 我想你是通过GET方法发送的。 类似于——

submitdemo.php?用户名=测试&密码=测试&

或者在POST方法中可能是这样的。
请检查您没有在参数字符串的最后一个上发送额外的&

为什么要将密码存储为纯文本?