php 小白,想實現將 file_get_content() 讀到的常值內容,顯示在 bootstrap 的 模態框中,不懂怎麼實現。
先說下,發帖前已經自己google百度了,沒解決。最後聚焦在,如何點擊 查看 這個按鈕以後,將這個參數 $p(其中$p = ../web/test.php) 傳給 file_get_contment()後,再由 file_get_content() 返回的內容傳給 模態框裡面顯示 。
點擊這裡的按鈕,然後在模態框中查看
新人,知道代碼有許多不規範,勿噴
回複討論(解決方案)
請使用ajax:因為.php檔案在Apache或者nginx進行解釋的時候,會把裡面的進行解釋,然後翻譯成一個html檔案,輸送到瀏覽器,使用者在用戶端點擊button去觸發file_get_contents是不可能的,除非你之前已經把file_get_contents的內容擷取到了並且隱藏(display:none;),然後點擊button再display:block;或者點擊button的時候,發送ajax請求去擷取file_get_contents的內容展示,當然重新整理頁面也可以。
請使用ajax:因為.php檔案在Apache或者nginx進行解釋的時候,會把裡面的進行解釋,然後翻譯成一個html檔案,輸送到瀏覽器,使用者在用戶端點擊button去觸發file_get_contents是不可能的,除非你之前已經把file_get_contents的內容擷取到了並且隱藏(display:none;),然後點擊button再display:block;或者點擊button的時候,發送ajax請求去擷取file_get_contents的內容展示,當然重新整理頁面也可以。
在發帖前,試過ajax,把$p = "../web/index.php" 這個帶路徑檔案名稱,傳到後台後,用file_get_content()得到的內容,是否用 Json格式返回,之前試用,用json格式返回,沒成功。所以問題在兩點 ;
在後台中 返回
echo json_decode(file_get_content($p));
前台,ajax 設定dataType:'json'
也試過,沒成
以上,感謝你的回答
這與 file_get_content() 沒有直接的關係
1、既然頁面使用的是 bootStrap,那麼他就是用 ajax 與 服務端 交換資訊的
你可將他發出去的內容直接返回,從而判定 bootStrap 中是否正常
2、判定 file_get_content() 結果是否正常
echo file_get_content(提交的路徑)
只需在 php 中類比實現就可以,與用戶端無關
3、只在上兩個檢查都正確無誤時,還需要檢查資料格式是否正確
file_get_contents只是擷取資料,但最後是需要js把擷取的資料放入bootstrap。所以與file_get_contents無關。
應該看看返回的內容。
file_get_contents只是擷取資料,但最後是需要js把擷取的資料放入bootstrap。所以與file_get_contents無關。
應該看看返回的內容。
碰到個奇怪的小問題,ajax返回資料後,alert能顯示出來,要是放在input標籤裡面,也有值,但是放在 div標籤裡面就不行了,不複雜,就幾行代碼,但是不懂為什麼 div 的就不能顯示內容
這是背景
這是javascipt的函數
這是模態框裡面的寫法
這是運行結果
想知道,為什麼 div 不能顯示 ajax返回的內容
file_get_contents只是擷取資料,但最後是需要js把擷取的資料放入bootstrap。所以與file_get_contents無關。
應該看看返回的內容。
這與 file_get_content() 沒有直接的關係
1、既然頁面使用的是 bootStrap,那麼他就是用 ajax 與 服務端 交換資訊的
你可將他發出去的內容直接返回,從而判定 bootStrap 中是否正常
2、判定 file_get_content() 結果是否正常
echo file_get_content(提交的路徑)
只需在 php 中類比實現就可以,與用戶端無關
3、只在上兩個檢查都正確無誤時,還需要檢查資料格式是否正確
看下5樓的一個小問題,ajax返回的資料不能顯示,非常感謝
請使用ajax:因為.php檔案在Apache或者nginx進行解釋的時候,會把裡面的進行解釋,然後翻譯成一個html檔案,輸送到瀏覽器,使用者在用戶端點擊button去觸發file_get_contents是不可能的,除非你之前已經把file_get_contents的內容擷取到了並且隱藏(display:none;),然後點擊button再display:block;或者點擊button的時候,發送ajax請求去擷取file_get_contents的內容展示,當然重新整理頁面也可以。
在繼續進行的過程中,碰到一個小問題,在5樓,幫看下,非常感謝
因為從後台返回過來的是json資料啊,你用了$.ajax,而且指定了資料類型為json,當然會被解析為json對象。沒錯,是json對象,而不是字串。
所以你要麼改變指定的資料類型dataType:text或者dataType:html
要麼把資料變為json字串
JSON.stringify(msg)
你擷取到的資料是 php 代碼,用文本方式才能顯示
否則瀏覽器會把
php代碼要放入 中,否則作為html代碼是不會解析的。
做個總結,在後台返回資料,是json格式,在模態框裡面,用 textarea這個標籤就可以顯示了。
感謝樓上的各位