[RESOLU] Insérer données type int dans BDD

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Insérer données type int dans BDD

Re: [RESOLU] Insérer données type int dans BDD

par JayTricks » 31 mars 2017, 17:41

Oki j'y penserais du coup je le mettrai je te remercie.

Re: [RESOLU] Insérer données type int dans BDD

par moogli » 31 mars 2017, 15:39

attention quand même cela est utile dans certain cas ou le cast n'est pas possible (par exemple une limite ou parfois dans un where).

@+

Re: Insérer données type int dans BDD

par JayTricks » 31 mars 2017, 10:04

Merci pour vos réponses,

@spols au tout début j'avais essayé avec PDO::PARAM_INT en second paramètre. Mais même résultat.

@moogli, le truc c'est que je n'ai pas de message d'erreur j'ai juste pas d'entrée dans ma base de donnée.


EDIT : Bon bah pour qui pour quoi il se trouve qu'aujourd'hui ça marche ^^ effectivement pas besoin de mettre PDO::PARAM_INT il le fait automatiquement mais la dernière fois ça ne marchait pas.

Re: Insérer données type int dans BDD

par moogli » 30 mars 2017, 10:28

salut,

il faut voir s'il y a une erreur parce que généralement les sgbd font du cast auto de string vers int ;)

@+

Re: Insérer données type int dans BDD

par Spols » 30 mars 2017, 08:39

Il faut que tu utilise le 3e paramètres de bindValue pour définir le type de donnée
http://php.net/manual/en/pdostatement.bindvalue.php
tu peux aussi tester l'éxécution de ta requète et faire afficher les messages d'erreur pour t'aider à situer le problème.

Insérer données type int dans BDD

par JayTricks » 29 mars 2017, 19:10

Bonjour tout le monde,

J'ai voulu insérer dans ma BDD différentes valeurs, dans ma table Meubles j'ai des champs dimensions qui sont au format Int mais lors de l'ajout dans la base de donnée comment je procède ?

$req = $bdd->prepare('
                      INSERT INTO users (nom, reference, longueur, largeur, poids)
                      VALUES (:nom, :reference, :longueur, :largeur, :poids)');
$req->bindValue(':nom', $_POST['nom']);
$req->bindValue(':reference', $_POST['reference']);
$req->bindValue(':longueur', $_POST['longueur']);
$req->bindValue(':largeur', $_POST['largeur']);
$req->bindValue(':poids', $_POST['poids']);
$req->execute();

Rien ne s'ajoutait à la BDD, du coup j'ai mis tous mes champs en varchar et cela fonctionne mais ça me pose problème je veux pouvoir les mettre au format INT ou autre à l'avenir lorsque j'aurai besoin de faire des calculs etc...

Merci par avance de me mettre sur la voie.