0

重複の可能性:
同じロール番号を追加できません

コードをこのように動作させたいのですが、ロール番号を追加すると、登録に再度追加することはできません..........メールアドレスを登録すると、エラーに次のように表示されます。メールアドレスはすでに取得されています...

関数を作成しています。ロール番号の値が1の場合、エラーが表示され、1でない場合は、エラーが表示されません。

function selectroll($studentname,$rollnumber)
    {
        $sql = "SELECT * FROM tblstuden WHERE studentname = 'studentname' and rollnumber = '$rollnumber';";
        $obj_db = new DB();
        $obj_db->query($sql);

        $row = $obj_db->rsset();
        if{
            $val = 1;
        }
        else{
            $val = 0;
        }
        $obj_db->db_close();
        return $val;
    }


        $this->_id($row[id]);
        $this->_studentname($row[studentname]);
        $this->_rollnumber($row[rollnumber]);
        $this->_classname($row[classname]);
        $obj_db->db_close();
    }


}
 ?>

このメソッドによってページで関数が呼び出されます

<?php

if(isset($_POST['btnSubmit']) and $_GET['action'] == "Add")
{

    $val = $Tblstuden->selectroll($_POST['studentname'],$_POST['rollnumber']);
    if ($val =='1')
    {
    $Tblstuden->copyPostData();
    $Tblstuden->insert();   
    echo"asdf";
    }

    redirect("index.php?page=studentlist"); 

}

else
{
    echo"abc";

    }

?>
4

1 に答える 1

0

あなたはおそらくしたいです

function selectroll($studentname,$rollnumber)     
    {     
        $sql = "SELECT * FROM tblstuden WHERE studentname = 'studentname' and rollnumber = '$rollnumber';";     
        $obj_db = new DB();     
        $obj_db->query($sql);     

        $row = $obj_db->rsset();     
        if ($row){     
            $val = 1;
            $this->_id($row[id]);     
            $this->_studentname($row[studentname]);     
            $this->_rollnumber($row[rollnumber]);     
            $this->_classname($row[classname]);     

        }     
        else{     
            $val = 0;     
        }     
        $obj_db->db_close();     
        return $val;     
    }     
}     
?>

top 関数の 8 行目 - そうしないと、コードはコンパイルされません。


サブノート、コードは mysql インジェクションの対象となります。古い方法に慣れる前に、データベース関数に PDO (http://php.net/manual/en/book.pdo.php) を使用することを検討する必要があります。お願いします。今やれ ;)

于 2012-05-31T08:59:12.050 に答える