使用php和mysql 500内部服务器错误

时间:2015-07-07 03:45:44

标签: php html mysql

当我尝试打开我的PHP文件写入MySQL数据库时,我的网站一直给我500个内部服务器错误

HTML

<div id="body">
<form action="index.php" method="post" />
  <input type="text" name="usertext" />
  <input type="submit" value="Submit" />
 </form>
</div>

PHP

<?php

 define('DB_NAME', '****');
 define('DB_USER', '****');
 define('DB_PASSWORD', '****');
 define('DB_HOST', '****');

 $link = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD);

 if (!$link) {
    die('Could not connect: ' . mysqli_error());
 }

$db_selected = mysqli_select_db(DB_NAME, $link);

if (!$db_selected) {
    die('Cannot access' . DB_NAME . ': ' . mysqli_error());
}

$value = $_POST['****'];

$sql = "INSERT INTO **** (****) VALUES ('$value')";

if (!mysqli_query($sql)) {
    die('Error: ' . mysqli_error());
}

mysqli_close();
?>

我还是HTML和PHP的新手,但即使经过数小时的搜索,我也无法弄清楚我做错了什么。我的网站一直给我同样的错误。如果有帮助的话,我会使用goDaddy作为主机。

3 个答案:

答案 0 :(得分:0)

<?php

define('DB_NAME', '****');
define('DB_USER', '****');
define('DB_PASSWORD', '****');
define('DB_HOST', '****');

$link = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD);

if (!$link) {
    die('Could not connect: ' . mysqli_error($link));
}

$db_selected = mysqli_select_db($link, DB_NAME);

if (!$db_selected) {
    die('Cannot access' . DB_NAME . ': ' . mysqli_error($link));
}

$value = $_POST['****'];

$sql = "INSERT INTO **** (****) VALUES ('$value')";

if (!mysqli_query($link, $sql)) {
    die('Error: ' . mysqli_error($link));
}

mysqli_close($link);
?>

在检查错误并运行查询时,您错过了使用$ link变量的用户。每次使用mysqli_ *运行时都必须使用$ link变量/连接,因为它是连接。
mysqli_select_db也出错了,你必须首先定义连接,然后定义数据库的名称。

答案 1 :(得分:0)

还要检查你是否在php.ini中启用了mysql扩展

答案 2 :(得分:-1)

大多数500个错误都是服务器端错误。

可能有以下可能的原因:

  1. 权限错误:检查文件和文件夹的权限。在大多数情况下,对PHP和CGI脚本的错误权限是罪魁祸首。许可应设置为755。
  2. PHP超时:如果这是造成500错误的原因,超时规则或脚本中更好的错误处理应该会有所帮助。
  3. .htaccess中的错误:检查.htaccess是否结构正确。