問題タブ [idiorm]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - Paris/Idiorm: データベースが空かどうかを確認しますか?
同様の質問を検索しましたが、「CREATE TABLE IF NOT EXISTS」しかありませんでした。
それは私がまったく望んでいないことです!必要な5つのテーブルが存在するかどうかを確認したいだけで、それらを作成することはまったく別のことです。
つまり、「CREATE TABLE」なしで「IF NOT EXISTS」部分が必要です。とにかくIdiormでそれを行うことはありますか?
P/S: 可能であれば、コード行全体を記述してください (たとえば、ORM::raw_execute('query') など)。データベースクエリを扱った経験はほとんどありません:( )
php - ファイルのアップロード時にデータベースの更新が失敗する
ユーザーがファイルをレコードに添付できるスクリプトがあります。ファイルは (データベースではなく) 個別に保存されます。ユーザーがファイルを添付せずに「レコードの保存」をクリックすると、正常に機能します。ユーザーがファイルを添付すると、次の手順が実行されます。
- ファイルのアップロードは正しい
- スクリプトは Idiorm を使用して DB レコードの詳細から取得します
- スクリプトはレコードのフィールド「filesize」を更新します (この手順なしでスクリプトをテストしました - 同じ結果)
スクリプトがレコードを保存しようとすると、次のようになります。
/li>
どうすれば解決できますか?
アップデート:
私は2つのことを知りました:
- スクリプトは、アップロードされたファイルが 20 Mb を超え、Idiorm_record->save() でデータベースを更新しようとした場合にのみ、「一般エラー: 2006 MySQL サーバーがなくなりました」を返します。
- アップロードされたファイルが 20 Mb を超えていて、データベースを更新しようとしていない場合、スクリプトは「一般エラー: 2006 MySQL サーバーが消えました」を返しません。
- 20 Mb を超えるファイルをアップロードし、Idiorm::raw_exec() を使用して Idiorm_record->save() によって生成されたクエリを実行し、エラーをキャッチできません。
その問題は Idiorm に関連しているということですか?
mysql - イディオムでの複数列のエイリアシングの例
IDIORM を使用して複数のテーブルを結合する - あいまいな列を 1 つ扱いましたが、この方法では名前で列を選択する必要がありました。このメソッドは、使用していたエイリアスに対してチェーンしていないようです。
ドキュメント @readthedocs 以外に、複数のテーブルを結合する上で慣用的にエイリアシングの例を示すものはありますか? またはイディオムを使用して 1 つのクエリで複数のエイリアス
助けていただければ幸いです
http://idiorm.readthedocs.org/en/latest/ このリンクで has_many_through() も見つけましたが、少し迷っています - https://github.com/j4mie/idiorm/pull/66
イディオム
php - 今日のレコードを取得するイディオム クエリ
私は Idiorm をいじっていましたが、データベースから今日と昨日のすべてのレコードを取得できませんでした。したがって、MySQL クエリは次のとおりです。
私の理解が正しければ、それはイディオムで正確に再現することはできませんよね? 次のオプションも試しましたが、奇妙に機能しませんでした (空の配列を返します)。
それをどのように行うべきかについて私を修正してもらえますか?
mysql - イディオムとmysqlを使用したPHP utf8
WAMP を使用して、localhost で PHP コードを実行します。問題は、ローカルホストで「lÃ¥n」のような utf8 エラーが発生することです。ライブサーバーでは、疑わしいように「lån」が表示されます。
これまでに試したこと
- サーバーとローカルホストのデータベーステーブルを次のように設定します
utf8_general_ci
- サーバーとローカルホストのデータベース テーブル構造の行を次のように設定します。
utf8_general_ci
- utf castでファイルエンコーディングをチェックしました。それらは
ASCII/UTF-8, NO BOM
サーバーとローカルホストの両方で設定されています - 強制的な PHP ヘッダー
header('Content-Type: text/html; charset=utf-8');
- データベースにUTF8を強制しました
ORM::configure('mysql:host=SECRET;dbname=SECRET;charset=utf8');
- ひょんなことから追加さ
ORM::configure('driver_options', array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'));
れた
より詳しい情報
- phpmyadminを使用すると、データベース内のデータは同じです。差分ツールも使用しました。
- データは出力で同一ではありません。なぜだめですか?何をすべきか?
- 私は素敵なSQLにイディオムを使用しています。
- データベースの設定は同じです。
- ファイルは同じです。それらをサーバーにアップロードします。
- それらをバイナリとして送信するfilezillaがあります。
ifステートメントの回避策なしで、ローカルホストとサーバーに同じように表示させたいだけです。ある場所では utf8_decode を使用したくありません。
私が試すことができるアイデアはありますか?