How to use implode with arrays obtained from Mariadb PHP columns?

1

Hello, I am trying to return an array for each column of a query where it meets a condition where, and to each element of the array of each column add a ',' but I can not find how to do it, I leave my code:

$sql = "SELECT producto, unidad, cantidad, fecha_de_embarque, notas, etiquetado FROM detalle WHERE orden_de_compra = :orden_de_compra "; 
    $query = $db->prepare($sql);

        $query->bindparam(':orden_de_compra', $orden_de_compra);


        $query->execute();


        $arreglo = $query->fetchAll(PDO::FETCH_ASSOC);//aqui es donde busco obtener un arreglo por columna, para despues agregarle las comas.

         $productos = $arreglo['producto'];
         $unidades = $arreglo['unidad'];
         $cantidades = $arreglo['cantidad'];
         $fecha_de_embarque = $arreglo['fecha_de_embarque'];
         $notas = $arreglo['notas'];
         $etiquetados = $arreglo['etiquetado'];


        $string_productos = implode(",", $productos);

             $string_unidades = implode(",", $unidades);
             $string_cantidades = implode(",", $cantidades);
                     $string_fechas = implode(",", $fecha_de_embarque);

             $string_notas = implode(",", $notas);
             $string_etiquetados = implode(",", $etiquetados);

I would really appreciate your help, I'm stuck with this

    
asked by Daniel Treviño 05.10.2017 в 08:30
source

1 answer

1

As I mentioned, the use of only fetch_all here is not enough to achieve your goal. In addition you would have to do the following:

<?php 
$sql = "SELECT producto, unidad, cantidad, fecha_de_embarque, notas, etiquetado FROM detalle WHERE orden_de_compra = :orden_de_compra "; 
$query = $db->prepare($sql);

$query->bindparam(':orden_de_compra', $orden_de_compra);


$query->execute();


$filas = $query->fetchAll(PDO::FETCH_ASSOC);

$productos = [];
$unidades = [];
$cantidades = [];
$fecha_de_embarque = [];
$notas = [];
$etiquetados = [];

foreach ($filas as $arreglo) {
    $productos[] = $arreglo['producto'];
    $unidades[] = $arreglo['unidad'];
    $cantidades[] = $arreglo['cantidad'];
    $fecha_de_embarque[] = $arreglo['fecha_de_embarque'];
    $notas[] = $arreglo['notas'];
    $etiquetados[] = $arreglo['etiquetado'];
}


$string_productos = implode(",", $productos);

$string_unidades = implode(",", $unidades);
$string_cantidades = implode(",", $cantidades);
$string_fechas = implode(",", $fecha_de_embarque);

$string_notas = implode(",", $notas);
$string_etiquetados = implode(",", $etiquetados);

echo $string_productos;
echo $string_unidades;
echo $string_fechas;
echo $string_notas;
echo $string_etiquetados;

Now we are processing all the results obtained from the database and organizing them into arrays (arrays) to fulfill our purpose.

    
answered by 05.10.2017 в 09:16