PHP Javascript e php
Sumario
Introducción
- Neste módulo se presupón que o alumno xa coñece javascript, ao cursar o módulo Desenvolvemento Web en Contorno Servidor, polo que non se vai explicar o funcionamento de Javascript ou JQuery.
- O que imos ver neste apartado é como integrar información que ven do servidor en scripts de Javacript/jquery empregando Laravel. Lembrade que tedes neste mesma wiki unha entrada no que se explica o funcionamento de Laravel.
Exemplos de uso
- Partindo do proxecto feito en Laravel de xestión dunha táboa imos facer diferentes exemplos de uso Laravel-Javascript
Confirm personalizado
- Cando pedimos confirmación para borrar un dato, podemos obter o nome do dato e amosalo como parte da cadea de confirm.
@foreach ($perfumes as $perfume) <tr> <td>{{ $perfume->descripcion }}</td> <td>{{ $perfume->prezo }}</td> <td>{{ $perfume->data_compra }}</td> <td> <a style='text-decoration:none' href="{{ route('perfumes.edit', ['perfume' => $perfume->id]) }}">Modificar</a> <form action="{{ route('perfumes.destroy', ['perfume' => $perfume->id]) }}" method="POST" style="display:inline;"> @csrf @method('DELETE') <input type="hidden" name="id" value="{{ $perfume->id }}"> <button type="submit" onclick="return confirm('Estás seguro de eliminar o perfume {{ $perfume->descripcion }}?');" style="background:none;border:none;color:blue;cursor:pointer;">Eliminar</button> </form> </td> </tr> @endforeach
Alertas javascript con datos do servidor
- Cando damos de alta un novo perfume, o id xerado aparece en pantalla.
- Imaxinemos que queremos enviar o dato a unha función javascript que amose cun alert o id xerado.
- Creamos o arquivo resources/views/mensaxes/alertas_javascript.blade.php
@if (Session::has('javascriptalert') && !empty(Session::get('javascriptalert'))) <script> var msg = '{{Session::get('javascriptalert')}}'; alert(msg); </script> @endif
- Basicamente estamos a preguntar se existe a variable de sesión 'javascriptalert' para amosar o contido cun alert.
- Incluimos dito arquivo na vista resources/views/perfumes/form_alta_perfumes.blade.php
- O poñemos nesta vista xa que cando damos de alta un perfume nos mantemos nesta pantalla. Se non fora o caso, por exemplo, se cargamos index, teríamos que poñelo nesa.
.......... @include('mensaxes.alertas_javascript') @endsection
- Agora no controlador cando queiramos enviar a mensaxe do novo perfume creado: Arquivo: app/Http/Controllers/PerfumeController.php
........... return redirect(route('perfumes.create'))->with(['idPerfume' => $perfume->id])->with('javascriptalert',"Perfume creado correctamente có id $perfume->id");
-- Ángel D. Fernández González -- (2024).