如何将PHP中的字符串数据插入MySql表

如何将PHP中的字符串数据插入MySql表,php,mysql,Php,Mysql,如何将这些字符串数据从PHP插入MySQL表中,我可以让代码运行,但不能插入数据库 php代码: <?php //mysql connection $connect_error = 'Sorry, the database server is down. Please try again later.'; mysql_connect('xxxxxxxxx.com', 'xxxxxxx', 'xxxxxxxxx') or die($connect_error); mysql_select_

如何将这些字符串数据从PHP插入MySQL表中,我可以让代码运行,但不能插入数据库

php代码:

<?php

//mysql connection
$connect_error = 'Sorry, the database server is down. Please try again later.';
mysql_connect('xxxxxxxxx.com', 'xxxxxxx', 'xxxxxxxxx') or die($connect_error);
mysql_select_db('checkbox_test') or die($connect_error);

if (isset($_POST['submit'])) {
    if (isset($_POST['subject'])) {
        $strsubject = implode(",", ($_POST['subject']));
    } else {
        $strsubject = "";
    }

    echo $strsubject;
}

mysql_query("INSERT INTO levels (level_1, level_2, level_3, level_4, level_5, level_6) VALUES ($strsubject");
?>
html:

<form action="" method="post" name="form_subject" id="form_subject">

    <input type="checkbox" name="subject[]" value="level_1"><label>Level 1</label><p>    
    <input type="checkbox" name="subject[]" value="level_2"></label>Level 2</label><p>  
    <input type="checkbox" name="subject[]" value="level_3"></label>Level 3</label><p>   
    <input type="checkbox" name="subject[]" value="level_4"><label>Level 4</label><p>    
    <input type="checkbox" name="subject[]" value="level_5"></label>Level 5</label><p>       
    <input type="checkbox" name="subject[]" value="level_6"></label>Level 6</label><p>

    <input type="submit" action= "" name="submit"  value="Submit" />

</form>
数据库表有7列,1列表示设置为A_I的id,其余列表示每个级别。
我是web开发新手,谢谢各位

您的INSERT语句中缺少一个右括号,就在$strsubject之后,在以下语句之前:

这可能不是唯一的问题

在PHP中,像JS、C++和java一样,人们不只是把变量放到另一个变量中。使用正确的concat字符:

不要使用mysql_*函数

在PDO中使用准备好的语句:


@igasparetto本教程在十年前就过时了。请检查我的答案。当我试图理解这个答案时,我的大脑可能会出现重复。Java在这里做什么?什么是将一个变量放入另一个变量?这些水果和卡路里在这里有什么作用?为什么最后会出现同样的危险代码?
mysql_query("INSERT INTO levels (level_1, level_2, level_3, level_4, level_5, level_6) 
                    VALUES ($strsubject")
$what      = "lazr!";
$variable1 = "firin " . $what;

$sql = "....SET column1='" . $data1 . "')";
<?php
/* Execute a prepared statement by passing an array of values */
$sth = $dbh->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < ? AND colour = ?');
$sth->execute(array(150, 'red'));
$red = $sth->fetchAll();
$sth->execute(array(175, 'yellow'));
$yellow = $sth->fetchAll();
$strsubject = "'" . implode("', '", ($_POST['subject'])) . "'";