2012-05-05 10 views
0

サーバー上のファイルをテストするときにエラー(500 Internal Server Error)が表示されました。 すべてがmamp(local)で正常に動作し、エラーは発生しませんでした。 ここにエラーのあるコードがあります。500内部サーバーエラーphp - ajax

<?php 
    include_once('../classes/places.class.php'); 
try 
{ 
    $oPlace = new Places(); 
    $oPlace->Street = $_POST['place']; 
    $oPlace->HouseNumber = $_POST['number']; 
    $oPlace->Name = $_POST['Name']; 
    if($oPlace->placeAvailable()) 
    { 
     $feedback['status'] = "success"; 
     $feedback['available'] = "yes"; 
     $feedback["message"] = "Go ahead, street is available"; 
    } 
    else 
    { 
     $feedback['status'] = "success"; 
     $feedback['available'] = "no"; 
     $feedback["message"] ="De zaak " . "'" . $_POST['name'] . "'". " is reeds op dit adres gevestigd." ;; 
    } 
} 
catch(exception $e) 
{ 
    $feedback['status'] = "error"; 
    $feedback["message"] =$e->getMessage(); 

} 
header('Content-type: application/json'); 
echo json_encode($feedback); 
?> 
+2

phpからエラーメッセージが表示されたかどうか確認しましたか?小さなスクリプトを書いて、括弧などを忘れてください。 500エラーが発生した場合はphp.iniを確認し、display_errorsをOnに設定してください。 – Ahatius

+1

私はini_set( 'display_errors'、1)を配置しました。私のPHPコードのこのコードと私は小文字の大文字の問題でエラーを受け取りました:)。問題は今解決されました。皆さん、ありがとうございました! – Niels

答えて

0
$feedback["message"] ="De zaak " . "'" . $_POST['name'] . "'". " is reeds op dit adres gevestigd." ;; 

1あまりにも多くのセミコロンを追加し、よりなどの

$feedback["message"] ="De zaak " . "'" . $_POST['name'] . "'". " is reeds op dit adres gevestigd." ; 

である必要があり、時にはエラーを投げることができる

1

それはどのようなPHPのバージョンはありますか?

5.2以前の場合は、JSON PECLパッケージをインストールする必要があります。

5.20以降の場合、PHPが--disable-jsonオプションなしでコンパイルされたことを確認する必要があります。

+0

私は、json_encodeが起こりうると思われることに同意します。 – davidethell

-1
<?php 
include_once('../classes/places.class.php'); 
/* This if for debugging */ 
foreach ($_GET as $k => $v) $_POST[$k] = $v; 
// Access in your browser: pathToFilePHPCalled.php?place=SomePlace&number=14&Name=MyName 
$feedback['data'] = $_POST; 
/* This if for debugging */ 

$feedback = array(); 
try 
{ 
    $oPlace = new Places(); 
    $oPlace->Street = $_POST['place']; 
    $oPlace->HouseNumber = $_POST['number']; 
    $oPlace->Name = $_POST['Name']; // Make sure this is $_POST['Name'] and not $_POST['name'] this might be your error 
    if($oPlace->placeAvailable()) 
    { 
     $feedback['status'] = "success"; 
     $feedback['available'] = "yes"; 
     $feedback["message"] = "Go ahead, street is available"; 
    } 
    else 
    { 
     $feedback['status'] = "success"; 
     $feedback['available'] = "no"; 
     $feedback["message"] ="De zaak " . "'" . $_POST['name'] . "'". " is reeds op dit adres gevestigd." ; 
    } 
} 
catch(Exception $e) 
{ 
    $feedback['status'] = "error"; 
    $feedback["message"] =$e->getMessage(); 

} 
header('Content-type: application/json'); 
echo json_encode($feedback); 
?> 
関連する問題