我正在使用 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 关注
- 87 浏览
添加回答
举报
0/150
提交
取消