繁体   English   中英

SQL,PHP,预备语句

[英]SQL, PHP, Prepared Statement

我正在尝试使用准备好的语句从PHP填充我的表。

没有引发任何错误,但是数据没有进入表中。 这是我的代码:

$stmt = $mysqli->prepare("INSERT INTO Parks VALUES (null,?,?,?,?,?,?,?,?,?,?,?,?,?,Now(),?,?,?, 0, 0, 0)");
    if ($stmt === FALSE) {
    die ("Mysql Error: " . $mysqli->error);
    }
    $stmt->bind_param('ssssssssssssssss', $name, $theme, $size, $mountains, $hills, $river, $lake, $island, $setofislands, $ocean, $waterfalls, $file, $image, $description, $author,$cs);

    $stmt->execute();
    $stmt->close();
    $mysqli->close();

提前致谢。

资料类型:

  • ID(整数(自动递增))
  • 名称(varchar(255))
  • 主题(varchar(255))
  • 大小(varchar(255))
  • 山脉(varchar(255))
  • 山(varchar(255))
  • 河流(varchar(255))
  • 湖(varchar(255))
  • 岛(varchar(255))
  • Setofislands(varchar(255))
  • 海洋(varchar(255))
  • 瀑布(varchar(255))
  • 文件(varchar(255))
  • 图片(varchar(255))
  • DateUploaded(日期)
  • 说明(varchar(255))
  • 作者(varchar(255))
  • CS(varchar(2000))
  • 下载(int(255))
  • 评分(双)
  • 文件大小(BigInt(20)

(共21个)

注意:我已经在测试数据库上尝试了准备好的语句,该数据库只有一列,并且有效。

经过一系列的尝试和错误,我能够解决此问题。

看来:

$stmt->bind_param('ssssssssssssssssi', etc
$stmt->exceute();

需要并且列出列名称:

Insert into Parks (name, description) Values (?, ?)

是使其工作所需的更改。 确认一下,现在一切正常,感谢大家对此的支持! :)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM