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

Zend_Db PHP Discussion :

update superieur à 0


Sujet :

Zend_Db PHP

  1. #1
    Débutant   Avatar de kaking
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    753
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2008
    Messages : 753
    Points : 262
    Points
    262
    Par défaut update superieur à 0
    Bien le bonjour, bonnes gens !

    dites voir siouplais, ce code la est censé empêcher que mon champs se retrouve avec des valeurs negative, mais il s'en fout royalement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $db->update('influence', array('inf_nb_influence'=>(new Zend_Db_Expr("inf_nb_influence + $value ")<0)?0:new Zend_Db_Expr("inf_nb_influence + $value ")),                 array('inf_id_user  = ?' => $idUser, 'inf_id_faction  = ?' => $idFaction));
    sauriez pas pourquoi siouplais ?


    meeerci !
    fan de Dune et de Monkey Island ? venez voir mon jeu point and click du style du jeu DUNE sorti en 1992 ! DUNE - Moneo au service de l'Empereur-dieu

  2. #2
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2009
    Messages
    736
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2009
    Messages : 736
    Points : 1 101
    Points
    1 101
    Par défaut
    La condition dois être en mysql pas en php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $db->update('influence', array('inf_nb_influence'=> new Zend_Db_Expr("if (inf_nb_influence + $value < 0, 0,  inf_nb_influence + $value)")), array('inf_id_user  = ?' => $idUser, 'inf_id_faction  = ?' => $idFaction));
    A la recherche d'un film : http://chercher-un-film.com

  3. #3
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2009
    Messages
    736
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2009
    Messages : 736
    Points : 1 101
    Points
    1 101
    Par défaut
    Ou tu peu modifier ta colonne dans la base de donné et lui donné en attribut => UNSIGNED
    ou avec une requête Ex
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER TABLE `matable` CHANGE `monchamp` `monchamp` FLOAT( 10, 2 ) UNSIGNED NOT NULL
    comme ça la colonne prendra le zéro par défaut si la valeur passé est inférieure à 0
    A la recherche d'un film : http://chercher-un-film.com

Discussions similaires

  1. premier nombre premier superieur à m=10^100+1
    Par azman0101 dans le forum Mathématiques
    Réponses: 4
    Dernier message: 17/04/2003, 03h23
  2. [dBase]il y a mieux que la commande sql UPDATE ?
    Par sana72 dans le forum Autres SGBD
    Réponses: 4
    Dernier message: 12/12/2002, 11h59
  3. [VB6] [Scrollbar] Valeur maximale supérieure à 32750
    Par néo333 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 11/12/2002, 10h24
  4. Réponses: 3
    Dernier message: 10/11/2002, 11h03
  5. update et virgule
    Par Delph dans le forum Bases de données
    Réponses: 8
    Dernier message: 27/08/2002, 14h40

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