所以我必须建立一个基于数据库的Filetree,但我完全迷失了。
我尝试将其用作基本模型:http://labs.abeautifulsite.net/archived/phpFileTree/demo/demo_jquery.php
甚至将它用作某种教程: http://www.kensodev.com/2009/05/22/using-jquery-tree-for-database-data/
但我似乎无法与这一切相处......
我要做的是:我在数据库中有一些数据。所有这些数据都有一些短语,它有不同的短语A到G.我现在需要在短语A之后对其进行排序,然后在短语B后进一步排序,最后所有数据,应该看到相同的短语C(某些文件夹)和子文件夹一样。)
我也尝试过div和table,但是我们说它不起作用:D
现在请有人告诉我在天堂里我必须把我的数据库服务器名称,PW等等以及我的数据库“选择”在上面的所有内容中使这个东西工作。
答案 0 :(得分:0)
如果我理解正确,您希望有一个页面,当用户点击链接时,它会从数据库中获取一些数据并使用AJAX / jQuery显示警告
使用
在根目录中添加PHP文件<?php
//edit for your server/database
$username = "username";
$password = "password";
$hostname = "hostname";
$dbname = "database-name";
//to connect to the database
$db = new PDO('mysql:host='.$hostname.';dbname='.$dbname.';charset=utf8', $username, $password);
?>
真的很简单,如果你需要对数据进行多次排序,那么你可能做错了,或者你可以尝试使用JOIN子句。
假设您要显示用户单击的链接(并从数据库中获取链接),您可以在另一个php文件中添加一个php_file_tree函数,如下所示
<?php
if(isset($_GET['Phrase'])){
$needle = $_GET['Phrase'];
}else{$needle = null;}
function php_file_tree($directory, $javascript){
//include previous file with connection details
global $needle, $db;
//I'm not sure what you are looking for in the database
$value = "value"
//could be ASC or DESC $needle or $value
$query = "SELECT table.Phrases FROM table WHERE Phrases = '{$needle}' ORDER BY A DESC;";
$sth = $db->prepare($query);
$sth->execute();
$data = $sth->fetchAll();
return $javascript = preg_replace('/\[\[.*?\]\]/', 'link', $javascript);
}
//should give you the alert
echo php_file_tree($_SERVER['DOCUMENT_ROOT'], "javascript:alert('You clicked on [link]');");
?>
同时将此内容添加到您的HTML页面
<script src="jquery.js" type="text/javascript"></script>
<script src="php_file_tree_jquery.js" type="text/javascript"></script>
<script>
$(document).ready(function(){
var fetchUrl = 'path-to-the-php-file-with-the-function'
var fetchNeedle = $( "#link" ).html();
$.get(fetchUrl.concat(fetchNeedle)).done(function(data) { Alert(data); });
});
</script>