0

我已经创建了 php,并在 mysql 数据库中插入了 php 函数。我不确定如何使用数组来检查是否 >= 1 并显示错误消息。

我有commit.php代码:

switch ( $_GET['action'] ) {
    case "Insert":
        $courseid = $_POST['courseid'];

        if( $courseid[0] > 1 ) {
            echo "Course ID Already in Exists<br/>";
        } else {
            $insertSQL = sprintf( "INSERT INTO tbl_course ( courseid, coursename, classstatus, startdate, starttime, enddate, endtime, ccc, venue, tutorid, remarks) VALUES ( %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s )",
            GetSQLValueString( $_POST['courseid'], "text" ),
            GetSQLValueString( $_POST['coursename'], "text" ),
            GetSQLValueString( $_POST['classstatus'], "text" ),
            GetSQLValueString( $_POST['startdate'], "text" ),
            GetSQLValueString( $_POST['starttime'], "text" ),
            GetSQLValueString( $_POST['enddate'], "text" ),
            GetSQLValueString( $_POST['endtime'], "text" ),
            GetSQLValueString( $_POST['ccc'], "text" ),
            GetSQLValueString( $_POST['venue'], "text" ),
            GetSQLValueString( $_POST['tutorid'], "text" ),
            GetSQLValueString( $_POST['remarks'], "text" ) );

            mysql_select_db( $database_conn, $conn );
            $Result1 = mysql_query( $insertSQL, $conn ) or die( mysql_error() );

            $insertGoTo = "tc_success.php?action=Insert&tcid=" .$_POST['courseid'];
        }

但是,它不适用于此代码。

4

2 回答 2

0

在 mysql 中查询并检查这个 coursid 是否已经存在。如下更改您的代码。

    case "Insert":
        $courseid = $_POST['courseid'];

        $result = mysql_query('SELECT 1 from tbl_course WHERE courseid = $courseid');
        if( mysql_num_rows( $result )> 1 ) {
            echo "Course ID Already in Exists<br/>";
        } else {   
            //other code here
        } 

注意:不推荐使用 mysql_* 函数,使用 mysqli 或 PDO

于 2013-11-13T04:57:13.207 回答
0

添加唯一约束并检查结果。

alter table tbl_course add unique index(courseid);
于 2013-11-13T04:49:59.293 回答