javascript
  • php
  • jquery
  • json
  • twitter-bootstrap
  • 2013-10-04 35 views 1 likes 
    1

    如果設置了PHP GET url,我需要觸發Bootstrap模式,但是我不知道該怎麼做。使用php觸發器切換引導模式

    的PHP代碼看起來是這樣的:

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

    後,MySQL查詢,但仍然在,如果我需要的模式來觸發。我已經考慮過json,但不知道創建自己的代碼。顯示模式的javascript是這一行:

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

    我該如何翻譯這與我的PHP觸發器一起工作?

    +0

    想想,當PHP正在處理的頁面甚至不存在,當JS加載PHP已經完成了它的工作。可能要使用AJAX,但到目前爲止工作流並不十分清楚 –

    +0

    有用的信息,這是否會在modal代碼的document.ready和括號內解決?或者我應該只是在php中設置一個JavaScript變量,並在文檔準備就緒時觸發模態觸發器(如果該變量已設置)? – justanotherhobbyist

    回答

    10

    添加一個檢查狀態的變量,

    $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;?> 
    
    +0

    謝謝,這起到了魅力。 – justanotherhobbyist

    +0

    @hustlerinc我的榮幸=)。 –

    2

    這實際上是比大多數人意識到的容易,只需使用PHP if語句將您的JS調用注入頁面:

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

    把這個php if語句放入文檔的頭部(或者如果您考慮加載時間,則爲頁腳),它會根據需要打開您的模式。

    +0

    是的,這也是我最初的想法,但是當我嘗試時它不起作用。現在感謝OP中的評論,我知道這是因爲在之前調用了jQuery,並且我在之後放入了PHP - 新手的錯誤。用正常的javascript window.onload解決它(jQuery仍然在頁腳中調用)。 – justanotherhobbyist

    +0

    是的,你將不得不將這段代碼放在Jquery加載後才能工作。 –

    相關問題