gpt4 book ai didi

php - (MySQL/PHP) 使用 PHP 将数据插入 MySQL 表

转载 作者:行者123 更新时间:2023-11-29 13:05:05 24 4
gpt4 key购买 nike

我正在开发一个用于电影评论的网络应用程序。我正在编写创建评论的页面,但在将新评论上传到 MySQL 数据库的数据方面遇到问题。当我提交新评论时,我收到创建成功的消息,但数据库保持不变。

POST 数据由位于同一页面上的表单收集。

连接.php:

<?php
$connection = mysql_connect('localhost', 'root', '');
if (!$connection){
die("Database Connection Failed" . mysql_error());
}
$select_db = mysql_select_db('mydb');
if (!$select_db){
die("Database Selection Failed" . mysql_error());
}
?>

这是我的 PHP 代码:

<?php
session_start();
require("connect.php");
if(isset($_SESSION['critic_name'])){
$movie_id=NULL;
if (isset($_POST['reviewmovie']) && isset($_POST['rating'])){
$movie_title = $_POST['reviewmovie'];
$review_title = $_POST['review_title'];
$movie_id = mysql_query("SELECT movie_id FROM Movies WHERE 'movie_title'=".$_POST['reviewmovie']." ") or die(mysql_error());
$mem_id = mysql_query("SELECT mem_id FROM Members WHERE 'critic_name'=".$_SESSION['critic_name']." ") or die(mysql_error());
$rating = $_POST['rating'];
$comments = $_POST['comments'];
$result = mysql_num_rows($movie_id);
$result2 = mysql_num_rows($mem_id);
if(!$result && !$result2){
$query = mysql_query("INSERT INTO `Reviews` (review_id, rating, comments, mem_id movie_id, review_title) VALUES ('$rating', '$comments', '$mem_id', '$movie_id', '$review_title')");
if($query){
$msg = "Review Created Successfully.";
}
}
}
}
?>

最佳答案

删除 WHERE 'movie_title'WHERE 'critic_name' 中的引号,这些是列名称而不是变量。如果您绝对想将它们包裹在某些东西中,请使用反引号```。

另外,将 ".$_POST['reviewmovie']." 更改为 '".$_POST['reviewmovie']."'".$_SESSION['critic_name']."'".$_SESSION['critic_name']."'

您还忘记了 mem_idmovie_id 之间的逗号(这会破坏您的查询)。

(review_id, rating, comments, mem_id movie_id, review_title)
^ // <- right there

将其更改为:

(review_id, rating, comments, mem_id, movie_id, review_title)
<小时/>

旁注:您当前的代码对 SQL injection 开放。使用mysqli_*功能。 (我建议您将 and 与 prepared statementsPDO 一起使用)

<小时/>

脚注:

mysql_* 函数弃用通知:

http://www.php.net/manual/en/intro.mysql.php

从 PHP 5.5.0 开始,此扩展已被弃用,并且不建议用于编写新代码,因为它将在将来被删除。相反,要么 mysqliPDO_MySQL应使用扩展名。另请参阅MySQL API Overview在选择 MySQL API 时获取更多帮助。

这些函数允许您访问 MySQL 数据库服务器。有关 MySQL 的更多信息,请访问 » http://www.mysql.com/ .

MySQL 文档可以在 » http://dev.mysql.com/doc/ 找到.

关于php - (MySQL/PHP) 使用 PHP 将数据插入 MySQL 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22825851/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com