行のフェッチを試みる前に、クエリを実行する必要があります。 oci_parse()
指定されたクエリを実行しません。
フェッチする前に実行呼び出しを追加します:
$success = oci_execute($objParse);
また、if
の最初のブロックに 、oci_parse()
は呼び出さない 。 else
でのみ呼び出されます 。 oci_parse()
を呼び出すように変更します すべての条件で。
生のPOSTデータをクエリに連結するため、クエリはSQLインジェクションに対して脆弱です。 SQLインジェクションを防ぐには、バインドされたパラメーターを使用します。
$optid = '%' . $_POST['OPRID'] . '%';
$optdec = '%' . $_POST['OPRDEFNDESC']. '%';
$empid = '%' . $_POST['EMPLID']. '%';
$empmail = '%' . $_POST['EMAILID']. '%';
$query ="SELECT * FROM OPERATOR WHERE OPRID LIKE :optid
or OPRDEFNDESC LIKE '%:optdec%' or EMPLID LIKE :empid
or EMAILID LIKE :empemail ";
$objParse = oci_parse ($ora_conn, $query);
oci_bind_by_name($objParse, ':optid', $optid);
oci_bind_by_name($objParse, ':optdec', $optdec);
oci_bind_by_name($objParse, ':empid', $empid);
oci_bind_by_name($objParse, ':empemail', $empemail);
$success = oci_execute($objParse);