Open Shift无法从php执行mysql查询
我无法在mysql数据库上执行查询,代码如下:Open Shift无法从php执行mysql查询,php,mysql,openshift,Php,Mysql,Openshift,我无法在mysql数据库上执行查询,代码如下: ... $nam=$_POST['name']; $pass=md5($_POST['pass']); ... $mysql_db_host=getenv("OPENSHIFT_MYSQL_DB_HOST"); $mysql_db_username=getenv("OPENSHIFT_MYSQL_DB_USERNAME"); $mysql_db_password=getenv("OPENSHIFT_MYSQL_DB_PASSWORD"); $con
...
$nam=$_POST['name'];
$pass=md5($_POST['pass']);
...
$mysql_db_host=getenv("OPENSHIFT_MYSQL_DB_HOST");
$mysql_db_username=getenv("OPENSHIFT_MYSQL_DB_USERNAME");
$mysql_db_password=getenv("OPENSHIFT_MYSQL_DB_PASSWORD");
$con=mysqli_connect($mysql_db_host,$mysql_db_username,$mysql_db_password,"mydb");
if(mysqli_connect_errno())
{
// display error
}
else
{
$res1=mysqli_query("select * from users where username='$name' and password='$pass'");
if(mysqli_num_rows($res1)>0)
{
// fetch rows
}
else
{
print "error: ".mysqli_error($con);
}
}
...
输出:
error:
mysqli_error($con)也没有返回任何错误。那么,您在查询中使用的
$name
和$pass
定义了什么/在哪里?在传递查询后回显您使用的查询,以查看该查询是否实际返回了任何内容。在您的编辑中,$name
未定义,但$nam
已定义。此外,您对SQL注入非常开放,如果还没有,您应该过滤输入。echo“select*from username='$name'和password=$pass'代码>