2017-07-14 16 views
0

私はこのコードを使ってローカルディレクトリのルートディレクトリとファイルを取得します。結果はPHPでmysqlデータベースに保存します。私は次のコードがありますが、データベースとの接続を正しく実行しません。この情報をDBに入れ、後でテーブルにロードしてコメントを付けることです。私はどんな助けにも感謝します。phpとmysqlを使ってルートディレクトリとファイルを取得して保存します

<?php 
$pathLen = 0; 

function prePad($level) 
{ 
    $ss = ""; 

    for ($ii = 0; $ii < $level; $ii++) 
    { 
    $ss = $ss . "|&nbsp;&nbsp;"; 
    } 

    return $ss; 
} 

function myScanDir($dir, $level, $rootLen) 
{ 
    global $pathLen; 

    if ($handle = opendir($dir)) { 

    $allFiles = array(); 

    while (false !== ($entry = readdir($handle))) { 
     if ($entry != "." && $entry != "..") { 
     if (is_dir($dir . "/" . $entry)) 
     { 
      $allFiles[] = "D: " . $dir . "/" . $entry; 
     } 
     else 
     { 
      $allFiles[] = "F: " . $dir . "/" . $entry; 
     } 
     } 
    } 
    closedir($handle); 

    natsort($allFiles); 



    foreach($allFiles as $value) 
    { 
     $displayName = substr($value, $rootLen + 4); 
     $fileName = substr($value, 3); 
     $linkName = str_replace(" ", "%20", substr($value, $pathLen + 3)); 
     if (is_dir($fileName)) { 
     echo prePad($level) . $linkName . "<br>\n"; 
     myScanDir($fileName, $level + 1, strlen($fileName)); 
     } else { 
     echo prePad($level) . "<a href=\"" . $linkName . "\" style=\"text-decoration:none;\">" . $displayName . "</a><br>\n"; 
     } 
    } 
    } 
} 

?> 

<!DOCTYPE HTML> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title>Site MaP</title> 
</head> 

<body> 
<h1>Archivos y carpetas</h1> 
<p style="font-family:'Courier New', Courier, monospace; font-size:small;"> 
<?php 
    $root = '../www'; 

    $pathLen = strlen($root); 

    myScanDir($root, 0, strlen($root)); 

$sql = "INSERT INTO roots(displayName,fileName,linkName) 
VALUES (.'$displayName'., '.$fileName.', '.$linkName.')"; 
    ?> 

    </p> 
</body> 
</html>) 

答えて

0

作成したSQLは実際に実行されておらず、実行するデータベースにも接続されていません。変数に代入されているだけです。

安全で透明な方法でデータベース操作を行うためには、PDO(ドキュメント:http://php.net/manual/en/book.pdo.php)の使用を強くお勧めします。 これは、データベース接続の作成、クエリのパラメータ化と実行などのためのメソッドを提供するクラスです。

+0

アドバイスありがとうございます:) –

関連する問題