mysql — обновляет данные из comboBox, используя переполнение стека

Мне нужна ваша помощь..

На своем веб-сайте я позволил сотруднику выбрать название отдела, которое он хочет, из comboBox, используя этот код

$dept_id = $_SESSION['dept_id'];
$from= "SELECT d.dept_id, d.name FROM department d LEFT JOIN employee e ON d.dept_id = e.dept_id WHERE emp_id = '$emp_id' ";
$result_form = mysql_query($from);
//$row1 = mysql_fetch_array($result_form); // get 1st result row

$dept_from = mysql_fetch_assoc($result_form);
$dept_name = $dept_from['name'];
//$row=mysql_fetch_array($result_form);
//echo    $row1['name'];

$date1=date("Y/m/d");
$dept_id = $_SESSION['dept_id'];
$query = "INSERT INTO request (`date`, `description`, `from`, `emp_id`, `to`)

VALUES

('$date1','$_POST[description]','$dept_name','$emp_id','$_POST[to]')";

работает правильно

Затем администратор выбирает запрос по идентификатору сотрудника из comboBox, когда он нажимает кнопку подтверждения, данные должны обновляться.

и это его код

if(array_key_exists('accept', $_POST)) {
$conn = mysql_connect("localhost","root","");
mysql_select_db("employee_transfare", $conn);
$emp_id=$_POST['emp_id'];
$dept_id = $_SESSION['dept_id'];
$query="UPDATE employee SET dept_id='$dept_id' WHERE emp_id= $emp_id ";

$n=mysql_query($query, $conn);

if($n==0)
echo "<h2>details already updated </h2>";
else
echo "<h2>details successfully updated</h2>";
mysql_close($conn);
}
else {

Это всегда дает детали уже обновлены …

Как я могу это сделать?

0

Решение

Это сравнение с 0 кажется немного неточным. Следующее из документации по mysql_query:

Для SELECT, SHOW, DESCRIBE, EXPLAIN и других операторов, возвращающих набор результатов, mysql_query () возвращает ресурс в случае успеха или FALSE в случае ошибки.

Для операторов SQL другого типа INSERT, UPDATE, DELETE, DROP и т. Д. Mysql_query () возвращает TRUE в случае успеха или FALSE в случае ошибки.

Вместо if ($n==0)пожалуй попробую if ($n===FALSE) или поочередно if (! $n),

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]