【问题标题】:textarea to mysql description dont work [closed]mysql描述的textarea不起作用[关闭]
【发布时间】:2012-11-24 20:23:59
【问题描述】:

我真的看不出我的代码中的问题 - 我认为它可能是 SQL 查询。我犯了一个错误,但我无法真正发现它,这是我第一次与 textareas 合作。

所以,如果你对它有很好的理解,我真的很期待你的解决方案。

<?php 
ob_start();
?>
<?php include_once "includes/connection.php"; ?>
<h1>Outputting Games from the Database</h1>
<?php

// Connection to the Database


// Quering the database and outputting
$sql = "SELECT * FROM menu";
$result = mysql_query($sql);

if (mysql_num_rows($result) > 0) {

while($row = mysql_fetch_array($result)) {

echo $row['id'] . ' - ' . $row['name'] . ' - ' . $row['description'] . '<br />';

    }

}

// Insert the Data into the database
// Tjekker om formen er blevet sendt
if (isset($_POST['name'])) {

    $name = $_POST['name']; // Ligger titlen i en php variable
    $description = mysql_real_escape_string($_POST['description']);

    $sql = "INSERT INTO menu(name, description) VALUES( {'$name' . '$description')}";

    // Vi laver et tjek om den er blevet indsat i databasen
    // Hvis der ikke skal være noget tjek kan du gøre lige som her:
    // mysql_query($sql);
    // bare slette denne if statement
    if (mysql_query($sql)) {
        header('location: insert.php');
    }

}

?>

<h1>Insert new game title</h1>
<form action="insert.php" method="post">

<input type="text" name="name" />
<textarea name="description"></textarea>
<input type="Submit" value="Insert Game Title" />

</form>

问题是我可以用“name”的名称上传我的输入
但我无法将我的描述包含在内。
基本上我的查询失败了:

$description = mysql_real_escape_string($_POST['description']);
$sql = "INSERT INTO menu(name, description) VALUES( {'$name' . '$description'} )";

对比:

    $sql = "INSERT INTO menu(name) VALUES('$name')";

        if (isset($_POST['name'])) {

    $name = $_POST['name']; // Ligger titlen i en php variable
    $description = mysql_real_escape_string($_POST['description']);

    $sql = "INSERT INTO menu(name, description) VALUES( {'$name' . '$description'} )";

    // Vi laver et tjek om den er blevet indsat i databasen
    // Hvis der ikke skal være noget tjek kan du gøre lige som her:
    // mysql_query($sql);
    // bare slette denne if statement
    if (mysql_query($sql)) {
        header('location: insert.php');
    }

    }

如果您能找到解决方案,非常欢迎您提供帮助。

【问题讨论】:

  • 您好,这需要先进行基本调试,需要对问题进行更详细的描述。哪里出了问题?你遇到了什么错误?
  • 我没有真正得到任何错误,我的脚本运行但我的数据库没有任何反应...
  • 那么第一步就是调试了。 $_POST['description'] 包含的内容是“如果”条件是否满足...

标签: mysql textarea


【解决方案1】:

您已注释掉查询的执行:

// mysql_query($sql);

其次:尝试更改 SQL:

$sql = "INSERT INTO menu(name, description) VALUES( '".$name."', '".$description."' )";

尝试将 SQL 查询打印到您的页面并查看它的内容。

print $sql."<br>";

如果查询失败,也打印 mysql_error()。

mysql_query($sql) or die ("ERROR: ".mysql_error());

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-10-19
    • 2018-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-31
    • 2014-12-13
    • 2014-06-25
    相关资源
    最近更新 更多