Declarer une variable dans un if

nester
Invité n'ayant pas de compte PHPfrance

23 mai 2019, 12:22

Bonjour,

J'essaye de declarer une variable en fonction de la valeur d'une autre dans une boucle if :

Code : Tout sélectionner

$item_number = $_POST['item_number']; if ($item_number = 20) { $unitPrice = 20; } elseif ($item_number = 90) { $unitPrice = 15; } else ($item_number = 120) { $unitPrice = 10; }
Mais ça ne fonctionne pas c'est toujours la première valeur de $unitPrice qui est déclarée

Merci

nester
Invité n'ayant pas de compte PHPfrance

23 mai 2019, 12:25

Correction de mon code, j'utilise deux eslif mais toujours le même probleme

Code : Tout sélectionner

if ($item_number = 20) { $unitPrice = 20; } elseif ($item_number = 90) { $unitPrice = 15; } elseif ($item_number = 120) { $unitPrice = 10; }

Avatar du membre
Mammouth du PHP | 1609 Messages

23 mai 2019, 12:30

Salut, l'opérateur de comparaison d'égalité c'est == pas = qui est un opérateur d'affectation.
Avec le code que tu as écris le premier if sera toujours true puisque tu affectes 20 à $item_number et if (20) est true.
https://www.php.net/manual/fr/language.operators.php
Développeur web depuis + de 20 ans

nester
Invité n'ayant pas de compte PHPfrance

23 mai 2019, 15:43

Ca fonctionne, merci pour l'explication et pour le lien.