MySQL 上的语法错误


Syntax error on MySQL

我们正在做一个学校项目。我们尝试使用一些简单的MySQL将来自单个HTML文本形式的数据存储到MySQL数据库中。

我的 HTML 看起来像这样:

<form action="sql/tilmeld-sms.php" method="post">
        <h2>Tilmelding til SMS:</h2>
        <input type="text" name="sms">
        <input type="submit" value="Submit">
        </form>

我们的 SQL 看起来像这样:

<?php
$connect = mysql_connect(“localhost”, “ODBC”, “”); if (!connect) { die('Connection Failed: ' . mysql_error()); { mysql_select_db(“database_name”, $connect);
$user_info = “INSERT INTO sms (sms) VALUES ('$_POST[sms]')”; if (!mysql_query($user_info, $connect)) { die('Error: ' . mysql_error()); }
echo “Your information was added to the database.”;
mysql_close($connect); 
?>

当我们在本地主机上运行它时,我们在第 4 行出现语法错误。这意味着这行代码有问题:

$user_info = “INSERT INTO sms (sms) VALUES ('$_POST[sms]')”; if (!mysql_query($user_info, $connect)) { die('Error: ' . mysql_error

我们知道这是非常简单的MySQL。但这是我们第一次使用它,也是我们第一次尝试将HTML表单中的数据存储到mysql数据库中。

其他信息:

  • 数据库名称: projekt32
  • 数据库主机:本地主机
  • 用户名:ODBC(我们读到这是本地主机的一般用户名(视窗(
  • 密码
  • :我们读取的本地主机上没有密码
  • 表名:短信

编辑:这是我们得到的错误代码:

Parse error: syntax error, unexpected 'INTO' (T_STRING) in C:'xampp'htdocs'projekt-3-2'sql'tilmeld-sms.php on line 4

编辑2:这是一个学校项目,MySQL是这个项目的一部分。我们不使用它就无法通过,因此建议我们可以做的其他事情而不是MySQL是行不通的,但无论如何都要感谢!

您使用的是反引号而不是双引号/单引号。

更新:

$connect = mysql_connect('localhost', 'ODBC', '');
if (!connect) {
  die('Connection Failed: ' . mysql_error());
} // ALSO Use } instead of { here.
mysql_select_db('database_name', $connect);

$user_info = "INSERT INTO sms (sms) VALUES ('".$_POST['sms'] ."')";

试试这个

<label for="sms">SMS</label>
                    <input id="sms" type="text" name="sms" />
<input type="submit" name="add" id="add" value="Go">


$sms = kontroll_form_data_string($_POST['sms'], 100);
if ( isset( $_POST['add'] ) ) {
                $db = mysql_connect('localhost', 'ODBC', '');
                mysql_select_db("projekt32") or die(mysql_error());
                    $insert = "INSERT INTO sms(sms) VALUES('$sms')";
                    if(mysql_query($insert)) {
                      echo("Done");
                    }
}
我认为

,您应该尝试"mysql_real_escape_string",mysql_real_escape_string失败和预准备语句是必要的具体示例

$connect = mysql_connect(“localhost”, “ODBC”, “”); if (!connect) { die('Connection Failed: ' . mysql_error()); { mysql_select_db(“database_name”, $connect);
$sms = mysql_real_escape_string($_POST[sms]);
$user_info = “INSERT INTO sms (sms) VALUES ('$sms')”; if (!mysql_query($user_info, $connect)) { die('Error: ' . mysql_error()); }
echo “Your information was added to the database.”;
mysql_close($connect); 

我希望这对你有所帮助。