-5

我需要在我的 html 文件中实现这个 PHP,这会转到一个目录检查那里的文件并创建一个带有这些选项的组合框......现在我怎样才能在我的 html 代码中的特定位置调用它。

<?php
$dir = 'xml/';

$exclude = array('somefile.php', 'somedir');

// Check to see if $dir is a valid directory
if (is_dir($dir)) {
  $contents = scandir($dir);

  echo '<select class="dropdown-toggle" id="combo">';

  foreach($contents as $file) {
  // This will exclude all filenames contained within the $exclude array
  // as well as hidden files that begin with '.'
  if (!in_array($file, $exclude) && substr($file, 0, 1) != '.') {
  echo '<option>'. $file .'</option>';
  }
  }

  echo '</select>';
  }
  else {
  echo "The directory <strong>". $dir ."</strong> doesn't exist.";
  }
?>
4

4 回答 4

0

您可以创建一个包含在 php 中生成的选择并使用 javascript 加载数据的 div,例如 jquery:http ://api.jquery.com/load/

于 2013-01-21T15:09:56.607 回答
0

你的意思是这样的吗?

<html>
...
<?php include('codesnippet.php') ?>
...
</html>

还是其他方式(在 HTML 文档中显示代码)?

<pre>
  <code>
    <!-- your snippet goes here, with escaped characters -->
  </code>
</pre>
于 2013-01-21T15:11:23.030 回答
0

您可以将您的 php 插入到您希望此选择元素出现的任何位置的 html 页面中。假设您的服务器将为 php 标签解析一个 html 文件(这是非常标准的),那么它将像那样工作。如果没有,请尝试将您的 .html 文件重命名为 .php。

我建议将您的 php 保存在一个单独的文件中(即 generate_select.php),然后将其包含在您希望的任何位置,就像这样;

<table>
<tr>
<td>
<?php include('generate_select.php'); ?>
</td>
</tr>
</table>

您可以随时使用 php 开始和结束标记插入和退出 php 代码。

于 2013-01-21T15:11:27.863 回答
0

好的,首先,您不要将 PHP 放入 HTML中。

PHP 在服务器端处理,HTML 在客户端处理。

这意味着浏览器将 HTML 拼凑在一起时,PHP 已经被处理过了。

从我所见,您希望将 [您所回显的内容] 放入 HTML 元素中...

<?php
$dir = 'xml/';
$output;

$exclude = array('somefile.php', 'somedir');

// Check to see if $dir is a valid directory
if (is_dir($dir)) {
  $contents = scandir($dir);

  $output .= '<select class="dropdown-toggle" id="combo">';

  foreach($contents as $file) {
  // This will exclude all filenames contained within the $exclude array
  // as well as hidden files that begin with '.'
  if (!in_array($file, $exclude) && substr($file, 0, 1) != '.') {
  $output .= '<option>'. $file .'</option>';
  }
  }

  $output .= '</select>';
  }
  else {
  $output .= "The directory <strong>". $dir ."</strong> doesn't exist.";
  }
?>

看看我是如何用 替换回声的$output .=?PHP 现在将这些字符串附加到$output变量中。然后可以在页面上的任何位置输出该 $variable。IE:

<table>
<tr>
<td>
<?php echo $output ?>
</td>
</tr>
</table>

你也应该知道,include()但我不会解释,因为人们已经做出了相应的回答。

于 2013-01-21T15:11:59.147 回答