Ошибка 500, соединение MYSQL с php

0

Я пытаюсь создать простую раскрывающуюся форму и разместить материалы в моей базе данных, чтобы потом проверить результаты.

Всякий раз, когда я отправляю форму с помощью кнопки отправки, ничего не происходит. Страница остается неизменной...

Chrome Console возвращает сообщение об ошибке 500. То, что я делаю неправильно, потому что я в настоящее время теряю его. ;-)

index.php

<!doctype html>
<html>
<head>
<meta charset="utf-8">
    <title>V1</title>
</head>

<body>

<form method="post" action="">

    <label >I'm feeling...</label>

        <select name="subject_names">
            <option value="Angry">Angry</option>
            <option value="Anxious">Anxious</option>
            <option value="Bored">Bored</option>
            <option value="Cranky">Cranky</option>
            <option value="Crappy">Crappy</option>
            <option value="Depressed">Depressed</option>
            <option value="Energetic">Energetic</option>
            <option value="Exhausted">Exhausted</option>
            <option value="Frustrated">Frustrated</option>
            <option value="Happy">Happy</option>
            <option value="Motivated">Motivated</option>
            <option value="Okay">Okay</option>
            <option value="Relaxed">Relaxed</option>
            <option value="Sad">Stressed</option>
            <option value="Lazy">Lazy</option>
        </select>

    <button type="submit" name="submit" >Submit</button>

</form>

<?php
if(isset($_POST["submit"]))
{

 //Including dbconfig file.
include 'db-connect.php';

$subjectName=$_POST["feeling"];

mysql_query("INSERT INTO thefeels VALUES ('$feeling')"); 

echo " Added Successfully ";

}

 ?>

</body>
</html>

db-connect.php:

$hostname = "localhost";

$username = "USERNAME";

$password = "PASSWORD";

$dbname = "DBNAME";

 $conn = mysql_connect($hostname, $username, $password);

 if (!$conn)

 {

 die('Could not connect: ' . mysql_error());

 }

 mysql_select_db($dbname, $conn);


?>
  • 4
    Прекратите использовать устаревший API mysql_* . Используйте mysqli_* или PDO . если вы используете php, если вы используете более новую версию php, API уже удален. Также 500 является внутренней ошибкой сервера. Посмотрите в лог-файлы сервера для получения дополнительной информации
  • 0
    Ваша первая проблема - использование функций mysql_* . Пожалуйста , не используйте mysql_* ; функции mysql_* устарели, устарели и небезопасны - они были полностью удалены из современных версий PHP (версии 7.0 и выше). Вместо этого используйте MySQLi или PDO . Кроме того, проверьте в error_log подробности об ошибке.
Показать ещё 2 комментария
Теги:
database

1 ответ

1
Лучший ответ

Вы получаете значение POST, которое не установлено:

$subjectName=$_POST["feeling"];

Вы, вероятно, хотите:

$subjectName=$_POST["subject_names"];

Однако вы должны прекратить использовать mysql_query. Он устарел и был удален в PHP7. Вместо этого используйте mysqli или PDO.

Изменение: Ошибка 500 может быть вызвана, например, неправильными правами доступа к файлам. Вы проверяли разрешения?

  • 0
    Ах да, это не правильно, но даже после внесения изменений я все равно получаю ошибку 500 ...
  • 0
    Это будет предупреждение или уведомление, а не результат 500 ошибок;
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню