2017-06-04 16 views
0

みんな! HTMLテンプレートのテーブルにフォルダの名前を表示したいとします。テンプレートのPHPディスプレイフォルダに関する問題

PHP:

$path = "albums/"; 
$albums = scandir($path); 
$skip = array('.', '..') 

; 

HTMLテンプレート:

<table> 
    <tr> 
     <th>Альбом</th> 
     <th colspan="2">Операции</th> 
    </tr> 

    <? foreach ($albums as $album): ?> 
    <tr> 
     <td> 
      <?php print $album ?> 
     </td> 
     <td> 
      <a href="#"> 
       Редактировать 
      </a> 
     </td> 
     <td> 
      <a href="#"> 
       Удалить 
      </a> 
     </td> 
    </tr> 
    <? endforeach ?> 
</table> 

は、残念ながら、私はこのようなエラーが発生します。

注意:未定義の変数:Dでのアルバム:\ xamppの\をhtdocs \ homework \ 5 \ view \ albums.html on line 20

フォルダの名前を正しく表示するにはどうすればよいですか?間違いは何でしたか?

+0

短いタグを有効にしていますか?その末尾のセミコロンもかなり奇妙です。 – chris85

+0

はい、あります。私はphp.iniのパラメータを変更しました:short_open_tag = On –

+0

ええと、ページのソースが '<? foreach($ albums as $ album):?> 'そこに?現在ループしていないのですよね? 'Редактировать'が複数回表示されているのですか、一度だけ表示されていますか? – chris85

答えて

1

短いタグが無効になっているからです。これを試して。

<?php 
$path = "albums/"; 
$albums = scandir($path); 
$skip = array('.', '..'); 
?> 
<table> 
    <tr> 
     <th>Альбом</th> 
     <th colspan="2">Операции</th> 
    </tr> 

    <?php foreach ($albums as $album): ?> 
    <tr> 
     <td> 
      <?php print $album ?> 
     </td> 
     <td> 
      <a href="#"> 
       Редактировать 
      </a> 
     </td> 
     <td> 
      <a href="#"> 
       Удалить 
      </a> 
     </td> 
    </tr> 
    <?php endforeach ?> 
</table> 
+0

で動作しているときにPHPを制御するフォルダを探してください。私はループの間違いだと思います。私は2つの間違いを持っ​​ています。注意:未定義の変数:D:\ xampp \ htdocs \ homework \ 5 \ view \ albums.htmlの行内のアルバム 警告:D:\ xampp \ htdocs \ homework \ 5 \ view \ albums.html on line 17 ":D –

+0

@DariaShelコードをローカルでテストしたところ、うまくいきました。完全なパスを使用していることを確認してください。 – Sandeesh

+1

@DariaShelそのエラーメッセージは、a)短いタグを有効にしていない/していないこと、b)短いタグで他のコードビットを定義している可能性があります。これらはすべてソースコードに表示されます。 – chris85

関連する問題