douyoupingji7238 2017-03-28 14:19
浏览 43

从一个数据库中选择并使用匹配的行更新到另一个

select a database values and update into another database with same id : where the error i getting is Trying to get property of non-object how can i achieve it is there any solution ??

   $servername = "localhost";
   $username = "root";
   $password = "pass";
   $dbname = "db1";
   $dbname2="db2";


   $conn = new mysqli($servername, $username, $password, $dbname);

   if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
   } 


   $conn2 = new mysqli($servername, $username, $password, $dbname2);

   if ($conn2->connect_error) {
die("Connection failed: " . $conn2->connect_error);
   } 

   $sql = "SELECT * FROM affiliates";
   $result = $conn->query($sql);

   if ($result->num_rows > 0) {
   //output data of each row

      while($row = $result->fetch_assoc()) {
            echo "from db1 id: " . $row["id"]. "publish " .$row["publishinsuppliercontants"]. "<br>";

      $sql2 = "UPDATE a1_affilates_cstm SET publish_in_supplier_contacts_c=".$row["publishinsuppliercontants"]." WHERE id_c=".$row["id"]."";
     $result2 = $conn2->query($sql2);

    $sql2 = "SELECT * FROM a1_affilates_cstm WHERE id_c = ". $row["id"]."";

    $result2=mysqli_query($conn2,$sql2) or die mysqli_error($conn2);
    $row1 = mysqli_fetch_array($result2);
   ///check whether inserted ...
           echo "from db2 id: " . $row1["id_c"]. " - publish: ".row1["publish_in_supplier_contacts_c"]. " <br>";

       }
   } else {
       echo "0 results";
   }
  • 写回答

1条回答 默认 最新

  • duane2364 2017-03-29 07:08
    关注

    It looks like you don't get the result object. Is the SELECT query was successfully ?

    You need to check the select query state/result before make operation with result object.

    For example in your case:

    $sql = "SELECT * FROM affiliates";
    if ( $result = $conn->query($sql) ) {
      if ($result->num_rows > 0) {
         ... some logic ...
    

    From PHP mysqli manual:

    "Returns FALSE on failure. For successful SELECT, SHOW, DESCRIBE or EXPLAIN queries mysqli_query() will return a mysqli_result object. For other successful queries mysqli_query() will return TRUE."

    评论

报告相同问题?

悬赏问题

  • ¥15 使用EMD去噪处理RML2016数据集时候的原理
  • ¥15 神经网络预测均方误差很小 但是图像上看着差别太大
  • ¥15 Oracle中如何从clob类型截取特定字符串后面的字符
  • ¥15 想通过pywinauto自动电机应用程序按钮,但是找不到应用程序按钮信息
  • ¥15 如何在炒股软件中,爬到我想看的日k线
  • ¥15 seatunnel 怎么配置Elasticsearch
  • ¥15 PSCAD安装问题 ERROR: Visual Studio 2013, 2015, 2017 or 2019 is not found in the system.
  • ¥15 (标签-MATLAB|关键词-多址)
  • ¥15 关于#MATLAB#的问题,如何解决?(相关搜索:信噪比,系统容量)
  • ¥500 52810做蓝牙接受端