Bonjour,

Nouveau sur laravel ... je suis actuellement en train de patiner sur l'utilisation d'une formule toute simple en PDO dans un fichier des controllers celle ci :

$bdd = new PDO('mysql:host=localhost;dbname=zut', 'root', '');

        $reponse=$bdd->query("SELECT COUNT(*) FROM user_int WHERE USR_LOGIN='".addslashes($login)."' AND USR_PWD='".addslashes($password)."'");

        $resultbdd = $reponse->fetch();

        $reponse->closeCursor();

J'ai opté pour la PDO pour des soucis de simplicité (déja que je m'aventure sur un nouveau frameworks ... une brique à la fois ! ) et aussi car j'utilise plusieurs base de données sur mysql et également une sur sqlserver.

Mes appels dans les vue fonctionnent ... mais pas dans les controllers ....

Avez vous une idée

Merci d'avance

3 réponses


Zut
Auteur
Réponse acceptée

Trouvé ....
Pour utiliser mon script , il faut tout simplement indiquer ceci dans les import ....

use PDO;

Merci quoi qu'il en soit pour votre aide
Cordialement

Bonjour.
Tu devrais tout simplement commencer par suivre Formation PHP » Laravel 5.1 ainsi que les Tutoriels Laravel puis consulter la documentation de Laravel, car tu y verra que le Framework met à disposition l'utilisation d'un ORM.
Mais je crois bien que ton principal problème, est que tu ne sait pas exactement comment fonctionne le design pattern MVC.
Car dans le code que tu montres, tu récupères peut-être des données de la BDD, mais tu ne les transmets pas à la vue.

Zut
Auteur

Bonjour de bon matin et merci pour votre réponse ...
Concernant mon soucis je ne peux malheureusement utiliser Eloquent...
Ceci est un projet utilisant en tout 7 BDD, 1 perso et 6 clientes (uniquement en lecture, et certaines contiennent plus de 100 tables et vont jusqu'à 900mo ).
Je ne cherche pas à transmettre des infos à une vue ci dessus, mais juste à faire un flag et redirigé vers une vue ou une autre . Je vous mets le code ci dessus, vous comprendrez mieux :

<?php

namespace App\Http\Controllers;

use App\Http\Requests\MbcRequest;

class MbcController extends Controller
{
    public function create()
    {
        return view('mbc');
    }

    public function store(MbcRequest $request)
    {

        $mbc=$request->mbc;
        $password=$request->password;

        $bdd = new PDO('mysql:host=localhost;dbname=zut', 'root', '');
        $reponse=$bdd->query("SELECT COUNT(*) FROM user_int WHERE USR_LOGIN='".addslashes($mbc)."' AND USR_PWD='".addslashes($password)."'");
        $resultbdd = $reponse->fetch();    
        $reponse->closeCursor();

        if($resultbdd[0]==1)
        {
            return view('confirm_mbc');
        }
        else{
            return view('mbc');
        }   

    }
}

Comme vous pouvez le voir c'est un truc tout simple !?!
Si vous avez une idée merci d'avance (quoi qu'il en soit merci d'avoir répondu une 1ere fois ! )