Requêtes préparées en PDO

[Résolu/Fermé]
Signaler
Messages postés
49
Date d'inscription
vendredi 8 avril 2016
Statut
Membre
Dernière intervention
23 juin 2017
-
Messages postés
49
Date d'inscription
vendredi 8 avril 2016
Statut
Membre
Dernière intervention
23 juin 2017
-
Salut tout le monde :)

J'ai un petit problème en requêtes préparées en PDO :(

Ce que je sais faire c'est : $pdo=$bd>prepare($reqûete);

mais des fois je trouve PDO::prepare() .

SVP, si quelq'un a la gentillesse de m'éclairer cette requête :) et la différence entre les 2 requêtes c'est Urgent

Merci d'avance :)

1 réponse

Messages postés
4270
Date d'inscription
samedi 8 septembre 2007
Statut
Membre
Dernière intervention
4 mars 2021
214
Salut,

Déjà
$pdo=$bd>prepare($reqûete); 
ne fonctionnera pas ^^ (manque un tiret) bref =p

Bon sinon si c'est "urgent" ... dans quels cas tu trouve la syntaxe PDO:: ?

Concrètement c'est pas compliqué, faire
PDO::prepare()
indique que tu veux faire appel à la fonction prepare de type PDO, tandis que
$bd->prepare($reqûete) 
est l'appel de la fonction prepare depuis un objet de type pdo.
Concrètement c'est bien la même fonction appelé, mais pour avoir un appel ' :: ' ca sous entend que tu veux acceder à quelque chose de static (pas d objet).

naga
Messages postés
49
Date d'inscription
vendredi 8 avril 2016
Statut
Membre
Dernière intervention
23 juin 2017

Merci pour votre réponse :)

voici où j'ai trouvé pdo::prepare() :
public PDOStatement PDO::prepare ( string $statement [, array $driver_options = array() ] )

Voici le lien : https://www.php.net/manual/fr/pdo.prepare.php

1) vous pouvez me clarifier la différence entre ' :: ' et ' -> ' svp ?

2) Vous avez dit que '::' c'est un appel pour accéder à quelque chose static ; voici un petit exemple que le prof nous le donne , qu'est ce que signifie la dernier requête : PDO::FETCH-OBJ ?

$prepa$ta = $bd->prepare[SELECT 'bdcommercial'.'FonctionPTTC (:PARAM1,PARAM2) AS prixTTC : ' ]

$prepa$ta->execute($values);

if($resultat=$prepa$ta->fetch (PDO::FETCH-OBJ)){
$valeurRetournee=$resultat -> prixTTC ;
}

merci :)
Messages postés
4270
Date d'inscription
samedi 8 septembre 2007
Statut
Membre
Dernière intervention
4 mars 2021
214
Ok c est ce que je pensais, ce que tu as trouvé c'est juste le prototype de ta fonction, donc pour faire plus simple les :: veulent juste dire que prepare appartient a la classe pdo.

Et quand tu crée un objet PDO, l appel se fera grâce à ->, c'est tout.

Pour PDO::FETCH-OBJ, tu appel une variable statique (c'est a dire qu elle ne demande pas nécessairement qu'un objet existe pour pouvoir être lu, en gros) appartenant au type PDO.

Je vais pas trop rentrer dans les explication des classes statiques, ca sera long et hors contexte.

naga
Messages postés
49
Date d'inscription
vendredi 8 avril 2016
Statut
Membre
Dernière intervention
23 juin 2017
>
Messages postés
4270
Date d'inscription
samedi 8 septembre 2007
Statut
Membre
Dernière intervention
4 mars 2021

J'ai bien compris =D

Merci Naga :)
Messages postés
4270
Date d'inscription
samedi 8 septembre 2007
Statut
Membre
Dernière intervention
4 mars 2021
214
parfais pas de soucis ^^ bon dev!
naga
Messages postés
49
Date d'inscription
vendredi 8 avril 2016
Statut
Membre
Dernière intervention
23 juin 2017
>
Messages postés
4270
Date d'inscription
samedi 8 septembre 2007
Statut
Membre
Dernière intervention
4 mars 2021

merci beaucoup :)