Использование oci_parse и oci_execute

Я уверен, что это что-то очень простое, но я не могу найти свою ошибку.

Я пытаюсь выполнить следующее …

$c = db_connect(); $email = addslashes($email); $sql = "SELECT * FROM RUSER WHERE email LIKE '" . $email . "';"; $query = oci_parse($c, $sql) or die(oci_error($c)); $response = oci_execute($query) or die(oci_error($c)); 

но я получаю oci8 statement Warning: oci_execute(): ORA-00911: invalid character in /path/to/file.php on line 67 где строка 67 соответствует $response .

Значит, что-то не так с $query ? Но я не могу найти, что бы это было. Необработанный sql выполняется отлично из командной строки. get_resource_type($query) дает идентификатор ресурса …

Что я делаю не так?

НЕ включайте ; в вашем SQL. ; не является частью самого SQL, его используют различные SQL-клиенты (например, sql * plus) в качестве разделителя, чтобы отметить конец команд, которые должны быть отправлены на сервер.

Первая ошибка

 $c = oci_connect("user","password","host/dbname") // db_connect() is not true 

вторая ошибка не должна быть «;» в заявлении

 $sql = "SELECT * FROM RUSER WHERE email LIKE '" . $email . "';"; 

должен быть

 $sql = "SELECT * FROM RUSER WHERE email LIKE '" . $email . "'"; 

если вы хотите сравнить лучшего пользователя «=», чем LIKE