Si la valeur décimale = 0, comment afficher un message TEXTE ? - PHP - Programmation
Marsh Posté le 13-01-2006 à 17:24:41
Code : |
Marsh Posté le 13-01-2006 à 17:28:46
J'ai été grilled, c'est bizare, j'allais proposer quasiment la même chôse.
Marsh Posté le 13-01-2006 à 18:26:36
masklinn a écrit :
|
Merci beaucoup !!!
Alors pour aller plus loin,
La valeur 0.00 = N/D : ok !
J'ai une autre valeur 1.00 (sachant que je n'ai aucun produit à 1.00 ) = N/A (non applicable)
Comment rajouter une seconde instruction ?
Code :
|
Ca ne marche pas bien évidemment
dois mettre un parse ; ou un if ? else if ?
Merci de ton aide !
Marsh Posté le 13-01-2006 à 18:37:19
ReplyMarsh Posté le 13-01-2006 à 18:38:45
ReplyMarsh Posté le 13-01-2006 à 18:57:38
ReplyMarsh Posté le 13-01-2006 à 19:11:25
smaragdus a écrit : parce que visiblement tu ne connais pas ce langage |
J'avais compris ouvert "un post" sur le PHP !
Une doc, oui, j'ai PHP/MySQL de JM Defrance, j'ai appris beaucoup...mais je sèche aussi par moments.
J'ai commencé il y a trois mois.
Ta question ne m'aide pas beaucoup !!
J'aurais préféré une réponse constructive
bon, ce n'est pas grave, je vers chercher....
Je sais qu'il faut mettre une condition
Code :
|
???ça irait ça ?
Marsh Posté le 13-01-2006 à 19:34:24
carrément pas.
l'opérateur ternaire à une syntaxe du type :
$var = (expression à tester) ? (expression à renvoyer si test = true) : (expression à renvoyer si test = false)
Marsh Posté le 13-01-2006 à 19:41:11
donc chez toi ca doit être :
Code :
|
Marsh Posté le 13-01-2006 à 19:44:14
Mouais, vu qu'il y a de multiples conditions, laisse tomber l'opérateur ternaire et revient au if...elseif... classique (ou au switch dans ton cas).
(j'adore le double opérateur ternaire, dans le genre illisible )
Marsh Posté le 13-01-2006 à 19:56:27
naceroth a écrit : Mouais, vu qu'il y a de multiples conditions, laisse tomber l'opérateur ternaire et revient au if...elseif... classique (ou au switch dans ton cas). |
Merci pour toutes vos réponses
Ternaire pour moi c super compliqué et nouveau, mais à lire Ritzle, si deux conditions, ça peut se faire non ?
Je penchais plutôt (après renseignements et relecture et visite du site des zéro ) pour un if elseif. Je vais plancher et vous tiens au courant !
Marsh Posté le 13-01-2006 à 20:00:58
ritzle a écrit : donc chez toi ca doit être :
|
Oui mais non, le ternaire c'est pour faire de l'inline quand on a un seul choix simple, avec 2+ choix soit elle fait des suites de if/elseif soit (beaucoup mieux dans son cas) elle utilise un switch/case avec une condition default
Marsh Posté le 13-01-2006 à 20:01:12
naceroth a écrit : |
je l'utilise surtout en C
Marsh Posté le 13-01-2006 à 20:01:53
masklinn a écrit : Oui mais non, le ternaire c'est pour faire de l'inline quand on a un seul choix simple, avec 2+ choix soit elle fait des suites de if/elseif soit (beaucoup mieux dans son cas) elle utilise un switch/case avec une condition default |
je suis d'accord, mais j'essayais de reprendre ce qu'elle avait commencé
Marsh Posté le 13-01-2006 à 20:03:55
coxine a écrit : Merci pour toutes vos réponses |
Si je suis pas fan de l'opérateur ternaire dans ce cas là, c'est juste pour une question de lisibilité du code, y en a qui arrive à relire ça simplement, c'est pas trop mon cas donc voilà
Marsh Posté le 13-01-2006 à 20:11:40
ritzle a écrit : donc chez toi ca doit être :
|
RITZLE MERCI MERCI ça fonctionne bien, reste à ne pas se planter quand on va implémenter dans la base de nouvelles références, 0= N/D et 1= N/A !
Et en plus je viens d'apprendre qqch avec toi !
Je vais me "documenter" sur le ternaire, ça simplifie bcp de choses pour moi qui débute.
J'imagine qu'avec plein de conditions, ça complique les choses !
Bonne soirée à tous et bon WE !
Marsh Posté le 13-01-2006 à 20:17:53
quand il y a plusieurs conditions avec des valeurs précises et numériques à tester il vaut mieux utiliser un switch
Marsh Posté le 13-01-2006 à 20:24:48
ternaire veut dire "a trois membre" de même que binaire veut dire "a deux membre" et unaire "a un membre" (jamais entendus le mot "unaire" avant de lire le premier chapitre du bouquin sur la certification php)
Marsh Posté le 13-01-2006 à 20:35:55
coxine a écrit : |
Remplace moi tout de suite cette horreur par un switch/case
Code : |
(enfin un truc du style, je sais plus ce que ça donne exactement en PHP, mais ça doit pas être loin)
Marsh Posté le 13-01-2006 à 21:03:52
ReplyMarsh Posté le 13-01-2006 à 21:05:53
smaragdus a écrit : hmmm, le truc bien pensé si un jour y a un produit qui coute 1 euro |
Tu supprimes le case
Marsh Posté le 13-01-2006 à 21:18:55
Hum, le truc bien pensé s'il y a un jours un produit qui coute 1.50 euro ou 0.90 euros.
Que je sache, le switch attend un entié et du coup il ignorera tous les chiffres aprés la virgule. Pour un systéme de gestion d'affichage des prix, ca me semble pas être la meilleure structure possible. A la place, je viserais plustôt une structure à base de "if/elseif".
Marsh Posté le 13-01-2006 à 21:24:29
omega2 a écrit : Que je sache, le switch attend un entié |
En C peut être.
(et accessoirement, c'est pas un système de gestion des prix c'est l'affichage du prix, il y a 2 valeurs "magiques", t'en veux pas 15 non plus )
Marsh Posté le 13-01-2006 à 21:32:33
"gestion d'affichage des prix" pas "gestion des prix". C'est pas pour rien que j'avais mis le "d'affichage".
Mais bon, autant pour moi, visiblement en php, le case peut prendre n'importe quoi (je me demande comment ca réagit face à un tableau ou un object. )
Marsh Posté le 13-01-2006 à 21:34:29
omega2 a écrit : "gestion d'affichage des prix" pas "gestion des prix". C'est pas pour rien que j'avais mis le "d'affichage". |
Il fait de la merde, c'est le principe de base de ce langage après tout
Marsh Posté le 13-01-2006 à 22:26:42
omega2 a écrit : "gestion d'affichage des prix" pas "gestion des prix". C'est pas pour rien que j'avais mis le "d'affichage". |
Le truc c'est que le case peut parfaitement recevoir autre chose qu'une valeur fixe. Par exemple
Code :
|
fonctionne parfaitement.
(bon, mon exemple est bateau je sais, c'est juste pour le principe)
Marsh Posté le 14-01-2006 à 07:40:07
Ca aurait été quand même plus propre d'utiliser un champ dans la base spécifique à ce que tu cherches à faire
Car là jouer sur la valeur du prix, c'est possible mais après c'est du grand n'importe quoi
tout comme faire un site de e-commerce sans avoir aucune connaissance en développement informatique
Tu nous fileras l'adresse de ton site pour qu'esox_ch et moi on vienne te dévaliser hein ?
Marsh Posté le 14-01-2006 à 09:19:49
ce qui risque d'être drôle c'est la partie paiement / fdp, en général les débutants s'arrêtent là
Marsh Posté le 14-01-2006 à 16:11:12
oulà, je n'ai pas vu toutes vos réponses, j'ai vu rapidement la proposition de switch case...
Je dois sortir mes enfants
Je reviendrais ce soir étudier tout ça.
En attendant, dans mon catalogue, je fais des "calculs"
Code :
|
Pour l'affichage des résultats, qui sont actualisés si l'ionternaute choisi deux prodtuis de la même référence.
tout va bien.
Je veux afficher l'économie réalisée
Donc j'ai mis :
Code :
|
Car je m'étais aperçue qu'il me sortait : 50.333333333333333333333 % par exemple
Ok ça marche quand je mets des produits ds le panier.
Si je supprime les produits et que je reste dans la même session (sinon, j'affiche : votre panier est vide et là pas de soucis)
"Economie réalisée de
Warning: Division by zero in /var/www/free.fr/9/5/site/home/panier.php on line 171
0 % "
Z'avez une soluc ????? Sinon je fais économie réalisée en et non en pourcentages
Merci d'avance
Marsh Posté le 14-01-2006 à 16:38:26
C'est bien ce qu'on dit, tu es mal barrée pour faire ton truc car tu n'as aucunes connaissances en développement informatique.
Il n'y a même pas d'analyse, aucun cahier des charges, ni de specs fonctionnelles ou techniques. alors développer sans ça c'est se jeter du haut d'un immeuble.
Enfin c'est comme ça que je conçoit un projet
Marsh Posté le 14-01-2006 à 16:46:14
Je partage la même analyse que Gatsu35
Faire un site d'e-commerce sans avoir un minimum de connaissance en programmation, c'est du n'importe quoi.
Coxine, si tu as des problème pour afficher un nombre, je n'ose imaginer les problèmes que tu auras quand tu vas faire le paiement sécurisé ou la gestion des factures
Marsh Posté le 14-01-2006 à 18:57:27
smaragdus a écrit : Je partage la même analyse que Gatsu35 |
Merci.
Je vous trouve super agressifs et trop sérieux, Smaragus et Gatsu35, dans vos jugements.
Vous n'avez que ça à faire, vous moquer des "débutants" ?
Gatsu, il faudrait en plus que je donne tout le squelette du projet ? Pourquoi te permets-tu de dire ça ????
Ici ce n'est pas un forum où les gens postent pour avoir de l'aide ????,
Je précise que le dév n'est pas mon métier (je suis designeuse à la base), je fais ça pour rendre service, mais à priori, ce n'est pas votre tasse de thé "rendre service". Et pourquoi me justifier pour répondre à ces remarques futiles ????
Je crois que je vous ai assez ennuyé, je retourne dans ma prairie de moutons.....
Marsh Posté le 14-01-2006 à 18:59:21
Justement on te rend service en te prévenant qu'il faudra pas pleuré quand ton site se fera exploser par un hacker
Marsh Posté le 14-01-2006 à 18:59:53
coxine a écrit : Merci. |
Ils sont également honnêtes, un site d'e-commerce, c'est extrèmement difficile à faire, ça demande pas mal de connaissances, et c'est dangereux.
Tenter d'en faire un quand ce n'est pas son métier c'est se donner de grandes chances de se manger un mur.
Ils te le disent, après tu fais ce que tu veux de leurs déclarations.
Marsh Posté le 14-01-2006 à 19:06:59
masklinn a écrit : Ils sont également honnêtes, un site d'e-commerce, c'est extrèmement difficile à faire, ça demande pas mal de connaissances, et c'est dangereux. |
oulàlà
Ce n'est pas un site d'e-commerce, je ne me serais pas risquée là dedans !!! Et je n'ai pas la prétention de prendre le métier des développeurs pros.
Et l'association ne m'aurait pas confié ça non plus
J'essaye juste d'aller un peu plus loin....puis leur proposer. Si je n'y arrive pas, pas grave.
Je suis experte en XHTML / CSS, mais pas en programmation php, pas du tout.
Elargir son champ de connaissance, y trouver un intérêt, c'est ça mon but.
Etre honnetes, oui ! Mais être "ironiques" non !
J'avoue que je prends mal ce genre de remarques, qui ne sont pas fondées, car...effectivement, je ne vous ai pas livré le cahier des charges du "projet" comme ils disent
Mon métier actuel : mère au foyer sans emploi J'm'occupe, j'ai du temps à perdre
Marsh Posté le 14-01-2006 à 19:09:45
gatsu35 a écrit : Ca aurait été quand même plus propre d'utiliser un champ dans la base spécifique à ce que tu cherches à faire |
Je me marre
C'était le but ????
Marsh Posté le 14-01-2006 à 19:17:56
coxine a écrit : ...
|
Vérifier avant de faire le calcul que $total_neuf n'est pas égal à 0 ? On a déjà donner plusieurs exemples de syntaxe en if (ou opérateur ternaire), ça devrait pas être difficile à adapter non ?
(enfin, perso, j'ai plus de mal avec le design qu'avec la prog, donc )
Marsh Posté le 14-01-2006 à 19:19:44
coxine a écrit : oulàlà |
Gestion de panier, possibilité de passer commande en ligne voir de payer, désolé mais c'est du commerce électronique
Marsh Posté le 14-01-2006 à 19:41:19
naceroth a écrit : Vérifier avant de faire le calcul que $total_neuf n'est pas égal à 0 ? On a déjà donner plusieurs exemples de syntaxe en if (ou opérateur ternaire), ça devrait pas être difficile à adapter non ? |
hehe, tu veux un logo ?
Je pense avoir compris pourquoi...
Si je vide le panier, une fois la session ouverte, il est là virtuellement, mais sans références, et sans prix.
Donc, le total = 0
Je vais plancher sur une condition
Code :
|
ou bien suite à vos conseils :
Code :
|
Sinon, pour mes champs prix dans lesquels effectivement, non dispos et non applicables...je bien conscience que ce n'est pas du tout pro de mettre des "case" avec les valeurs 0 et 1.
Ca m'enquiquine un peu de rajouter deux champs dans ma table...dans mais je pense que si j'arrive à sortir mon "panier devis"...car les gens doivent se déplacer pour acheter, je ne me risquerais pas à ce qu'ils intègrent une valeur 1 !!!
Marsh Posté le 13-01-2006 à 17:22:00
Bonjour je suis super débutante en PHP, j'ai développé un catalogue de produits.
Dans la base, le champ 'prix' a la valeur 'decimal 5,2'
Pour chaque référence, j'ai un prix_neuf, et un prix_occasion.
Pour certaines références, les tarifs_neuf (ou occasion) ne sont pas disponibles ponctuellement, donc le prix est "N/D"
J'ai besoin d'afficher toutes les références de mon catalogue, car certaines ont un 'prix neuf' et 'd'occasion', et d'autres seulement 'neuf'.
Bien évidement, dans ma base, tous les produits que j'ai rentrés en "N/D" prennent la valeur 0.00
Quelle condition poser avant l'affichage du tarif, pour que la valeur 0.00 prenne la valeur "N/D" ?
Merci par avance de votre aide, je n'ai peut-être pas assez donné d'informations, n'hésitez pas à me le faire savoir !.