-3

我不知道为什么我的字符串不能正确连接。这是我的2个文件:


扫描.php

<?php
function scan($directory)
{

$dir = opendir($directory);

$file= readdir($dir);
$file= readdir($dir);
echo "<ul>";
while (($file = readdir($dir)) !== false)
  {
    $path= $directory . $file;
    if(filetype($path)== "dir")
    {

     echo "<li class='folder' name= ";
     echo $path;
     echo ">";
     echo $file;
     echo"</li>";
    }
    if(filetype($path)== "file") echo "<li class='file' name= ". $path . ">" . $file . "</li>";

  }
  echo "</ul>";
closedir($dir);

}

菜单Novita.php

<?php

 require "scan.php";
  $prefix= "../../novita/";
 scan($prefix); 
 ?>
 <script>
        var scandirectory= 
        var folders= $("li.folder");
        for (var i = 0; i < 5; i++) {
        $("li.folder").eq(i).on("mouseenter", {value: $("li.folder").eq(i).attr("name")}, function(event)
        {
            var path= $("li.folder").eq(i).attr("name");
            var string="<div>" + path + "</div>";
            $("#box").after(string);
            string= "<div class='box'>
                <?php 
                require 'scan.php';
                 echo " + path + ";
                scan(" + path + "); ?>
                </div>";
            $("#box:last").after(string);


        };

        </script>

我不断收到这些错误/警告:

[2012 年 11 月 5 日 03:46:25 UTC] PHP 警告:opendir(+ path +):无法打开目录:/Users/natanconsigli/Desktop/pagina paolo/articoli/novita/scan 中没有这样的文件或目录。第 6 行的 php
[2012 年 11 月 5 日 03:46:25 UTC] PHP 警告:readdir() 期望参数 1 为资源,布尔值在 /Users/natanconsigli/Desktop/pagina paolo/articoli/novita/scan.php 第 8 行
[2012 年 11 月 5 日 03:46:25 UTC] PHP 警告:readdir() 期望参数 1 是资源,布尔值在 /Users/natanconsigli/Desktop/pagina paolo/articoli/novita/scan.php 第 9 行
[05-Nov-2012 03:46:25 UTC] PHP 警告:readdir() 期望参数 1 为资源,布尔值在 /Users/natanconsigli/Desktop/pagina paolo/articoli/novita/scan.php 第 11 行
[UTC 时间 2012 年 11 月 5 日 03:46:25] PHP 警告:filetype(): Lstat failed for + path + in /Users/natanconsigli/Desktop/pagina paolo/articoli/novita/scan.php 在第 14 行
[05-Nov-2012 03:46:25 UTC] PHP 警告:filetype(): Lstat failed for + path + in /Users/natanconsigli/Desktop/pagina paolo/articoli/novita/scan.php 在第 23 行
[05-Nov-2012 03:46:25 UTC] PHP 警告:readdir() 期望参数 1 为资源,布尔值在 /Users/natanconsigli/Desktop/pagina paolo/articoli/novita/scan.php 第 11 行

感谢帮助将不胜感激。

4

1 回答 1

6

您的实际错误与串联无关,它与这一行有关:

scan(" + path + ");

该值+ path +被传递给scan()执行opendir($directory)(或,opendir(" + path + ");)。我假设(根据您的错误)没有名为 的文件+ path +,因此您收到的错误指的是opendir(). 所有后续错误都基于最初的错误。

看起来您正在尝试将值从 javascript 传递path给 PHP 函数。如果不使用一些 ajax 或刷新设置了查询字符串变量的页面,恐怕您将无法做到这一点。

于 2012-11-05T04:23:18.923 回答