Treeview Directory对Datatable做出反应

时间:2017-12-22 01:50:20

标签: javascript php ajax datatable treeview

我有一个treeview目录。该目录实际查看了包含文件的文件夹,并且在目录的树视图旁边我有一个数据表。 界面如下所示:

Treeview

当我点击树视图时,它将显示其通过警报的路径。像这样:(我点击了runblack.png)。

enter image description here

我的问题是如何让树视图与旁边的数据表做出反应。 就像我点击年份一样,数据表将搜索同一年的所有文件。 然后,如果我点击年份下面的类别,它将搜索具有年份的类别。

这是我的目录代码:

<?php

function php_file_tree($directory, $return_link, $extensions = array()) {
	// Generates a valid XHTML list of all directories, sub-directories, and files in $directory
	// Remove trailing slash
	if( substr($directory, -1) == "/" ) $directory = substr($directory, 0, strlen($directory) - 1);
	$code .= php_file_tree_dir($directory, $return_link, $extensions);
	return $code;
}

function php_file_tree_dir($directory, $return_link, $extensions = array(), $first_call = true) {
	// Recursive function called by php_file_tree() to list directories/files
	
	// Get and sort directories/files
	if( function_exists("scandir") ) $file = scandir($directory); else $file = php4_scandir($directory);
	natcasesort($file);
	// Make directories first
	$files = $dirs = array();
	
	
	foreach($file as $this_file) {
		if( is_dir("$directory/$this_file" ) ) $dirs[] = $this_file; else $files[] = $this_file;
	}
	$file = array_merge($dirs, $files);
	
	// Filter unwanted extensions
	if( !empty($extensions) ) {
		foreach( array_keys($file) as $key ) {
			if( !is_dir("$directory/$file[$key]") ) {
				$ext = substr($file[$key], strrpos($file[$key], ".") + 1); 
				if( !in_array($ext, $extensions) ) unset($file[$key]);
			}
		}
	}
	
	if( count($file) > 2 ) { // Use 2 instead of 0 to account for . and .. "directories"
		$php_file_tree = "<ul";
		if( $first_call ) { $php_file_tree .= " class=\"dirlist\""; $first_call = false; }
		$php_file_tree .= ">";
		foreach( $file as $this_file ) {
			if( $this_file != "." && $this_file != ".." ) {
				if( is_dir("$directory/$this_file") ) {
					// Directory
					$flink="./$directory/$this_file";
					$dlink = str_replace("[link]", "$directory/". urlencode($this_file), $return_link);
					$php_file_tree .= "<li class=\"hdir\" ><a href=\"$dlink\">" . htmlspecialchars($this_file)."</a>" ;
                    
					$php_file_tree .= php_file_tree_dir("$directory/$this_file", $return_link ,$extensions, false);
					
					$php_file_tree .= "</li>";
				} else {
					// File
					// Get extension (prepend 'ext-' to prevent invalid classes from extensions that begin with numbers)
					$ext = "ext-" . substr($this_file, strrpos($this_file, ".") + 1); 
					$link = str_replace("[link]", "$directory/" . urlencode($this_file), $return_link);
					$flink="./$directory/" . urlencode($this_file);
					$fsize = filesize ("$flink");
					
					$ftime=date ("F d Y H:i:s.", filemtime($flink));
					$php_file_tree .= "<li class=\"hfile " . strtolower($ext) . "\"><a href=\"$link\">" . htmlspecialchars($this_file) . "</a><br></li>";
				}
			}
		}
		$php_file_tree .= "</ul>";
	}
	return $php_file_tree;
}

// For PHP4 compatibility
function php4_scandir($dir) {
	$dh  = opendir($dir);
	while( false !== ($filename = readdir($dh)) ) {
	    $files[] = $filename;
	}
	sort($files);
	return($files);
}

我希望它像点击树视图一样,我会将查询传递给数据表以搜索所需的数据。

查询示例:SELECT * FROM TABLE WHERE DATE ='from treeview'AND CATEGORY ='from treeview'...依此类推

我的数据表查看数据库中的数据只是通常的javascript到php连接的选择。

0 个答案:

没有答案