如何使用JSON从MYSQL中的select中插入数据?

时间:2016-02-09 21:28:11

标签: php android mysql json

目的是我在一个名为“ReciboCliente”的表中有一个成功的INSERT,它是必需的和'userID',但我的android apk只发送'用户名'。我想在INSERT之前创建一个SELECT,以便从“Agente”表中更改'userID'的'username'。这可以解决到Web服务中,但我不能这样做。

这是 Web服务

中的功能
public function insertPolizaCliente2(Request $request)
{

    try {


        //fetch table rows from mysql db
        $connection = mysqli_connect("host", "user_name", "pass", "table");

        $sql = "select id from Agente where userID = ".$request->input('agentes')." limit 1";
        $result = mysqli_query($connection, $sql) or die("Error in Selecting " . mysqli_error($connection));


        //create an array
        //$emparray = array();
        if($row =mysqli_fetch_assoc($result))
        {
            $agent[] = $row;
        }

        $agentes = json_decode($agent[]);


        $id = DB::table('ReciboCliente')
            ->insertGetId([
                'noRecibo' => $request->input('noRecibo'),
                'agenteID' => $agentes,  
                'totalPrima' => $request->input('totalPrima'),
                'montoRecibido' => $request->input('montoRecibido'),
                'nombreCliente' => $request->input('nombreCliente'),
                'ced_RNC_Cliente' => $request->input('ced_RNC_Cliente'),
                'telefonoCelularCliente' => $request->input('telefonoCelularCliente'),
                'telefonoOficinaCliente' => $request->input('telefonoOficinaCliente'),
                'direccionCasaCliente' => $request->input('direccionCasaCliente'),
                'direccionOficinaCliente' => $request->input('direccionOficinaCliente'),
                'conceptoRecibido' => $request->input('conceptoRecibido'),
                'formaPago' => $request->input('formaPago'),
                'descripcionVehiculo' => $request->input('descripcionVehiculo'),
                'chasis' => $request->input('chasis'),
                'Placa' => $request->input('Placa'),
                'cilindro' => $request->input('cilindro'), 
                'tonelada' => $request->input('tonelada'),
                'pasajero' => $request->input('pasajero'),
                'grua' => $request->input('grua'),
                'carcelEspecial' => $request->input('carcelEspecial'),
                'Placa' => $request->input('Placa'),
                'cilindro' => $request->input('cilindro'),
                'created_at' => \Carbon\Carbon::now()->toDateTimeString(),
                'fechaHasta' => \Carbon\Carbon::now()->toDateTimeString(),
                'updated_at' => \Carbon\Carbon::now()->toDateTimeString(),
            ]);






        if(!empty($id)){
            $posts[] = array('data' => 'inserted');
        } else {
            $posts[] = array('data' => 'not inserted');
        }


        return $this->json_response('200', 'successful', $posts);

    }
    catch (Exception $e){
        return $this->json_response('400', 'error', 'bad request');
    }

}

1 个答案:

答案 0 :(得分:0)

您没有创建正确的JSON。改变这个:

if($row =mysqli_fetch_assoc($result)){
        $agent[] = $row;
}

$agentes = json_decode($agent[]);

到此:

if($row = mysqli_fetch_assoc($result)) {
    $agent[] = $row['id'];
}

$agentes = json_decode($agent);