У меня возникли проблемы с вложением данных в базу данных, которую я создал с помощью cpanel
. Я получаю сообщение об ошибке, когда я пытаюсь отправить свою форму.Ошибка обновления базы данных - Cpanel PHP
Я создал эту форму в html
:
<form action="employees.php" method="post">
<div>
<div >
<label for="inputFN">FIRST NAME</label>
<input type="text" name="inputFN"/>
</div>
<div >
<label for="inputLN">LAST NAME</label>
<input type="text" name="inputLN"/>
</div>
<div>
<label for="inputTitle">TITLE</label>
<br />
<div>
<select name="title_select_container">
<option value="Select">-- * SELECT * --</option>
<option value="Operator">Operator</option>
<option value="Manager">Manager</option>
<option value="Contractor">Contractor</option>
<option value="Worker">Worker</option>
<option value="none">NO LONGER EMPLOYED</option>
</select>
</div>
</div>
<div>
<label for="jobCode">JOB CODE</label>
<br />
<div>
<select name="jobCode_select_container">
<option value="Select">-- * SELECT * --</option>
<option value="141802">141802BENT</option>
<option value="141803B">141803BENT</option>
<option value="141904Z">141904ZOO</option>
<option value="142405T">142405TEK</option>
<option value="NEW">--NEW--</option>
</select>
<input type="text" id="newJobCode"/>
<input type="button" id="btnNewJobCode" value="Add"/>
</div>
<script>
$(document).ready(function() {
$('#newJobCode').hide();
$('#btnNewJobCode').hide();
$("#jobCode_select_container").change(function() {
var val = $(this).val();
if (val == 'NEW') {
$('#newJobCode').show();
$('#btnNewJobCode').show();
} else {
$('#newJobCode').hide();
$('#btnNewJobCode').hide();
}
}).change();
});
</script>
</div>
<div>
<label for="lblActivity">Activity</label>
<br />
<div>
<select name="activity_select_container">
<option value="Select">-- * SELECT * --</option>
<option value="W">Working</option>
<option value="I">Inactive</option>
</select>
</div>
</div>
<input type="submit"></form>
И это мой php
файл справиться с этим:
<?php
mysql_connect('localhost', 'user', 'pass') or die(mysql_error());
mysql_select_db('a_db') or die(mysql_error());
// escape variables for security
$firstname = mysql_real_escape_string($_POST['inputFN']);
$lastname = mysql_real_escape_string($_POST['inputLN']);
$title = mysql_real_escape_string($_POST['title_select_container']);
$jobCode = mysql_real_escape_string($_POST['jobCode_select_container']);
$activity = mysql_real_escape_string($_POST['activity_select_container']);
$query="INSERT INTO tblEmployees (empFirstName, empLastName, empTitle ,jobCode, empActivity) VALUES ('$firstname', '$lastname', '$title', '$jobCode', '$activity');";
mysql_query($query) or die('Error updating database');
echo "Database Updated With: " .$firstname. " ".$lastname." ".$title." ".$jobCode." ".$activity ;
?>
И это, как моя таблица создана :
Я считаю, что что-то может быть неправильным с моим оператором insert
, но я не могу сказать, что это такое, потому что я следую тому же синтаксису на других страницах (с формами без выпадающих списков select
), и все обрабатывается отлично.
Я также хочу быть в состоянии представить эти данные на table
на самой веб-странице. Но я не могу этого сделать, если не могу вставить данные.
Update: Использование @ Fred-II- «s отчетности предложение, линии которых идет речь, они в php
:
$title=mysql_real_escape_string($_POST['title_select_container']);
$jobCode=mysql_real_escape_string($_POST['jobCode_select_container']);
$activity=mysql_real_escape_string($_POST['activity_select_container']);
Ошибка:
Undefined index: title_select_container in employees.php
Undefined index: jobCode_select_container in employees.php
Undefined index: activity_select_container in employees.php
Я думал select
элемент - это «управление формой и может использоваться в форме для сбора пользовательского ввода», поэтому почему он не может получить значения?
Вы не обрабатываете свои столбцы как столбцы в '('empFirstName', 'empLastName', ...' удаляете кавычки или используете обратные ссылки. Кроме того, вам может потребоваться использовать цитаты вокруг '$ jobCode, $ activity', так как они' VARCHAR'. Добавить отчет об ошибках в начало вашего файла (ов) 'error_reporting (E_ALL); ini_set ('display_errors', 1); ' –
Кроме того, вам нужна точка с запятой в конце инструкции' INSERT'. –
@ Fred-ii- Я пробовал эти изменения, и проблема не устранена. Я вставляю этот 'error_reporting' в' php'? – justinternio