0

私は次のコードを持っています...

$interactionid = '123';
$interactioncode = "ECWL";
$oldDOL = $_GET['oldDOL'];

$newDOL = $_GET['newDOL'];


    include("ORCLconfig.php");
    $addWSclaim = oci_parse($conn, "UPDATE claims SET DATE_OF_LOSS='$newDOL' WHERE NUMBER='32122'");
                  oci_execute($addWSclaim, OCI_COMMIT_ON_SUCCESS);


    $addtointeractionMAKE = oci_parse($conn, "INSERT INTO interaction_items VALUES (null, '$interactionid', '$interactioncode', '$oldDOL', '$newDOL', localtimestamp)");
                            oci_execute($addtointeractionMAKE, OCI_COMMIT_ON_SUCCESS);

oldDOLおよびnewDOLは、クレームテーブルのDATE_OF_LOSS列と一致するDD-MMM-YYの形式で到着する日付です。

ただし、クレームテーブルに変更はなく、エラーも表示されないため、2番目のステートメントのみが機能しているようです。

Oracleデータベースを使用していますが、SQLコンソールでupdateステートメントを実行すると、正常に機能します。

私を知っていると、それは私がどういうわけか見落としていた非常に単純なものになるでしょうが、どんな助けもいただければ幸いです:)

4

1 に答える 1

1

試す

 $addWSclaim = oci_parse($conn, "UPDATE claims SET DATE_OF_LOSS='$newDOL' WHERE NUMBER='32122'");

 if ($addWSclaim) {
   if (oci_execute($addWSclaim, OCI_COMMIT_ON_SUCCESS)) {
      if (oci_num_rows($addWSclaim) === 0) {
        /* No rows affected */
      }
   } else {

      /*Handle error through oci_error*/
   }
 } else {
   /* Handle parse error */
 }

oci_executeは、成功した場合はTRUEを返し、失敗した場合はFALSEを返します。

于 2012-12-07T17:13:32.883 に答える