Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

164
Vistas
Mostrar ID de transacción en la vista de clientes

He estado creando un sistema laravel de comercio electrónico y he tenido problemas para mostrar a los clientes su identificación de transacciones después de que hayan completado todos sus pagos. Estoy usando una API para realizar la transacción. Después de que el usuario haya realizado con éxito el pago, la identificación de la transacción se guarda en la base de datos. Ahora, quiero tomar la identificación de la transacción y mostrarla en la vista de clientes para que puedan imprimir una factura. Aquí está el controlador que se supone que debe manejar toda la identificación de la transacción:

 public function confirmPayment(Request $request){ $request->validate(['transactionId'=>'required']); $transId = $request->transactionId; $exists = Payment::where('mpesa_trans_id',$transId)->latest()->first(); if(!$exists){ $error= ["success"=>false, "error"=>"Unable to confirm your transaction code. Please contact admin.. :)"]; session($error); return back(); } $message = ["success"=>true, "message"=>"Payment successful!"]; session($message); return back(); }

Así es como he intentado mostrar la identificación de la transacción en la vista de clientes

 <div class="frm-grp"> <label>@lang('Transaction Id')</label> <input type="text" name="transactionId" placeholder="@lang('Example: OIB9FQP9H7')"> <span class="text-box">Your Transaction Id Is</span> <span>{{$transId->transactionId}}</span> </div>

Lo que también me da un error 'Variable no definida: transId'. No puse el @foreach todavía.

¿Puede alguien ayudarme a encontrar la solución a este problema? Aquí es donde se supone que se muestra la identificación de la transacción después de que el cliente realiza un pago.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Las variables declaradas en el controlador no están automáticamente disponibles para la vista, especialmente cuando estás haciendo una redirección.

Para pasar variables a una vista en laravel, debe incluirlas en el segundo parámetro de la función de view :

 return view('transaction.show', ['transId' => $transId]);

Sin embargo, está redirigiendo a la ruta anterior, por lo que no puede hacerlo. En su lugar, debe hacer que esa variable esté disponible de alguna otra manera.

Los datos de la solicitud anterior deberían estar disponibles utilizando el método old que creo que funcionaría en su caso:

 <span>{{ old('transId') }}</span>
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda