【问题标题】:Internal Server Error when accessing MySQL database via MySQL_Connect通过 MySQL_Connect 访问 MySQL 数据库时出现内部服务器错误
【发布时间】:2016-01-10 17:19:08
【问题描述】:

提前感谢您阅读我的帖子。

当我通过 MySQL_Connect 成功访问我的数据库时,我收到 500 内部服务器错误。如果我为我的数据库输入了不正确的凭据,当我访问我网站上的“loginapp.php”文件时,我会成功显示一条错误消息。

我目前正在使用 iPage 作为网络主机。

这是我的“loginapp.php”中的代码

<?php

//ob
ob_start();

//session
session_start();

//connect
$error = 'Could not connect to the database';
mysql_connect('MyDataBase.ipagemysql.com', 'MyBase','MyPass') or die($error);
mysql__select_db('MyDatabase') or die($error);

//include functions.php phpbb script
require 'forum/includes/auth/loginuser.php';

?>

<form action="loginapp.php" method="POST">
Username:<br />
<input type="text" name="username"><p />
Password:<br />
<input type="password" name="password"><p />
<input type="submit" name="login" value="Log in">

</form>

我知道我的 .htaccess 文件可能会以某种方式阻止对 MySQL 数据库的外部访问,但我对 .htaccess 不是很熟悉...

我很确定这不是编码问题,因为当我为我的数据库输入正确的凭据时,我只会收到 500 错误。

谢谢 斯科特

【问题讨论】:

  • .htaccess 从不阻止对 MySQL 数据库的访问
  • mysql__select_db 不应该是mysql_select_db 吗?不推荐使用 mysqlimysql 函数。
  • 将错误报告添加到您打开 PHP 标记之后的文件顶部,例如 &lt;?php error_reporting(E_ALL); ini_set('display_errors', 1); 然后是其余代码,以查看它是否产生任何结果。
  • 尽量避免使用 my_sql ,使用 PDO 或 my_sqli 并且你应该在 之后立即声明 session_start()

标签: php mysql .htaccess internal-server-error


【解决方案1】:

在 .htaccess 文件中禁用 mod_security

<IfModule mod_security.c>

  SecFilterEngine Off

  SecFilterScanPOST Off

</IfModule>

注意:“mysql__select_db”应该是“mysql_select_db”

来源:

Internal Server Error on php submit with MySQL commands

How can I disable mod_security in .htaccess file?

【讨论】:

    猜你喜欢
    • 2020-04-27
    • 2011-03-16
    • 1970-01-01
    • 1970-01-01
    • 2013-11-28
    • 2020-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多