Laravel France

E-commerce Laravel

Avatar de Medaille13
Medaille13

Bonjour, je débute totalement, en développement web. Je tiens à le préciser. Je souhaite mettre en place un site e-commerce. Je m'aide des cours que j'ai, de youtube également.

Je suis bloqué sur plusieurs points: le premier : lorsque je souhaite me connecter avec un id et mdp déjà présent dans la base de données, j'ai un retour false alors que je mets les bonnes informations. Ce que je veux c'est un un retour true, et ensuite une redirection.

le second : au niveau du dashboard admin, je souhaite mettre en place un crud, seulement je ne sais pas faire la liaison entre le dashboard pour par exemple modifier ou rajouter des produits afin que ce soit à jour dans la base de données et ensuite accéssible sur le site.

le troisieme : les routes j'ai compris le principe, mais si par exemple sur ma page d'accueil je vais dans inscription, quel lien je dois utiliser pour afficher la bonne vue? Dans le href je dois mettre quoi ?

le quatrième : il y a une méthode mais je ne trouve pas ça très clair, par exemple sur ma page d'accueil je souhaite affiche que 6 produits, hors avec ce que j'ai trouvé sur youtube etc.. j'en ai 11.. Il y a par exemple pour une page produit une url spécial pour mettre des milliers de produit et ne changer qu'une information {id1}, un truc comme ça, j'ai besoin de plus de précisions là-dessus.

Merci pour votre aide. Si je peux apporter des captures d'écran je le fais volontier.

Posté il y a 1 an
Avatar de zimkha
zimkha

Bonjour, Medaille13 1 - Bon pour le premier soucis, je te conseil d'abord de faire une authentification avec email ou username + mpd. Et pour une authentification basic, tu a une requête GET qui envoi deux informations (email, password) tu verifier d'abord par une methode de eloquence User::where('username','Medaille13') -> first(); la deuxieme étape tu recuper le mot de passe aché et tu le compare avec le mot de passe entre avec bcrypt

  • Si les deux passwords sont les mêmes tu return true et tu fais une redirection de return View::make('home.page')->with(array( 'data' => true ))
  • Si non tu renvoi un false avec un return View::make('login_page')->with(array( 'data' => false ))

2- Pour les actions CRUD au niveau de ton Dashbord, D'abord avoir un formulaire qui te permettra de d'enregistrer des données Dans le formulaire ce qui est important ne pas oublié le csrf_token <input name="_token" type="hidden" value="{{ csrf_token() }}"/> de laravel sinon tu aura une erreur 419 :) et dans le formulaire au niveau de l'action renseigner la function quei se chargera de traiter le formulaire l'or de l'envoi (C'est plus simple pour un débutant) <form action="{{ action('ProduitController@saveData') }}" > Et lorsque les données sont envoyées au niveau du server et que tout se passe bien la y'a plusieurs manière de mis a jour l'affiche, le plus simple c'est Ctrl + R :)

Pour la suppression sur la liste des produits affichés dans le dashbord, dans chaque ligne avoir un bouton delete <a class="btn btn-danger" href="/produit/delete/{{$product->id}}" >Supprimer</a> et ce href est une routin qui donne une founction qui recoit en parametre un Id et qui te permet de supprimer

        `          public function delete($id)
                         {
                             try
                            {
                                return DB::transaction(function () use ($id)
                                {
                                    $errors = null;
                                     $data = 0;

                        if($id)
                        {
                            $produit = Produit::find($id);
                            if ($produit!=null )
                            {
                                   $produit->delete();
                                    $produit->forceDelete();
                                    $data = 1;
                            }
                            else
                            {
                                $data = 0;
                                $errors = "Produit inexistant";
                            }
                        }
                        else
                        {
                            $errors = "Données manquantes";
                        }
                        if (isset($errors))
                        {
                            throw new \Exception('{"data": null, "errors": "'. $errors .'" }');
                        }
                        return response('{"data":' . $data . ', "errors": "'. $errors .'" }')->header('Content-Type','application/json');
                    });
                }
                catch (\Exception $e)
                {
                    return response($e->getMessage())->header('Content-Type','application/json');
                }
            }`

Voila une function Transactionnelle qui permet de supprimer une données

Pour tout ce qui est du affichage de données fait de recherche sur la pagination en Laravel c'est simple

Posté il y a 1 an
Avatar de Medaille13
Medaille13

merci pour votre aide

Vous ne pouvez pas répondre à ce sujet.