0

.php ページには、以下の関数があります。localhost では、JSON 応答は NULL とは異なりますが、ページをサーバー (FTP) に配置すると、JSON 応答は NULL になります。

コード

// Check for required parameters
if (isset($_POST["placetype"]) && isset($_POST["placeName"])) {
  $pt = $_POST["placetype"];
  $pn = $_POST["placeName"];
  $dir = 'Pictures/Attractions/'.$pt.'/'.$pn.'/';
  $files = scandir($dir);
  foreach($files as $ind_file) {
    $result[] = array(
      "data" => $ind_file
    );
  sendResponse(200, json_encode($result));
  return true;
}//ifisset
sendResponse(400, 'Invalid request');
return false;

: 同じフォルダーがローカルとサーバーの両方にあります。

ありがとう。

4

2 に答える 2

1

これを見る

$files = scandir($dir);

$dir にファイルがない場合、変数 $result は作成されず、何も保持されず、json は null を返します。リモートサーバーでは、ファイルがなく、json_encode が null を返します

于 2012-07-14T15:57:16.323 に答える
1

サーバー上の PHP インストールが最新ではないと推測しています。json_encode()PHP 5 >= 5.2.0 でのみ動作します。

于 2012-07-14T15:49:55.103 に答える