2015-05-08 18 views
2

我有一些PHP腳本,當提交一個簡單的2文本字段表單時被調用。我試圖在PHP的頁面上「創建」一個快餐欄,讓用戶知道他們的鏈接已成功發送,但它似乎並沒有工作。從PHP創建一個JavaScript Snackbar

我知道小吃店工作正常,因爲我已經在加載頁面內創建它們來測試它們。 php腳本每次都會發送電子郵件,所以這裏也沒有問題。

這裏是我的PHP代碼:

<?php 
$name = $_POST['txtname']; 
$link = $_POST['txtlink']; 

// EMAIL STRUCTURE 
$from = 'Banner Mastering'; 
$to = '[email protected]'; 
$subject = "BannerMastering: You have a new download from $name"; 
$body ="From: $name\nDownload Link: $link"; 

//SEND EMAIL 
if (mail ($to, $subject, $body, $from)) { 
    echo '<script> 
     $(function() { 
      $.snackbar({content: "Your download link has been sent, thanks!", timeout: 10000}); 
     }); 
    </script>'; 


} 
header("Location: http://www.bannermastering.co.uk/upload.html"); 
exit(); 
?> 

我使用的小吃吧JS:https://github.com/FezVrasta/snackbarjs 這裏是我的網頁上下文:http://www.bannermastering.co.uk/upload.html

任何幫助將不勝感激,謝謝!

+0

您試圖將位置標題(瀏覽器重定向)與內容混合在一起,您的重定向必須由_JavaScript_完成,並且您需要提供完整文檔(除非您通過ajax執行此操作)。此外,你不應該在內容後發送頭,是不是在PHP中引發錯誤? –

+0

更何況你不能在設置標題之前輸出任何內容 – charlietfl

+0

爲回覆傢伙們歡呼!我不確定你的意思是提供一個完整的文檔,但是我試圖像現在這樣在JavaScript中移動我的重定向。我已經嘗試過使用'window.location.replace'和.href方法,但似乎都沒有工作,任何更多的幫助將是偉大的! '如果(郵件($到,$主題,$體,從$)){ 回波' <腳本類型= \ 「文本/ JavaScript的\」> $(函數(){ \t $ .snackbar( {content:「您的下載鏈接已發送,謝謝!」,timeout:10000}); }); \t window.location.replace(「http://www.bannermastering.co.uk/upload.html」); '; } ?>' –

回答

0

嘗試和實例:

$(function() { 
    $.snackbar({content: "Your download link has been sent, thanks!", timeout: 10000}); 
}); 

的功能做好準備的頁面加載到被調用,這樣它在DOM,則有回調觸發它。

+0

@pang謝謝:) – developernator