如何解决PHP错误“注意:数组在…中转换为字符串”

时间:2018-09-25 01:57:30

标签: php mysql arrays

我一直在阅读与此相关的每个线程,但是我总是弄错了。

请帮助,因为我总是会收到错误消息

<?php   

require_once 'core.php';

$valid['success'] = array('success' => false, 'messages' => array(), 'order_id' => '');

if($_POST) {    

$orderDate = date('Y-m-d', strtotime($_POST['orderDate'])); 
$clientName = $_POST['clientName'];

$sql = "INSERT INTO orders (order_date, client_name, order_status) VALUES ('$orderDate', '$clientName', 1)";

$order_id;
$orderStatus = false;
if($connect->query($sql) === true) {
    $order_id = $connect->insert_id;
    $valid['order_id'] = $order_id; 
    $orderStatus = true;
}

$orderItemStatus = false;

$orderItemSql = "INSERT INTO order_item (order_id, id_bahan, kuantiti, jenis_kuantiti, harga_per_unit, jumlah, order_item_status) 
VALUES ('$order_id', '".$_POST['namaBahan']."', '".$_POST['kuantiti']."', '".$_POST['jenisKuantiti']."', '".$_POST['harga']."', '".$_POST['jumlahValue']."', 1)";

$connect->query($orderItemSql);

$valid['success'] = true;
$valid['messages'] = "Successfully Added";      

$connect->close();

    echo json_encode($valid);
}

但是当代码运行时,我会收到如下错误:

  

注意:数组到字符串的转换   C:\ xampp \ htdocs \ inventori \ php_action \ createOrder.php,第25行

     

注意:数组到字符串的转换   C:\ xampp \ htdocs \ inventori \ php_action \ createOrder.php,第25行

     

注意:数组到字符串的转换   C:\ xampp \ htdocs \ inventori \ php_action \ createOrder.php,第25行

     

注意:数组到字符串的转换   C:\ xampp \ htdocs \ inventori \ php_action \ createOrder.php,第25行

     

注意:数组到字符串的转换   第25行的C:\ xampp \ htdocs \ inventori \ php_action \ createOrder.php   {“ success”:true,“ order_id”:1,“ messages”:“已成功添加”}

1 个答案:

答案 0 :(得分:2)

也许您可以尝试在$_POST行之前回显$orderItemSql = ...数据,以查看其中包含的内容:

echo '<pre>'.print_r($_POST, true).'</pre>';

这至少应该告诉您您要在SQL插入中尝试使用的任何$_POST数据是否不是字符串。