簡體   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