【问题标题】:Toggle Bootstrap modal with php trigger使用 php 触发器切换 Bootstrap 模式
【发布时间】:2013-10-11 05:50:32
【问题描述】:

如果设置了 PHP GET url,我需要触发 Bootstrap 模式,但我不知道该怎么做。

PHP 代码如下所示:

<?php
if ($_GET['activate']) {
$activate = $_GET['activate'];
    mysql_query("UPDATE `users` SET `active` = 1 WHERE `email_code` = '$activate'");
}
?>

在 mysql 查询之后,但仍然在 if 我需要模态来触发。我考虑过 json,但对创建自己的代码知之甚少。显示模态的 javascript 是这一行:

$('#myModal').modal('show')

如何将其翻译为与我的 PHP 触发器一起使用?

【问题讨论】:

  • 考虑到当 php 被处理时页面甚至不存在,而当 JS 被加载时 PHP 已经完成了它的工作。可能想为此使用 AJAX,但目前工作流程还不是很清楚
  • 很高兴知道,这会用 document.ready 和模态代码周围的括号来解决吗?或者我应该在 php 中设置一个 javascript 变量,如果设置了该变量,则准备好文档上的模式触发器?

标签: javascript php jquery json twitter-bootstrap


【解决方案1】:

添加一个检查状态的变量,

$show_modal = false;

并在你的设置中将其设置为 true,

if ($_GET['activate']) {
    $activate = $_GET['activate'];
    mysql_query("UPDATE `users` SET `active` = 1 WHERE `email_code` = '$activate'");
    $show_modal = true;
}

现在在您的 html 中:

<?php if($show_modal):?>
  <script> $('#myModal').modal('show');</script>
<?php endif;?>

【讨论】:

  • @hustlerinc 我的荣幸 =)。
【解决方案2】:

这实际上比大多数人意识到的要容易,只需使用 PHP if 语句将您的 JS 调用注入页面:

<?php if (($_GET['activate'])) { ?>
    <script type="text/javascript"> $('#myModal').modal('show'); </script>
<?php } ?>

将此 php if 语句放入文档的头部(或页脚,如果您考虑加载时间),它将根据需要打开您的模式。

【讨论】:

  • 是的,这也是我最初的想法,但是当我尝试时它并没有奏效。现在感谢 OP 中的评论,我知道这是因为 jQuery 在
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多