問題タブ [bindvalue]

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.

0 投票する
3 に答える
687 参照

php - PHP:PDO bindValue()により、0件の結果が返されます

PDO bindValue()関数で問題が発生しました。私がそれを使用しているように見えるときはいつでも、私のクエリは常に0の結果を返します。ただし、bindValue()を使用せずに$userと$passをSQLに直接配置すると、正常に機能します。

$userは文字列
です$passwordはsha1()ハッシュです

0 投票する
1 に答える
2077 参照

php - PHP PDO BindParam/BindValue 二重引用符のバグ

パラメーターを PDO 準備済みステートメントにバインドしようとすると、非常にイライラする結果が得られます。

結果は次 のエラーです。SQL 構文にエラーがあります。1 行目の「items」付近で使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。

このエラーは、テーブル 'items' が一重引用符で囲まれてはならないときに引用されていることを明確に示しています。以下に少しテストをまとめました。ご覧のとおり、最初からステートメントでパラメーターを引用符で囲んでいません。これは、おそらくほとんどの人が最初に推測することです。$params を null に設定し、ステートメント内の ':table' を 'items' に置き換えて bindParams 関数をバイパスすると、それは完全に正常に動作します。

誰も私を悲惨な状況から解放し、私が見逃していることを本当に明白に指摘してくれる人はいますか?

0 投票する
1 に答える
161 参照

php - WHERE 句が使用されているときに BindValue が結果を生成しないのはなぜですか?

ここで何が間違っているのかわかりません。このクエリで WHERE 句を省略すると、サーバーはデータベースからすべての行を返します。だから私はその部分が機能することを知っています。WHERE句を使用する場合、つまり

WHERE name='$name' AND loc='$loc' -

結果は得られますが、bindValue を使用するか、execute コマンドでバインダーを渡すと、エラーもデータも得られません

これは、これらのパラメーターを受け取る関数の場合

ここで何が間違っていますか。申し訳ありませんが、すべての質問を同様に検索しましたが、答えがありません。

0 投票する
2 に答える
6027 参照

php - PHP - bindValue() に関する PDO の問題

特定の列名を指定してテーブルをプログラムで作成するクラスを作成しています。いくつかの問題を引き起こしているように見える PDO 準備済みステートメントを使用しています。

基本的な手順は次のとおりです。

$stmt->errorInfo()[2]表示される内容は次のとおりです。

$1、$2、$3 などがクエリに表示されるのはなぜですか? この PDO ステートメントをさらにデバッグする方法に関するヒントはありますか?

更新 bindParam を使用せず、params の配列を $stmt->execute() に渡すだけで、別のアプローチを試みています。それでも同じエラーが発生しますが...

0 投票する
1 に答える
138 参照

php - このbindValueは間違っていますか?

私はPDO statement次のようにしています(AFAIKescaped 、PDOは準備のためにデータを必要としません):

このコードは何もしません。ただし、次のようなダンプが生成されます。

0 投票する
1 に答える
1884 参照

php - bindValue を使用した準備済みステートメントが機能しない

私はPHPが初めてで、準備されたステートメントを機能させようとしています。これは私の大学での最終年度のプロジェクトであり、準備済みステートメントは優れたプラクティスであり、SQL インジェクションにも適していると読んだことを覚えています。ただし、次のコードでは Server 500 エラーが発生します。

以下を実行すると、行が挿入されるので、データベースに正しく接続していると確信できます。

私はbindValue間違って使用していますか?オンラインの多くのチュートリアルでこのように使用されているのを見てきましたが、何か間違ったことをしているに違いありません。

0 投票する
1 に答える
432 参照

php - PDO :: bindValue()で明示的なデータ型を使用する意味は何ですか?

で明示的なデータ型を使用する意味は何PDO::bindValue()ですか?

たとえば、次のいずれかの形式では、SQLSTATE[HY000]: General error: 1366 Incorrect integer value: 'a'

0 投票する
1 に答える
354 参照

php - PDO bindparam および bindvalue。違いはどれですか?

PHP PDO のマニュアルを読み、この投稿を見ました: PDO PARAM_STR and length

その投稿を読んだ後、DB に挿入するときに長さを指定する必要はなく、出力するときに指定する必要があることを理解しました。

私の質問は、出力の長さを指定したくない場合、代わりに bindvalue() を使用できますか? bindparam と bindvalue をいつ使用するのが最適かについて、誰かが良いアドバイスをくれるでしょうか?

よろしくお願いします。

0 投票する
1 に答える
247 参照

php - クラス関数bindvalueでグローバル変数を使用する方法は?

グローバル変数を使用し、bindValue()を使用してプレースホルダーに割り当て、値をデータベースに挿入できるようにします。私が使用している関数は以下のとおりです

パブリック変数を作成できない理由は、データがフォームからフォームに投稿されており、パブリックまたはパブリックスタティックの使用が無効な構文であるためです。私が使用している変数は

私がやりたいことは可能ですか、それともデータベースに挿入できるように値を割り当てる別の方法を見つけたほうがいいですか?