IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Laravel PHP Discussion :

Envoi donnée en GET et récupération dans la vue


Sujet :

Laravel PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de legrandse
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Décembre 2010
    Messages
    354
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Décembre 2010
    Messages : 354
    Par défaut Envoi donnée en GET et récupération dans la vue
    Ben oui, le titre en dit long. Bref je débute avec des essais et erreurs mais j'avance petit à petit

    Explication:
    Je souhaite utiliser un paramètre GET de l'URL pour adapter ma vue.
    Pour ce faire, j'ai une méthode Update comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    public function update(Booking $booking)
        {
        	 	
            // Validation des données
    	$data = request()->validate([
    	'arrival' => ['required'],
    	'departure' => ['required'],
    	'total' => ['required']
    	]);
    	
    	$booking->update($data);
    	return redirect('/admin/bookings/'.$booking->house_id)
    	->with('ok', 'La réservation a bien été modifiée')
    	->with('booking_id',$booking->id);
        }
    et dans la redirection je lui ajoute le paramètre "booking_id" et sa valeur.

    Dans ma vue, je tente de récupérer celui-ci mais ma ligne de table ne prend pas la classe "alert alert-info":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    @foreach ($bookings as $booking)
    	<tr {{request('booking_id') == $booking->id ? 'class="alert alert-info" ' : ''}} >bla bla </tr>
    @endforeach
    Quelle est mon erreur ?

    Merci pour votre aide.

  2. #2
    Membre éclairé Avatar de legrandse
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Décembre 2010
    Messages
    354
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Décembre 2010
    Messages : 354
    Par défaut
    Bon je lis que l'utilisation de with() implique des données en session alors que je pensais que cela pouvait être en GET.

    Admettons le code de mon controleur RESTful:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    namespace App\Http\Controllers;
     
    use Illuminate\Http\Request;
    use Illuminate\Support\Facades\DB;
    use App\Booking;
    use App\House;
    use App\Agency;
    use App\Customer;
    use App\Booking_status;
    use App\Event;
    class BookingsController extends Controller
    {
     
    public function update(Booking $booking)
        {
     
        	// Validation des données
    		$data = request()->validate([
    			'arrival' => ['required'],
    			'departure' => ['required'],
    			'total' => ['required']
    		]);
    		$booking->update($data);
    	      return redirect('/admin/bookings/'.$booking->house_id)
    	     ->with('ok', 'La réservation a bien été modifiée')
    	     ->with('booking_id',$booking->id);
     
        }
    Mon fichier web.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Route::resource ('/admin/bookings', 'BookingsController');
    Pourquoi ma vue ne tient pas compte de la récupération de la session "booking_id" alors que j'arrive à afficher la session "OK"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    <!-- Alert Content -->
    		@if (session('ok'))
    			@alert(['type' => 'success' ])
    			{{ session('ok') }}
    			@endalert
    		@endif
    ...
    
     <tbody>
    @foreach ($bookings as $booking)
    	<tr {{session('booking_id') == $booking->id ? 'class="alert alert-info" ' : ''}} >
    	 <td><a href="/admin/bookings/{{$booking->id }}/edit"<i class="fa fa-user-o fa-lg" aria-hidden="true"></i></a></td>
    	</tr>
    @endforeach
     </tbody>
    Est-ce ma condition ternaire qui est fausse ?
    Comment puis-je contrôler que ma session est bien récupérée ?

    Je ne sais plus quoi en penser...

  3. #3
    Membre éclairé Avatar de legrandse
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Décembre 2010
    Messages
    354
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Décembre 2010
    Messages : 354
    Par défaut
    J'ai trouvé !

    Une bête erreur dans la structure de ma condition ternaire corrigée comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <tr class="{{session('booking_id') == $booking->id ? 'alert alert-info' : ''}} ">

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Récupération de donnée dans la vue
    Par guillaume40 dans le forum MVC
    Réponses: 8
    Dernier message: 20/06/2009, 21h29
  2. Réponses: 4
    Dernier message: 12/01/2009, 09h25
  3. [MySQL] Envoi mail auto en fonction date dans base de donnée
    Par calitom dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 30/06/2008, 15h17
  4. [MySQL] Récupération dans un text area de données apres une requète
    Par sexy-meta dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 14/12/2006, 17h29
  5. [AJAX] probleme de récupération de donnée par GET
    Par Death83 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 13/06/2006, 17h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo