2

Joomla 3.0.3 の単純なクエリに WHERE ステートメントを追加しようとしています。しかし、コードは、WHERE ステートメントで行にコメントを付けた場合にのみ機能します。何か提案はありますか?どうもありがとう!

<?php

$query = $db->getQuery(true);

$query->select(array('Name','InstrumentFamily'));

$query->from('instrumenttype');

$query->where($db->nameQuote('InstrumentFamily').'='.$db->quote('debt'));

$db->setQuery($query);

$result = $db->loadAssocList();

print_r($result);

?>

PS: Sourcerer 拡張機能を使用して、Joomla のバックエンドでそのようなステートメントを入力していることに注意してください!

4

1 に答える 1

6

Joomla以来!nameQuoteJoomla! では1.6.xが廃止されました。3.x では利用できなくなりました。詳細については、この記事「Joomla 3.0 および Joomla Platform 12.1 における下位互換性の問題の可能性」を参照してください。

これらのJDatabase(別名JDatabaseDriver) 変更の多くは、MySQL 以外のより優れたサポート データベースを有効にするためのものです。

ジュムラで!$db->quoteName()3.x では、テーブルまたは列の名前とすべての値に置換を使用する必要があり$db->quoteます。

したがって、where要素は次のようになります。

$query->where($db->quoteName('InstrumentFamily').'='.$db->quote('debt'));
于 2013-03-28T02:14:30.360 に答える