0
私は探してみましたが、なぜコードが機能していないのかわかりません。PDO BindParamとBindValueが機能しない
ここで私はうまく動作しません - クエリは何も返しません、実際には処理が実行時に停止します。
私はexecute
に値をハードコードした場合、それは動作します:それは動作しますが、私は、変数を使用しようとインクルードが実行以上により
$CID = $_POST [ 'loginPageCID' ];
$LID = $_POST [ 'loginPageLID' ];
$PWD = $_POST [ 'loginPagePwd' ];
require_once('connectdb.php');
$sql = "
SELECT u.*, c.cname, c.cstatus
FROM t_users u, t_customers c
WHERE u.cid = ?
AND c.cid = u.cid
AND u.login_id = ?
AND u.pwhash = ?
";
$stmt = $conn->prepare ($sql);
$stmt->execute (array(1, 'su1', 'hello'));
$row = $stmt->fetchAll();
は黙って失敗しているようだ:
$CID = $_POST [ 'loginPageCID' ];
$LID = $_POST [ 'loginPageLID' ];
$PWD = $_POST [ 'loginPagePwd' ];
require_once('connectdb.php');
$sql = "
SELECT u.*, c.cname, c.cstatus
FROM ids_users u, ids_customers c
WHERE u.cid = ?
AND c.cid = u.cid
AND u.login_id = ?
AND u.pwhash = ?
";
$stmt = $conn->prepare ($sql);
$stmt->bindParam(1, $CID, PDO::PARAM_INT);
$stmt->bindParam(2, $LID, PDO::PARAM_STR);
$stmt->bindParam(3, $PWD, PDO::PARAM_STR);
$stmt->execute(); // fails here
$row = $stmt->fetchAll();
編集:
connectdb.phpは、次のとおりです。
[例外を有効にする](http://php.net/manual/en/pdo.error-handling.php)しましたか?もしそうなら、何も黙って失敗してはいけません。 – tadman
@tadman - 質問への接続を作成するためのコードを追加しました。 – TenG
戻ってくる結果オブジェクトを詳しく見てください。エラーログに通知がないか再度確認してください。 – tadman