Drupal中的HTTP错误500(内部服务器错误)
Iam使用php为使用php的ios应用程序提供使用json的数据。但在浏览器中运行代码时,它显示服务器错误。如果数据库中没有值,则显示代码中提供的{"posts":null}
。但是,如果数据库中存在值,则会出现问题。它显示错误Server error The website encountered an error while retrieving http://path to the server file/php/categoryitemlisting.php?category=11. It may be down for maintenance or configured incorrectly. Here are some suggestions: Reload this webpage later. HTTP Error 500 (Internal Server Error): An unexpected condition was encountered while the server was attempting to fulfill the request.
此错误只发生在这个php文件中。使用其他文件,我可以传输数据。Drupal中的HTTP错误500(内部服务器错误)
我connection.php文件:
<?php
$link = mysql_connect("127.0.0.1","root","") or die('Cannot connect to the DB');
mysql_set_charset("utf8");
mysql_select_db('cotton',$link) or die('Cannot select the DB');
?>
Categoryitemlisting.php
<?php
require('connection.php');
$item = array() ;
/* connect to the db */
if(isset($_REQUEST['category']))
{
$k=$_REQUEST['category'];
/* grab the posts from the db */
// $k=11;
$catid = mysql_query("SELECT entity_id FROM field_data_field_cat WHERE field_cat_tid= $k");
while($r = mysql_fetch_assoc($catid))
{
$category[] = $r['entity_id'];
foreach ($category as $cat);
{
$data= mysql_query("SELECT field_data_field_name.entity_id, field_data_field_name.field_name_value, file_managed.uri, field_data_field_sec.field_sec_tid FROM file_managed INNER JOIN (field_data_field_thumb, field_data_field_name, field_data_field_sec) ON (file_managed.fid = field_data_field_thumb.field_thumb_fid AND field_data_field_name.entity_id = field_data_field_thumb.entity_id AND field_data_field_thumb.entity_id = field_data_field_sec.entity_id) WHERE field_data_field_name.entity_id = $cat");
$items = mysql_fetch_assoc($data);
$item[]= $items;
}
}
$re="public:\/\/";
$list = json_encode(array('posts'=>$item));
$list = str_replace($re, "http://localhost/sites/default/files/" ,$list);
echo $list;
@mysql_close($link);
}
else
{
echo "connection failed";
}
?>
我如何通过修复此错误的获取值?我不认为这是服务器的问题。如果代码中有任何其他错误?
最后指出问题....
有一个在服务器代码$k=$_REQUEST[' category'];
的空间。这导致了错误。
查找到YOUT php.ini并设置:
display_errors = on
error_reporting = E_ALL
如果display_error是关闭的,你有你的代码中的任何类型的问题(如:分析错误)你的反应将是一个500状态页面。
display_errors和error_reporting在我的php.ini中都是一样的。但错误仍然相同 – anu 2013-05-15 05:20:45