0

私は単純な .php ファイルを持っています:

<?php
$archivo = $_POST["name"];
$alineamiento = $_POST["alineamiento"];
$fp=fopen("$archivo","w");
fwrite($fp,$alineamiento);
fclose($fp);
?>

これは問題なく動作しますが、ファイルをサブフォルダー (sub_mat) に書き込む必要がある場合:

<?php
$archivo = $_POST["name"];
$alineamiento = $_POST["alineamiento"];
$fp=fopen("/var/www/SChip/sub_mat/$archivo","w");
fwrite($fp,$alineamiento);
fclose($fp);
?>

これは機能しません。次のように、絶対パス dir なしでも試してみます。

<?php
$archivo = $_POST["name"];
$alineamiento = $_POST["alineamiento"];
$fp=fopen("sub_mat/$archivo","w");
fwrite($fp,$alineamiento);
fclose($fp);
?>

rwsub_mat フォルダーにアクセス許可があります。Chrome、FF、Opera でこれを試してみましたが、うまくいきません。これはばかげているに違いないことはわかっていますが、問題がわかりません。

編集

スクリプトを修正しsystem("mv ...")、値を追加して初期化しました。コンソールでこれを実行すると、正常に動作し、エラーは発生しません。

PHP Notice: Undefined index: name in /var/www/SChip/create-matrix.php 行 2
PHP Notice: Undefined index: alineamiento in /var/www/SChip/create-matrix.php 行 3

しかし、それは明らかです...しかし、ChromeまたはFFで実行すると、エラーや警告は表示されず、機能しません。ファイルを現在のフォルダーに残すだけで、mv実行されません。

<?php
$archivo = $_POST["name"];
$alineamiento = $_POST["alineamiento"];
$archivo = "testing";
$alineamiento = "test2";
$fp=fopen("$archivo","w");
fwrite($fp,$alineamiento);
fclose($fp);
system("mv $archivo custom_matrices_temporal/$archivo");
?>
4

1 に答える 1

3

新しいファイルを作成するには、ディレクトリにも実行( )権限が必要です。x

于 2013-02-06T20:53:13.080 に答える