После подачи формы 404 ошибка в WordPressPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 После подачи формы 404 ошибка в WordPress

Сообщение Anonymous »

Привет, я создал код функции формы внутри функции темы.function custom_counsellor_registration_form() {
ob_start();
$form_action = esc_url(trailingslashit(get_permalink()));
error_log('Counsellor Form Action URL: ' . $form_action);

if (isset($_POST['counsellor_registration_submit'])) {
error_log('Counsellor Form Submitted. POST Data: ' . print_r($_POST, true));
$name = sanitize_text_field($_POST['name']);
$designation = sanitize_text_field($_POST['designation']);
$qualification = sanitize_text_field($_POST['qualification']);
$time_slots = isset($_POST['time_slots']) ? array_map('sanitize_text_field', $_POST['time_slots']) : array();
$specification = sanitize_textarea_field($_POST['specification']);
$username = sanitize_text_field($_POST['username']);
$email = sanitize_email($_POST['email']);
$password = $_POST['password'];
$agreement = isset($_POST['agreement']) ? 1 : 0;

$errors = [];
if (empty($username) || empty($email) || empty($password)) {
$errors[] = "Username, email, and password are required.";
}
if (!is_email($email)) {
$errors[] = "Please enter a valid email address.";
}
if (strlen($password) < 6) {
$errors[] = "Password must be at least 6 characters long.";
}

if (empty($errors) && $agreement) {
$user_id = wp_create_user($username, $password, $email);
if (!is_wp_error($user_id)) {
wp_update_user(array('ID' => $user_id, 'role' => 'counsellor'));
update_user_meta($user_id, 'name', $name);
update_user_meta($user_id, 'designation', $designation);
update_user_meta($user_id, 'qualification', $qualification);
update_user_meta($user_id, 'time_slots', $time_slots);
update_user_meta($user_id, 'specification', $specification);
wp_redirect(wp_login_url() . '?registration=success');
exit;
} else {
error_log('Counsellor Registration Error: ' . $user_id->get_error_message());
$errors[] = $user_id->get_error_message();
}
}

if (!empty($errors)) {
echo '';
foreach ($errors as $error) {
echo '
' . esc_html($error) . '
';
}
echo '';
} else if (!$agreement) {
echo '
Please agree to the terms to proceed.
';
}
}
?>

Counsellor Registration


Name:



Подробнее здесь: https://stackoverflow.com/questions/795 ... -wordpress
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»