我正在尝试将数据从简单表单发送到 PostgreSQL 数据库,但我的服务器日志显示错误Query failed: ERROR: invalid input syntax for integer
有问题的代码部分是:
形式:
<form action="insert.php" method="post">
[removed]
Total Pages: <input type="number" name="totalPages" id="totalpages"><br><br>
<input type="submit"> </form>
错误消息中指示的 insert.php 中的行:
pg_query("INSERT INTO books(coverurl, title, author, genre, totalpg)
VALUES('".$_POST['coverURL']."','".$_POST['title']."','".$_POST['author']."','".$_POST['genre']."','".$_POST['totalpages']."')");
在网上环顾四周,我找到了提到不正确使用'
和"
符号的解决方案,但这只会导致其他语法错误。
编辑:没有提到totalpg
在我的数据库中是一个 smallint
解决方案:感谢 JoDev 的帮助,更改'".$_POST['totalpages']."'
为".intval($_POST['totalPages'])."
,现在可以完美运行。