0

PHPがログインしているユーザー名を読み取り(Drupalを使用しています)、そのユーザー用に作成したディレクトリにある単純なcsvファイルを読み取るということをしようとしています。

はい、phpがユーザー名を読み取り、設定した変数($ uname)に保存していることを確認しました。$ unameをエコーし​​て動作するテストを実行しましたが、実際にサイトにユーザー名が表示されます。ただし、パスを連結すると、ディレクトリが存在しないというエラーが表示され、ユーザー名以外のすべてが表示されます。

これが私が持っているものです:

<?php

global $user;
$uname= $user->name;
$fdir = "./users/";
$fname="test.csv";
$slash = "/";

$fpath = $fdir.$uname.$slash.$fname;


$file_handle = fopen($fpath, "r");

while (!feof($file_handle) ) {

$line_of_text = fgetcsv($file_handle, 1024);

print $line_of_text[0] . $line_of_text[1]. $line_of_text[2] . "<BR>";

}

fclose($file_handle);

?>

更新しました:

ファイルがPHPスクリプトと同じディレクトリにある場合、ユーザー名でcsvを読み取ることができます。ただし、ユーザー名を使用して、ユーザーにちなんで名付けられたサブディレクトリに移動することはできません。どうすればこれを実現できますか?

ご覧いただきありがとうございます。

4

1 に答える 1

0

うーん...まあ、これは奇妙なことに気付くでしょうが、このコードは、Drupal内で作成した記事またはページに配置し、PHPコードを含むように設定した場合にのみ機能します。Drupalの外部で(つまり、スタンドアロンのPHPスクリプトとして)実行すると、機能せず、Drupalサイトにログインしているユーザー名を取得しません。まあ。

于 2013-02-28T14:52:42.770 に答える