PHP и модальное окно Bootstrap

Тема в разделе "Как сделать...", создана пользователем WOLF_2010, 8 май 2015.

  1. WOLF_2010

    WOLF_2010 Постоялец

    Заблокирован
    Регистр.:
    8 окт 2011
    Сообщения:
    86
    Симпатии:
    109
    PHP код

    PHP:
    if (isset($_SESSION['uid'])) {
        require 
    "includes/smarty/Smarty.class.php";
        
    $smarty = new Smarty();
        
    $smarty->template_dir "templates/" $whmcs->get_sys_tpl_name() . "/";
        
    $smarty->compile_dir $templates_compiledir;
        
    $smarty->assign("template"$whmcs->get_sys_tpl_name());
        
    $smarty->assign("LANG"$_LANG);
        
    $smarty->assign("logo"$CONFIG['LogoURL']);
        
    $smarty->assign("companyname"$CONFIG['CompanyName']);
        
    $id $whmcs->get_req_var("id");
        
    $result select_query("tblemails""", array("id" => $id"userid" => $_SESSION['uid']));
        
    $data mysql_fetch_array($result);
        
    $date $data['date'];
        
    $subject $data['subject'];
        
    $message $data['message'];
        
    $date fromMySQLDate($date"time");
        
    $smarty->assign("date"$date);
        
    $smarty->assign("subject"$subject);
        
    $smarty->assign("message"$message);
        
    $template_output $smarty->fetch("mail.tpl");
        echo 
    $template_output;
        return 
    1;
    }
    есть кнопка модального окна
    PHP:
    <a data-toggle="modal" data-target="#myModal"
    onclick="('mail.php?id={$email.id}')">
    сама форма модального окна

    PHP:
    <!-- Modal -->
    <
    div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="false">
      <
    div class="modal-dialog">
        <
    div class="modal-content">
          <
    div class="modal-header">
            <
    button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="false">&times;</span></button>
            <
    h4 class="modal-title" id="myModalLabel">{$subject}</h4>
          </
    div>
          <
    div class="modal-body">{$message}</div>
          <
    div class="modal-footer">
            <
    button type="button" class="btn btn-primary" data-dismiss="modal">Закрыть</button>
          </
    div>
        </
    div>
      </
    div>
    </
    div>
    ребят окно модальное открывается, ну оно пустое, переменные {$subject} и {$message} не выводятся из бд, решил проверить в индекс строке ввел site.ru/mail.php?id=82, сайт вывел информацию из {$subject} и {$message} (код рабочий)
    А в модальном окне пусто, что ещё нужно дописать чтоб в модальное окно вывелось сообщения {$subject} и {$message}?
     
    wolf777 нравится это.
  2. WOLF_2010

    WOLF_2010 Постоялец

    Заблокирован
    Регистр.:
    8 окт 2011
    Сообщения:
    86
    Симпатии:
    109
    неужели никто не знает?
     
    wolf777 нравится это.
  3. WOLF_2010

    WOLF_2010 Постоялец

    Заблокирован
    Регистр.:
    8 окт 2011
    Сообщения:
    86
    Симпатии:
    109
    просто информацию в модальное окно никто не может вывести, если она в переменных PHP?
     
    wolf777 нравится это.
  4. nejtr0n

    nejtr0n Постоялец

    Регистр.:
    24 янв 2014
    Сообщения:
    118
    Симпатии:
    62
    var_dump($email.id) из скрипта
     
  5. Aglok

    Aglok ∞³

    Регистр.:
    9 янв 2012
    Сообщения:
    162
    Симпатии:
    46
    У тебя проблема в том что smarty парсер срабатывает до того, как ты отправляешь запрос в БД через GET, поэтому переменные пустые. Тебе нужно получать данные $subject и $message по AJAX, и вставлять их уже в модальное окно, после чего запускать модальное окно.
     
    WOLF_2010 нравится это.
  6. invader

    invader Серый кардинал в отставке :)

    Moderator
    • Супермодератор
    Регистр.:
    3 апр 2006
    Сообщения:
    2.760
    Симпатии:
    5.763
    Либо ифрейм использовать.
    Код:
    <div class="modal-body">
    <iframe src="URL к PHP" width="100%" height="350" scrolling="auto" frameborder="0"></iframe>
    </div>
     
  7. WOLF_2010

    WOLF_2010 Постоялец

    Заблокирован
    Регистр.:
    8 окт 2011
    Сообщения:
    86
    Симпатии:
    109
    решил вывести в шаблонизатор tpl, ещё такие строчки, чтоб проверить выведит ли название сайте и ссылку сайта

    PHP:
            <p><strong>Тема:</strong> {$companyname} {$logoURL} - {$subject}</p>

    ну почему то когда я открываю стандартным окном popupWindow, то у меня все выводится, а в модальное окно не выводится
    тсссссссссс.png
     
    Последнее редактирование: 10 май 2015
    wolf777 нравится это.
  8. WOLF_2010

    WOLF_2010 Постоялец

    Заблокирован
    Регистр.:
    8 окт 2011
    Сообщения:
    86
    Симпатии:
    109
    PHP:
    var_dump($email.id)
    - проверил так,
    вот так вывело, как видно на скриншоте в окно popupWindow, не вывелось $subject и $message

    аааффывфв.png
     
    wolf777 нравится это.
  9. WOLF_2010

    WOLF_2010 Постоялец

    Заблокирован
    Регистр.:
    8 окт 2011
    Сообщения:
    86
    Симпатии:
    109
    подскажите пожалуйста как получить эти данные по AJAX?
     
    Последнее редактирование: 10 май 2015
    wolf777 нравится это.
  10. WOLF_2010

    WOLF_2010 Постоялец

    Заблокирован
    Регистр.:
    8 окт 2011
    Сообщения:
    86
    Симпатии:
    109
    сделал так, вот кнопка сама

    PHP:
    <a data-toggle="modal" data-target="#myModal"
    onclick="send('id={$email.id}')">
    вот AJAX

    PHP:
    function send(dataToSend)
    {
           $.
    ajax({
                    
    type"GET",
                    
    url"mail.php?"+dataToSend,
                    
    data: $("#myModal").serialize(),
                    
    success: function(response) {
                            
    alert (response);  //просто так, для отладки
                            
    $("#subject").html(response[0]);
                            $(
    "#message").html(response[1]);
                            $(
    "#myModalLabel").show();
                    }
            });
    }
    ну в alert выдает лог

    PHP:
    <!DOCTYPE html>
    <
    html lang="en">
    <
    head>
    <
    meta charset="utf-8">
    <
    title>Моя почта Relevate</title>
    </
    head>

    <!-- 
    Modal -->
    <
    div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="false">
    <
    div class="modal-dialog">
    <
    div class="modal-content">
    <
    div class="modal-header">
    <
    button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="false">&times;</span></button>
    <
    h4 class="modal-title" id="myModalLabel">
    <
    p><strong>Пользователь:</strong></p>
    <
    p><strong>Тема:</strongRelevate http://whmcs.su - Your login details for Relevate</p>
    <p><strong>от кого:</strong></p>
    <
    p><strong>Кому:</strong></p>
    </
    h4>
    </
    div>
    <
    div class="modal-body"><style>
    body,td font-familyverdanafont-size11pxfont-weightnormal; }
    color#0000ff; }
    </style>
    <
    p><a href="http://www.yourdomain.com" target="_blank"><img src="" alt="Relevate" border="0" /></a></p>
    <
    p>Dear admin admin (моя компания),</p><p>Recently a request was submitted to reset your password for our client area. If you did not request thisplease ignore this emailIt will expire and become useless in 2 hours time.</p><p>To reset your passwordplease visit the url below:<br /><a href="http://whmcs.su/pwreset.php?key=c039da38b1e1f959fe415f22df615681">http://whmcs.su/pwreset.php?key=c039da38b1e1f959fe415f22df615681</a></p><p>When you visit the link above, your password will be reset, and the new password will be emailed to you.</p><p>Signature goes here...</p></div>
    <div class="modal-footer">
    <
    button type="button" class="btn btn-primary" data-dismiss="modal">Закрыть</button>
    </
    div>
    </
    div>
    </
    div>
    </
    div>

    </
    html>
    а в модальное окно ничего не выводит, в чем может быть проблема?
     
    wolf777 нравится это.