Мой список сертификатов работает нормально, за исключением двух типов сертификатов. Когда я редактирую существующий сертификат, данные после сохранения исчезают. В одном сертификате после сохранения исчезает только полное имя, а в другом после сохранения исчезают все данные. Я все перепробовал, но все равно, пожалуйста, помогите. Вот моя логика:
// EDIT EXISTING CERTIFICATE
if (isset($_POST['edit_certificate_id'])) {
$id = $_POST['edit_certificate_id'];
$type = $_POST['type'] ?? '';
$data = $_POST['certificate_data'] ?? [];
switch ($type) {
case 'baptism':
$data = [
'full_name' => $data['full_name'] ?? '',
'place_of_birth' => $data['place_of_birth'] ?? '',
'birth_date' => $data['birth_date'] ?? '',
'father' => $data['father'] ?? '',
'mother' => $data['mother'] ?? '',
'baptism_date' => $data['baptism_date'] ?? '',
'priest' => $data['priest'] ?? '',
'sponsor_1' => $data['sponsor_1'] ?? '',
'sponsor_2' => $data['sponsor_2'] ?? '',
'register_no' => $data['register_no'] ?? '',
'page' => $data['page'] ?? '',
'line' => $data['line'] ?? ''
];
break;
case 'good_moral':
$data = [
'full_name' => $data['full_name'] ?? '',
'age' => $data['age'] ?? '',
'barangay' => $data['barangay'] ?? '',
'day' => $data['day'] ?? '',
'month' => $data['month'] ?? '',
'year' => $data['year'] ?? ''
];
break;
case 'authorization':
$data = [
'child_name' => $data['child_name'] ?? '',
'origin' => $data['origin'] ?? '',
'date' => $data['date'] ?? ''
];
break;
case 'certification':
$data = [
'full_name' => $data['full_name'] ?? '',
'place_of_birth' => $data['place_of_birth'] ?? '',
'birth_date' => $data['birth_date'] ?? '',
'father' => $data['father'] ?? '',
'mother' => $data['mother'] ?? '',
'requestor' => $data['requestor'] ?? '',
'purpose' => $data['purpose'] ?? ''
];
break;
case 'marriage':
$data = [
'groom_name' => $data['groom_name'] ?? '',
'groom_age' => $data['groom_age'] ?? '',
'groom_father' => $data['groom_father'] ?? '',
'groom_mother' => $data['groom_mother'] ?? '',
'bride_name' => $data['bride_name'] ?? '',
'bride_age' => $data['bride_age'] ?? '',
'bride_father' => $data['bride_father'] ?? '',
'bride_mother' => $data['bride_mother'] ?? '',
'marriage_date' => $data['marriage_date'] ?? '',
'priest' => $data['priest'] ?? '',
'sponsor_1' => $data['sponsor_1'] ?? '',
'sponsor_2' => $data['sponsor_2'] ?? '',
'book_no' => $data['book_no'] ?? '',
'page' => $data['page'] ?? '',
'line' => $data['line'] ?? ''
];
break;
}
switch ($type) {
case 'baptism':
case 'good_moral':
case 'certification':
$full_name = $data['full_name'] ?? '';
break;
case 'authorization':
$full_name = $data['child_name'] ?? '';
break;
case 'marriage':
$groom = $data['groom_name'] ?? '';
$bride = $data['bride_name'] ?? '';
$full_name = trim("$groom & $bride");
break;
default:
$full_name = '';
break;
}
$certificate_data = json_encode($data);
$stmt = $conn->prepare("
UPDATE certificates
SET full_name = ?, certificate_data = ?, updated_at = NOW()
WHERE id = ?
");
if ($stmt->execute([$full_name, $certificate_data, $id])) {
$_SESSION['flash'] = [
'type' => 'info',
'message' => 'Certificate successfully updated!'
];
header("Location: certificates_list.php");
exit;
} else {
print_r($stmt->errorInfo());
}
}
Подробнее здесь: https://stackoverflow.com/questions/797 ... er-editing
Данные исчезают после редактирования ⇐ Php
Кемеровские программисты php общаются здесь
1761200005
Anonymous
Мой список сертификатов работает нормально, за исключением двух типов сертификатов. Когда я редактирую существующий сертификат, данные после сохранения исчезают. В одном сертификате после сохранения исчезает только полное имя, а в другом после сохранения исчезают все данные. Я все перепробовал, но все равно, пожалуйста, помогите. Вот моя логика:
// EDIT EXISTING CERTIFICATE
if (isset($_POST['edit_certificate_id'])) {
$id = $_POST['edit_certificate_id'];
$type = $_POST['type'] ?? '';
$data = $_POST['certificate_data'] ?? [];
switch ($type) {
case 'baptism':
$data = [
'full_name' => $data['full_name'] ?? '',
'place_of_birth' => $data['place_of_birth'] ?? '',
'birth_date' => $data['birth_date'] ?? '',
'father' => $data['father'] ?? '',
'mother' => $data['mother'] ?? '',
'baptism_date' => $data['baptism_date'] ?? '',
'priest' => $data['priest'] ?? '',
'sponsor_1' => $data['sponsor_1'] ?? '',
'sponsor_2' => $data['sponsor_2'] ?? '',
'register_no' => $data['register_no'] ?? '',
'page' => $data['page'] ?? '',
'line' => $data['line'] ?? ''
];
break;
case 'good_moral':
$data = [
'full_name' => $data['full_name'] ?? '',
'age' => $data['age'] ?? '',
'barangay' => $data['barangay'] ?? '',
'day' => $data['day'] ?? '',
'month' => $data['month'] ?? '',
'year' => $data['year'] ?? ''
];
break;
case 'authorization':
$data = [
'child_name' => $data['child_name'] ?? '',
'origin' => $data['origin'] ?? '',
'date' => $data['date'] ?? ''
];
break;
case 'certification':
$data = [
'full_name' => $data['full_name'] ?? '',
'place_of_birth' => $data['place_of_birth'] ?? '',
'birth_date' => $data['birth_date'] ?? '',
'father' => $data['father'] ?? '',
'mother' => $data['mother'] ?? '',
'requestor' => $data['requestor'] ?? '',
'purpose' => $data['purpose'] ?? ''
];
break;
case 'marriage':
$data = [
'groom_name' => $data['groom_name'] ?? '',
'groom_age' => $data['groom_age'] ?? '',
'groom_father' => $data['groom_father'] ?? '',
'groom_mother' => $data['groom_mother'] ?? '',
'bride_name' => $data['bride_name'] ?? '',
'bride_age' => $data['bride_age'] ?? '',
'bride_father' => $data['bride_father'] ?? '',
'bride_mother' => $data['bride_mother'] ?? '',
'marriage_date' => $data['marriage_date'] ?? '',
'priest' => $data['priest'] ?? '',
'sponsor_1' => $data['sponsor_1'] ?? '',
'sponsor_2' => $data['sponsor_2'] ?? '',
'book_no' => $data['book_no'] ?? '',
'page' => $data['page'] ?? '',
'line' => $data['line'] ?? ''
];
break;
}
switch ($type) {
case 'baptism':
case 'good_moral':
case 'certification':
$full_name = $data['full_name'] ?? '';
break;
case 'authorization':
$full_name = $data['child_name'] ?? '';
break;
case 'marriage':
$groom = $data['groom_name'] ?? '';
$bride = $data['bride_name'] ?? '';
$full_name = trim("$groom & $bride");
break;
default:
$full_name = '';
break;
}
$certificate_data = json_encode($data);
$stmt = $conn->prepare("
UPDATE certificates
SET full_name = ?, certificate_data = ?, updated_at = NOW()
WHERE id = ?
");
if ($stmt->execute([$full_name, $certificate_data, $id])) {
$_SESSION['flash'] = [
'type' => 'info',
'message' => 'Certificate successfully updated!'
];
header("Location: certificates_list.php");
exit;
} else {
print_r($stmt->errorInfo());
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79797407/data-disappears-after-editing[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия