【问题标题】:POST issue with submitting into 2 different database提交到 2 个不同的数据库的 POST 问题
【发布时间】:2013-11-01 18:50:00
【问题描述】:

我是 PHP 开发新手

当我尝试向数据库提交数据时遇到一些问题 这是我试图插入到数据库名称主题和图像中的代码。

$user = '1';
    $title = mysql_real_escape_string($_POST['title']);
    $msg = mysql_real_escape_string($_POST['msg']);
    $date = date('Y-m-d H:i:s');

    $img= "";
    $iname = $_FILES['file_1']['name'];
    $temp4 = $_FILES['file_1']['tmp_name'];
    move_uploaded_file($temp,"upload/".$iname);
    $path = "upload/".$iname;

    if (isset($_POST['submit']))
    {
    $sql = mysql_query("INSERT INTO topic (UserID, Title, MsgBody, DateTime)     VALUES('".$user."', '".$title."', '".$msg."', '".$date."')");
    $sql2 = mysql_query("INSERT INTO image (TopicID, ImgPath)    VALUES('".mysql_insert_id()."', '".$path."')");

   }
   else 
   {
    echo "error";
   }    

【问题讨论】:

  • 您面临什么问题?你有错误吗?没有插入数据?错误的数据?一些正确的数据?
  • 你真的应该使用 mysqli 而不是 mysql
  • 没有插入数据。我尝试通过 $title='test'; 插入数据$msg='test';$path='/upload/1.jpeg';查询有效
  • 能否请您添加错误以及表格架构。

标签: php


【解决方案1】:

在这种情况下,您需要执行超过 1 个查询的情况下使用事务。链接在下面给出Transaction from stackoverflow

【讨论】:

    【解决方案2】:

    您的代码中的一切似乎都很好除了 mysql_insert_id 函数。根据您使用的 PHP 版本,它从 PHP 5.5.0 开始已弃用。请参阅 documentation

    【讨论】:

    • 插入工作正常我尝试在没有表单的情况下运行。数据可以插入数据库
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-13
    • 2019-02-26
    • 1970-01-01
    • 1970-01-01
    • 2011-02-23
    • 2018-09-27
    相关资源
    最近更新 更多