簡體   English   中英

MySQL怎么了?

[英]What's wrong with MySQL?

INSERT不起作用,不確定為什么。

db.php:

function check($value)
{
    if ($value)
        return htmlspecialchars(stripslashes(trim($value)));
    else
        return null;
}

$db_host = 'localhost';
$db_user = 'root';
$db_pass = '';
$db_name = 'cart';

$connect = mysql_connect($db_host, $db_user, $db_pass) or die ('no connect');
mysql_select_db($db_name) or die ('no db');

function add($name, $price, $description, $image)
{
    global $connect;

    $sql = "INSERT INTO items (name, price, description, image)
            values ('{$name}', '{$price}', '{$description}', '{$image}');";
    $query = mysql_query($sql, $connect);

    if (!$query)
        die(mysql_error());

    mysql_close($connect);
}

add.php:

header('Content-Type: text/html; charset=utf-8');
mb_internal_encoding('utf-8');
include_once('./db.php');

$name = check($_POST['name']);
$price = check($_POST['price']);
$description = check($_POST['description']);
$image = check($_POST['image']);

if ($name && $price && $description && $image)
{
    add($name, $price, $description, $image);
    echo 'sent';
}

當我sent信息,我在沒有新的行items表。 我使用phpmyadmin進行檢查。

使用以下代碼創建數據庫(通過安裝腳本):

function reset_mysql()
{
    global $connect;

    $sql = "CREATE TABLE items (
        id INT AUTO_INCREMENT NOT NULL,
        name VARCHAR(50) NOT NULL,
        price VARCHAR(10) NOT NULL,
        description VARCHAR(200) NOT NULL,
        image VARCHAR(30) NOT NULL,
        primary key (id)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;";

    $query = mysql_query($sql, $connect);

    if (!$query)
        die(mysql_error());

    mysql_close($connect);
}

怎么了?

$ sql =“將項目插入值(”,'$ name','$ price','$ description','$ image')“;

更新

最后通過將mysql_connect替換為add函數來修復:

function add($name, $price, $description, $image)
{
    global $db_host, $db_user, $db_pass, $db_name;

    $connect = mysql_connect($db_host, $db_user, $db_pass) or die ('no connect');
    mysql_select_db($db_name) or die ('no db');

    $sql = "INSERT INTO items (name, price, description, image)
            values ('{$name}', '{$price}', '{$description}', '{$image}');";
    $query = mysql_query($sql, $connect);

    if (!$query)
        die(mysql_error());

    mysql_close($connect);
}

感謝所有評論,您真棒!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM