Может кто-нибудь помочь мне в этой проблеме.
function get_shareSearch($conn, $searchBy) {
$id = "";
if(isset($_GET['share']))
{
$id = $_GET['share'];
if($id == "%")
{
$id = "This is not going to work";
}
}
$statement = db_create_statement($conn, "SELECT DISTINCT * FROM shares WHERE company LIKE '%" . $id . "%' OR issue_date LIKE '%" . $id ."%' ORDER BY $searchBy ASC" );
db_bind($statement, ':id', $id);
$resultset = db_fetch_resultset($statement);
return $resultset;
}
function db_bind($statement, $name, $value) {
return oci_bind_by_name($statement, $name, $value, 30);
}
Предупреждение: oci_bind_by_name (): ORA-01036: недопустимая переменная
Может ли кто-нибудь помочь мне, как изменить идентификатор переменной в операторе оракула, чтобы я мог иметь конкатенацию плюс к этому, чтобы иметь возможность связать переменную? Спасибо.
db_bind($statement, ':id', $id);
Чтобы связать переменные в строке, они должны быть объединены (обозначение оракула):
SELECT DISTINCT * FROM shares WHERE company LIKE '%' || :id || '%' OR issue_date LIKE '%' || :id || '%' ORDER BY $searchBy ASC
Других решений пока нет …