Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

360
Views
Seguimiento del historial de visualización de videos en Laravel

Quiero crear una aplicación web de transmisión de video. Quiero hacer un seguimiento de los videos vistos por los usuarios. Cuando se inicia el video, se agregará a la tabla de la base de datos llamada "relojes". Tengo 3 mesas para esta operación. Tabla de personas:

 ->person_id ->name ->email ->password

tabla de contenidos:

 ->content_id ->title ->content_type

Tabla de relojes:

 ->watch_id ->person_id(foreign key) ->content_id(foreign key)

Cuando se active el botón de reproducción, se agregará a la base de datos. ¿Cómo puedo hacer eso?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Lo que puede hacer es escuchar el evento de click en el botón Reproducir. Puede lograrlo con JavaScript o algún marco de JavaScript como jQuery (si ya lo está usando en su proyecto). Te mostraré la forma jQuery ya que es más moderna.

En primer lugar, debe crear una nueva ruta que utilizará la técnica de enlace de modelo de ruta.

 use App\Models\ContentModel; use App\Models\WatchModel; use Illuminate\Http\Request; Route::post('increment/{content:content_id}/watches', function(Request $request, ContentModel $content) { if($request->ajax()) { if(WatchModel::where('person_id', '=', auth()->user()->id) ->where('content_id', '=', $content->content_id) ->doesntExists()) { $insert = WatchModel::insert([ 'person_id' => auth()->user()->id, 'content_id' => $content->content_id ]); if($insert) { return response()->json('Successfully incremented the watches!', 200); } } } })->whereNumber('content');

Luego, adjunta un detector de eventos de click al botón y realiza una solicitud AJAX a la ruta que acabamos de crear.

 $("#playButton").on('click', function() { $.ajax({ 'url' : 'https://yoursite.com/increment/{{ $content->content_id }}/watches', 'type' : 'POST', 'data' : { 'user_id' : {{ auth()->user()->id }} } }); });

¡Y eso es! Puede actualizar el código con algo de lógica según sus necesidades. Personalmente, crearía alguna lógica para verificar el primer clic del botón y evitar enviar una solicitud AJAX al servidor en cada clic, pero eso depende de usted.

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!