2017-08-21 4 views
0

Oracleをデータベースとして使用しており、PHPコードを使用しています。ここでは、環境変数を使用しているクエリです。これらの変数に文字列として値を与えてバインドすると、クエリは簡単に実行されます。 HTML5date入力を使用した場合、私はPHPコードに従って使用した日付形式を変更し、このPHP変数をOracle変数にバインドする必要があります。しかし、今はクエリが実行されていません。問い合わせのPHPでのOracleのクエリが解析されて実行されていない、PHPの日付変数のために日付の変数を文字列に変換する方法が原因である可能性がありますか?

パート:

where trunc(eto_ofr_approv_date_orig) between to_date(:start_date,'DD-MM-YYYY') and to_date(:end_date,'DD-MM-YYYY') 

PHPコード:

$start_date=date("d-m-Y",strtotime($start_date)); 
$end_date=date("d-m-Y",strtotime($end_date)); 
. 
. 
. 
<QUERY HERE> 
. 
. 
. 
$sth = oci_parse($con,$sql); 
oci_bind_by_name($sth, ":start_date",$start_date); 
oci_bind_by_name($sth, ":end_date",$end_date); 
if(oci_execute($sth)){ 
    echo "OK"; 
} 
else{ 
    echo "NO"; 
} 

これは、常に画面上NOを印刷しています。

ところで、私のHTMLコードは、必要に応じて怒鳴るようです:

<label for="start_date">Start Date :</label> 
<input type="date" id="start_date" name="start_date" value="<?php echo date('Y-m-d',strtotime('-1 week')); ?>"> 
<label for="end_date">End Date :</label> 
<input type="date" id="end_date" name="end_date" value="<?php echo date('Y-m-d');?>"> 

が、この中に見てください。

答えて

0

私の間違いでした。 私は$conをこの関数の外に作成したので、コードを編集して$conを私の関数に渡しました。

関連する問題