2015-10-19 3 views
-1

Я написал функцию для обновления записи. Форма отображается со всеми правильными данными, но после редактирования данных и отправки формы функция isset не работает, и запись не обновляется. Нужна небольшая помощь. Благодарю.Isset check для отправки формы не работает

/* функция для редактирования сотрудника */

function emp_edit() 
} 
global $link; 
$employeeid = $_GET['id']; 
$query = "SELECT * FROM employees where employeeid='$employeeid'"; 
$result = mysqli_query($link, $query); 
$row = mysqli_fetch_assoc($result); 
$fname = $row['fname']; 
$lname = $row['lname']; 
$email = $row['email']; 
$zip = $row['zip']; 
print "<h3>Edit Employee Record</h3>";   
print "<form method='post' action='emp_maintenance.php'> 
<br><input type='hidden' name='employeeid' value='$employeeid'> 
<br><input type='text' name='fname' value='$fname'> First Name<br> 
<br><input type='text' name='lname' value='$lname'> Last Name<br> 
<br><input type='text' name='email' value='$email'> Email<br> 
<br><input type='text' name='zip' value='$zip'> Zip Code<br> 
<br><input type='submit' name='edit3' value='Update'><br> 
</form>"; 
if(isset($_POST['edit3'])) 
{ 
$fname = $_POST['fname']; 
$lname = $_POST['lname']; 
$email = $_POST['email']; 
$zip = $_POST['zip']; 
$query = "UPDATE employees SET fname='$fname', lname='$lname', email                = '$email', zip = '$zip' WHERE employeeid = '$employeeid'"; 
mysqli_query($link, $query); 
} 
} 
+1

'function emp_edit() }' - это вряд ли «реальный» сценарий .... – VolkerK

+0

функция должна быть открыта перед закрытием. в вашем скрипте вы не открываете функцию, и вы объявляете $ link; который может быть нулевым при попытке выполнить запрос mysql –

ответ

0

Ну как вы уже узнать, что вам нужно использовать открывающиеся скобки InstEd из закрывающих них. Один oteh думаю, что я хотел бы порекомендовать, что после условия isset вы используете функцию php is_empty ("filed"). Причина этого в том, что когда кто-то обновляет форму, еще одно поле может остаться черным, и в этом случае вы «удаляете» данные при перезаписывании значения в таблице с пустой строкой.

Смежные вопросы