0

Joomlaコンポーネントcom_searchで、次の行を変更しました。

<?php if ($this->params->get('show_date')) echo JText::sprintf('Published %s', $result->created).'. '; ?>

に:

<?php if ($this->params->get('show_date')) echo '<span>'.JText::_('PUBLISHED').':     '.'</span>'.JText::sprintf('%s', JHtml::_('date',$result->created, JText::_('d. m. Y, H:i'))); ?>

何かを検索するとエラー500が発生しました:

DateTime::__construct(): Failed to parse time string (19. 06. 2012) at position 0 (1): Unexpected character

問題はどこにありますか?

理解を深めるためのcom_search(default_results.php)のコード全体:

<div class="items">

<?php foreach ($this->results as $result) : ?>
<article class="item">

    <header>

        <?php if ( $result->href ) : ?>
        <h1 class="title"><a href="<?php echo JRoute::_($result->href); ?>" <?php if ($result->browsernav == 1 ) echo 'target="_blank"'; ?>><?php  echo $this->escape($result->title); ?></a></h1>
        <?php else : ?>
        <h1 class="title"><?php echo $this->escape($result->title); ?></h1>
        <?php endif; ?>

        <?php if ($result->section || $this->params->get('show_date')) : ?>
        <p class="meta">

            <?php if ($this->params->get('show_date')) echo '<span>'.JText::_('PUBLISHED').': '.'</span>'.JText::sprintf('%s', JHtml::_('date',$result->created, JText::_('d. m. Y, H:i'))); ?>
            <?php if ($result->section) echo JText::_('TPL_WARP_POSTED_IN').' '.$this->escape($result->section); ?>
        </p>
        <?php endif; ?>

    </header>

    <div class="content clearfix"><?php echo $result->text; ?></div>

</article>
<?php endforeach; ?>

</div>
<?php echo $this->pagination->getPagesLinks(); ?>
4

4 に答える 4

0

DateTime::__construct(): 時刻文字列 (2012 年 6 月 19 日) の位置 0 (1) の解析に失敗しました: 予期しない文字

19. 06. 2012は、PHP のクラスが受け入れる日付形式ではありません。理解できる形式のリストDateTimeについては、PHP のマニュアル ページ「Date Formats 」を参照してください。

于 2012-08-11T18:30:29.790 に答える
-1

Joomla では、このエラーは、何らかの拡張機能をインストールしようとしたときにも発生しますが、PHP コードは一時およびログ ディレクトリに書き込むことができません。

システム、システム情報、およびディレクトリのアクセス許可に移動すると、すべてが書き込み可能になります。configuration.php で一時ディレクトリとログ ディレクトリへのパスを変更するか、[グローバル構成] メニューと [システムとサーバー] タブを使用して変更できます。

于 2013-05-25T16:32:15.253 に答える
-1

の新しい行をローカルにホストされている Joomla 2.5.6 のコピーにコピー アンド ペーストしたところ、まったく問題なく動作します。エラーはまったくありません。

于 2012-08-11T18:24:34.613 に答える
-1

/logsこの問題について Google で 4 時間を費やした後、私の原因は書き込み不可と/tmpフォルダであることが判明しました。

確認するには、次の手順に従います。

  1. 次の URL を読み込みます (独自のドメインとホスト名に置き換えます)。
    http://www.example.com/administrator/index.php?option=com_admin&view=sysinfo
  2. 「所有者の権利」に移動します
  3. logstmpが書き込み可能かどうかを確認します
  4. そうでない場合は、 configuration.phpファイルでそれらのファイルへのパスを変更する必要があります。

これは、この結論に到達するのに役立ったJoomla フォーラムのトピックからの関連する引用です。

こんにちは私は最近同じ問題を抱えていましたが、トリックを見つけました!

ログ ディレクトリ ($log_path) ./logs/ 書き込み不可
一時ディレクトリ ($tmp_path) ./tmp/ 書き込み不可

正しいディレクトリ パスは次のとおりです。
ログ ディレクトリ ($log_path) ../logs/
ログ ディレクトリ ($log_path) ../tmp/

于 2015-05-29T16:31:24.463 に答える