带有oci的PHP代码

带有oci的PHP代码,php,validation,email,oci8,Php,Validation,Email,Oci8,对于电子邮件验证,检查电子邮件是否存在的条件无法运行,我仍然可以使用相同的电子邮件进行注册。这是电子邮件验证的代码 if ( !filter_var($bemail,FILTER_VALIDATE_EMAIL) ) { $error = true; $emailError = "Please enter valid email address."; } else { **// check email exist or not**

对于电子邮件验证,检查电子邮件是否存在的条件无法运行,我仍然可以使用相同的电子邮件进行注册。这是电子邮件验证的代码

if ( !filter_var($bemail,FILTER_VALIDATE_EMAIL) ) {
        $error = true;
        $emailError = "Please enter valid email address.";
        } else {
        **// check email exist or not**
        $result = oci_parse($connection,"SELECT BUSER_EMAIL FROM 
        POHSENG.BRONTE_USER WHERE BUSER_EMAIL= $bemail");

        $count = oci_num_rows($result);
        if($count!=0){
        $error = true;
        $emailError = "Provided Email is already in use.";



        }
这是整个php代码。我尝试了很多方法来修改它,但它根本不起作用,而在mysqli中它起作用了

<?php
require 'oci_connect_hugo.php';
$error = false;

$count="";
$bname="";
$bemail="";
$baddress="";
$bpass="";
$nameError = "";
$emailError ="";
$addError ="";
$passError = "";
if ( isset($_POST['signup']) ) {
// clean user inputs to prevent sql injections
$bname = trim($_POST['bname']);
$bname = strip_tags($bname);
$bname = htmlspecialchars($bname);

$bemail = trim($_POST['bemail']);
$bemail = strip_tags($bemail);
$bemail = htmlspecialchars($bemail);

$baddress =trim($_POST['baddress']);
$baddress = strip_tags($baddress);
$baddress = htmlspecialchars($baddress);

$bpass = trim($_POST['bpass']);
$bpass = strip_tags($bpass);
$bpass = htmlspecialchars($bpass);

// basic name validation
if (empty($bname)) {
$error = true;
$nameError = "Please enter your full name.";
} else if (strlen($bname) < 3) {
$error = true;
$nameError = "Name must have at least 3 characters.";
} else if (!preg_match("/^[a-zA-Z ]+$/",$bname)) {
$error = true;
$nameError = "Name must contain alphabets and space.";
}

//basic email validation
if ( !filter_var($bemail,FILTER_VALIDATE_EMAIL) ) {
$error = true;
$emailError = "Please enter valid email address.";
} else {
**// check email exist or not**
$result = oci_parse($connection,"SELECT BUSER_EMAIL FROM 
POHSENG.BRONTE_USER WHERE BUSER_EMAIL= $bemail");

$count = oci_num_rows($result);
if($count!=0){
$error = true;
$emailError = "Provided Email is already in use.";




}

if (empty($baddress)) {
$error = true;
$addError = "Please enter your address.";
} 
// password validation
if (empty($bpass)){
$error = true;
$passError = "Please enter password.";
} else if(strlen($bpass) < 6) {
$error = true;
$passError = "Password must have at least 6 characters.";
}
// password encrypt using SHA256();
$bpass = hash('sha256', $bpass);
// if there's no error, continue to signup
if( !$error ) {
$res = oci_parse($connection,"insert into 
POHSENG.BRONTE_USER(BUSER_NAME, BUSER_EMAIL, BUSER_ADDRESS, 
BUSER_PASSWORD)  VALUES('$bname','$bemail','$baddress','$bpass')");
oci_execute($res);
if ($res) {
$errTyp = "success";
$errMSG = "Successfully registered, you may login now";
unset($bname);
unset($bemail);
unset($bpass);
} else {
$errTyp = "danger";
$errMSG = "Something went wrong, try again later...";   
}   
}
}
?>

此函数不返回所选行数!对于SELECT语句,此函数将返回使用oci_fetch*()函数提取到缓冲区的行数。
,请查看OCI8示例。永远不要,永远不要,永远不要,像'BUSER_EMAIL=$bemail'这样的字符串连接是不安全的。使用绑定变量。如果这对您来说都是新的,请检查