#javascript #php #jquery #bootstrap-modal
#javascript #php #jquery #bootstrap-модальный
Вопрос:
У меня есть модальность для входа пользователя в систему, и я хотел бы автоматически отображать ее на специальных страницах, если пользователь не вошел в систему. Модальный файл хранится во внешнем файле (modal_sign_in.php ), чтобы я мог вызывать его с разных страниц.
Код ссылки в строке меню:
<a href="" id="modal_sign_in" data-modal-external-file="modal_sign_in.php"
data-target="modal_sign_in" class="promoted">Login Modal</a>
Как я могу отобразить модальность с любой страницы при проверке загрузки, если пользователь вошел в систему?
if ( $_SESSION['logged_in'] != 1 ) {
??????
exit();
}
Комментарии:
1. Кажется, вы на правильном пути, но что это
??????
такое и почемуexit()
вы это делаете?2. ?????? заключается в том, чтобы выразить, что это та часть, в которой я застрял
Ответ №1:
Вы просто включаете этот внешний файл туда :
if ( isset($_SESSION['logged_in']) {
if ( $_SESSION['logged_in'] != 1 ) {
include("modal.php");
}
}
Если модальность не запускается автоматически, вам нужно будет запустить ее с помощью javascript. Создайте кнопку, измените видимость на скрытую, затем подключите этот btn к модальному, а затем запустите щелчок.
if ( $_SESSION['logged_in'] != 1 ) {
include("modal.php");
echo "<script> $( '#yourbtnid' ).trigger( 'click' ); </script> ";
}
Комментарии:
1. Я включил файл и подключил кнопку к модальному. ‘<button style=»visible:hidden» id=»btn_login»></button>’; <script> $(‘#btn_login’).click(function() { $(‘#modal_sign_in’).modal(‘show’); }); </script>` Каким-то образом модальный всегда отображается поверх страницы, а не как модальный. Есть идеи по этому поводу?
2. @Beji Скорее всего, потому что вы загружаете модальный файл перед загрузкой стилей и javascript, убедитесь, что вы загрузили его внутри тега <body>