Открытие .html с помощью window.location

Я пишу простую страницу входа в Ajax + Jquery У меня ошибка при нажатии на кнопку. И я не понимаю, почему.

Uncaught SyntaxError: Unexpected end of input

На этой линии echo '<input type = "button" value = "connexion" OnClick = "window.location.assign("http://localhost/loginmap/members/success.html")>';

Вот мой код

<?php 
session_start();
//si le user a un session de ouverte
    /*if (isset($_SESSION['connecté'])){
        header('Location : success.html');
        die();
    }*/
    if (isset($_POST['login'])) {
        $connection = new mysqli('localhost','root','','monumap');

        $email = $connection->real_escape_string($_POST['emailPHP']); 
        $password = $connection->real_escape_string($_POST['passwordPHP']); 

        $data = $connection->query("SELECT id FROM users WHERE email = '$email' AND password = '$password'"); 
        if ($data->num_rows >= 0) {//tout et ok -> connexion
            $_SESSION['connecté'] = '1';
            //$_SESSION['email'] = $email;
            header('Location:'.$_SESSION['redirectURL']);
            exit('<font color = "green">Connexion reussi...</font>');
        }else{
            exit('<font color = "red">Le Mot de passe / Email est inconnue </font>');
        }
    
        //exit($email . " = " . $password);
    } 
?> 


<html> 
    <head> 
        <title>Monumap Connexion</title> 
    </head> 
    <body> 
        <form method = "post" action = "login.php">
            <input type = "text" id = "email" placeholder = "Email..."><br> 
            <input type = "password" id = "password" placeholder = "Mot de passe..."><br> 
            <input type = "submit" value = "Log In" id = "login"> 
        </form> 
    
        <p id = "reponse"></p>

        <div class = "Bouton">
            <?php if ($_SESSION['connecté']==1){
                
                echo '<input type = "button" value = "connexion" OnClick = "window.location.assign("http://localhost/loginmap/members/success.html")>';
            }
            ?>
        </div>

        <script src = "https://code.jquery.com/jquery-3.6.0.min.js" integrity = "sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4 = " crossorigin = "anonymous"></script>
        <script type = "text/javascript"> 
            $(document).ready(function () {
                $("#login").on('click', function () { 
                    var email = $("#email").val(); 
                    var password = $("#password").val(); 

                    if (email == "" || password == "") 
                        alert('vos inputs sont vides'); 
                    
                    else { 
                        $.ajax(
                            {
                                url: 'login.php',
                                method: 'POST', 
                                data: { 
                                    login: 1, 
                                    emailPHP: email, 
                                    passwordPHP: password 
                                },
                                success: function (reponse) {
                                    $("#reponse").html(reponse);
                                },
                                    dataType: 'text'
                            }
                        );
                    }
                });
            });
        </script>
    </body>
</html>

Позаботьтесь об открытии и закрытии котировок. Вы никогда не заканчиваете свой onclick. И используйте экранированные одинарные кавычки вокруг URL-адреса

brombeer 20.03.2022 17:17

О, я вижу echo '<input type = "button" value = "connexion" OnClick = "window.location.assign('http://localhost/loginmap/m‌​embers/success.html'‌​)">'; Я пишу это, но все равно получаю ту же ошибку в той же строке @brombeer

Kazé 20.03.2022 17:24
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
2
30
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий
echo '<input type = "button" value = "connexion" onclick = "window.location.assign('."'http://localhost/loginmap/members/success.html'".');")/>';

Это потому, что вы написали символ цитаты.

Вы также можете использовать этот способ.

echo '<input type = "button" value = "connexion" onclick = "func()"/>';
?>

<script>
    function func(){
        window.location.assign("http://localhost/loginmap/members/success.html");
    }
</script>

Другие вопросы по теме