我正在使用 PHP 構建一個應用程序,其邏輯如下:打開兩個文件。一個文件值來顯示菜單,回顯到瀏覽器中。如果我們單擊任何菜單,需要打開一個包含第二個文件的值的模式。我只是用 while 循環進行迭代。問題是...第一個文件中的菜單正在回顯。但是,該模式僅適用于最后一個菜單。當我檢查時,會創建菜單和模式。 https://postimg.cc/crQ8JCr5 - 檢查屏幕截圖$myfile1 = fopen("fisrt-file.dat", "r") or die("Unable to open file!");$myfile2 = fopen("Second-file.dat", "r") or die("Unable to open file!");while(!feof($myfile1)) { $fistFile = fgets($myfile1); $seconfFile = fgets($myfile2); echo "<div class='one-by-three1'><div class='course-card1' data-toggle='modal' data-target='#".$seconfFile."'><p class='e-c-head'>".$fistFile."</p></div></div>"; echo "<div class='modal fade' id='".$seconfFile."' tabindex='-1' role='dialog' aria-labelledby='exampleModalCenterTitle' aria-hidden='true'> <div class='modal-dialog modal-dialog-centered' role='document'> <div class='modal-content'> <div class='modal-header'> <h5 class='modal-title' id='exampleModalLongTitle'>".$fistFile."</h5> <button type='button' class='close' data-dismiss='modal' aria-label='Close'> <span aria-hidden='true'>×</span> </button> </div> <div class='modal-body'> <p>Second file element</p> </div> <div class='modal-footer'> <button type='button' class='btn btn-secondary' data-dismiss='modal'>Close</button> </div> </div> </div> </div>"; }fclose($myfile1);fclose($myfile2);我使用引導模態。菜單將數據目標作為第二個文件值傳遞。
1 回答

牧羊人nacy
TA貢獻1862條經驗 獲得超7個贊
我看到您已更改為使用手風琴,但正要告訴您它不起作用的原因,所以我會繼續,以防它對其他人有幫助。
原因是 fgets 讀取包含換行符的行。因此,分配給模態的 ID 包含換行符,但最后一行除外,文件中沒有換行符,因此它可以工作。
為了使它工作,只需像這樣 rtrim 線:
$fistFile = rtrim(fgets($myfile1)); $seconfFile = rtrim(fgets($myfile2));
- 1 回答
- 0 關注
- 122 瀏覽
添加回答
舉報
0/150
提交
取消