0

こんにちは、私は上記のこのスクリプトに問題があります...それは物事を行いますが、エラーを返します..データベースに正しく変更を加えますが、エラーを返します...どこかに間違いがありますか?

$result = mysql_query(
    "INSERT INTO student (fullname, username, password, group_id) 
     VALUES ('$fullname', '$username', '$password', '$group_id')"
);

if ($result == 'true'){

    $caturi =  $group_id;
    if (isset($_POST['subject'])) {

        foreach ($_POST['subject'] as $cat) {
            $values[]  = sprintf (
                "(%d, '%s')", 
                intval($cat), 
                mysql_real_escape_string($caturi)
            );
        }
        $result2 = "INSERT INTO list (subject_a, group_a) 
                    VALUES " . join(',', $values);
        mysql_query($result2);

    }   

    echo '<p align="center" style="color:#ccc;">Success...</p>';
}
else{
    echo "Error...";
}
4

1 に答える 1

4

mysql_query()true正常に実行された場合、文字列ではなくブール値を返します。

したがって、変更する必要があります

if ($result == 'true')

if ($result == true)またはそれより短い -if ($result)


mysql_*関数は PHP 5.5.0 で非推奨になったため、使用しないでください。

代わりにPDOまたはMYSQLiを使用してください

于 2013-06-05T22:15:25.910 に答える