php - 未定义索引 PHP 错误/警告

标签 php mysql joomla jomsocial

我在 Joomla 和 Jomsocial 的 PHP 和 MySQL 应用程序上收到以下错误:

[05-Apr-2013 12:23:45 America/Denver] PHP Notice:  Undefined index: query in /home2
/robervl4/public_html/forum/components/com_community/community.php on line 50

这并不是开箱即用的。该应用程序按其应有的方式显示数据库中的产品,唯一的问题是我收到此错误。

这是该文件的 PHP 代码,第 50 行是:

parse_str($parts['query'], $qstring);

代码:

// DISABLE FORMAT=FEED for now 17Jan13 as requested by Fuqaha
$mainframe  = JFactory::getApplication();
$jinput     = $mainframe->input;
$viewType = $jinput->request->get('format', 'html','NONE');
if(strtolower($viewType)=='feed') {
$u = JFactory::getURI();
$parts = parse_url($u->toString());
parse_str($parts['query'], $qstring);
unset($qstring['format']);
$parts['query'] = http_build_query($qstring) ;

//recompose the URL to redirect
$scheme   = isset($parts['scheme']) ? $parts['scheme'] . '://' : ''; 
$host     = isset($parts['host']) ? $parts['host'] : ''; 
$port     = isset($parts['port']) ? ':' . $parts['port'] : ''; 
$path     = isset($parts['path']) ? $parts['path'] : ''; 
$query    = isset($parts['query']) ? '?' . $parts['query'] : ''; 
$fragment = isset($parts['fragment']) ? '#' . $parts['fragment'] : ''; 

$mainframe->redirect(CRoute::_("$scheme$host$port$path$query$fragment"));
exit('Redirecting to Non-Feed page');
}

最佳答案

parse_url 仅在有值时才包含索引。即,如果没有查询,则不会设置 $parts['query']。首先测试是否已设置: if (isset($parts['query'])) parse_str($parts['query'], $qstring);

http://php.net/manual/en/function.parse-url.php

关于php - 未定义索引 PHP 错误/警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15842595/

相关文章:

php - 虽然循环不显示所有值

mysql - 如何在SQL中添加时间间隔代码

php - Joomla 网站抛出错误

php - Xcode 4.1 iOS 引用Joomla generated Database via PHP

php - 从 PHP 创建动态 PDF(带有表单字段和交互式元素)

javascript - 从 JSON 文件填充表内容

php - 来自 MySQL 的随机文本,只需单击按钮,无需使用 PHP 刷新

php - 从外部 php 文件访问 joomla 的助手

php - 如何在数据库中创建 Laravel 5.4 session

mysql - 分组依据 - 需要单行显示