---
title: "If slinga"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/187467-if-slinga"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Gimbo"
published: "2011-07-20T21:11:42.000Z"
updated: "2011-07-21T17:31:23.000Z"
replies: 13
views: 1512
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/187467-if-slinga"
---

# If slinga

## #1 — Gimbo, 2011-07-20T21:11Z

Hej,

Varför fungerar inte nedan if slinga? det den visar är bild1 hela tiden även om variabel är test1 så visar den test.png då den i själva verket bör visa test1.png

```
<?php if ($produkt = "test"):?>
<img src="/images/test.png">
<?php elseif ($produkt = "test1"):?>
<img src="/images/test1.png">
<?php elseif ($produkt = "test2"):?>
<img src="/images/test2.png">
<?php endif?>
```

tacksam för all hjälp...

Permalänk: https://www.webforum.nu/p/187467

## #2 — voigtann1, 2011-07-20T21:16Z

varför skall du skriva det på det sättet?

```
<img src="/images/<?php echo $produkt?>.png" />
```

annars när du skall kolla if frågor så är det två =

Permalänk: https://www.webforum.nu/p/2281118

## #3 — Gimbo, 2011-07-20T21:25Z

När jag använder == visas ingen bild alls, verkar som att den inte kollar elseif satsen?

Permalänk: https://www.webforum.nu/p/2281119

## #4 — voigtann1, 2011-07-20T21:37Z

Detta ser för det första så ser det ut att en if fråga är extremt överflödig och om du nu måste ha någon sådan logik så är en switch sats något du borde använda dig av hellre i detta exemplet.

Permalänk: https://www.webforum.nu/p/2281121

## #5 — voigtann1, 2011-07-20T21:41Z

testade:

```
<?php
$produkt = "test1";
?>
	
<?php if ($produkt == "test"):?>
<img src="/images/test.png">
<?php elseif ($produkt == "test1"):?>
<img src="/images/test1.png">
<?php elseif ($produkt == "test2"):?>
<img src="/images/test2.png">
<?php endif?>
```

fungerade för mig, vad fungera inte?

Permalänk: https://www.webforum.nu/p/2281122

## #6 — Gimbo, 2011-07-20T23:23Z

Bilden dyker inte upp och när jag kolalr källkoden så finns inte ens img taggen, dvs inget skrivs ut...

Permalänk: https://www.webforum.nu/p/2281124

## #7 — Gimbo, 2011-07-20T23:31Z

verkar som att det blir något galet med min variabel antingen att ett blanksteg smyger sig in eller något, jag deklererar min variabel genom följande kod som jag fick utav andersN

```
<?
 $currentFile = $_SERVER['REQUEST_URI'];
 $parts = Explode('/', $currentFile);

 $subs=$parts[count($parts) - 1];
 $parts2 = Explode('-', $subs);
 //echo $parts2[0];
 //$parts2 = test1;
?>
```

när jags kriver test1 för variabeln så fungerar det, men när jag däremot använder koden så fungerar det inte, testade att smyga in en trim() runt explode, men det fungerar inte heller, då jag skriver ut variabeln så skriver den ut test1 men jag misstänker blanksteg, någon aning om hur jag kan trimma det?

Permalänk: https://www.webforum.nu/p/2281125

## #8 — Gimbo, 2011-07-21T00:10Z

Blir galen på d här, har testat med alla sorts trim utan att d funkar, har testat rtrim($parts2) på variabeln, samt str_trim(" ","", $parts2)

utan framgång...

Permalänk: https://www.webforum.nu/p/2281126

## #9 — Oldtimer, 2011-07-21T09:40Z

Det framgår inte av din kodsnutt vad du sätter variablen $produkt till.

Om du misstänker blanksteg, så skriv ut den omgärdad av kända tecken så att du ser om den innehåller blanksteg.

Permalänk: https://www.webforum.nu/p/2281127

## #10 — kluringen, 2011-07-21T09:48Z

För många start och sluttaggar

En if/elsif sats måste hänga ihop i en logisk följd. Det  som ska utföras om villkoret är sant måste skrivas inom {} "måsvigar" och utgöras av PHP-kod. Det ska heller inte vara kolon efter parentesen som innehåller villkoret.

Permalänk: https://www.webforum.nu/p/2281128

## #11 — voigtann1, 2011-07-21T10:02Z

> **[kluringen skrev:](https://www.webforum.nu/p/1537603)**
>
> En if/elsif sats måste hänga ihop i en logisk följd. Det  som ska utföras om villkoret är sant måste skrivas inom {} "måsvigar" och utgöras av PHP-kod. Det ska heller inte vara kolon efter parentesen som innehåller villkoret.

Det går att skriva if frågor på detta sätt också <http://php.net/manual/en/control-structures.alternative-syntax.php>

är det verkligen "test" du har och inte "Test"? Detta är inte samma sak heller.

Permalänk: https://www.webforum.nu/p/2281129

## #12 — kluringen, 2011-07-21T10:43Z

Tack voigtann1

Man lär så länge man lever! Tänk vad ett litet ":" bjuder på möjligheter. Att kunna mixa PHP och HTML kod på detta sätt är kanon så klart.

Permalänk: https://www.webforum.nu/p/2281133

## #13 — Ledel, 2011-07-21T10:49Z

Sätter du $produkt = $parts2\[0\]; i din kod? Så du inte sätter $produkt till hela $parts2-arrayen?

Permalänk: https://www.webforum.nu/p/2281134

## #14 — Gimbo, 2011-07-21T17:31Z

gahhhh Tack för hjälpen! det var att jag inte satte variabeln som $parts2 = $parts2\[0\]

jag skriver ut det som parts2\[0\] men deklarerar inte det till variabeln! så dum man får va, men nu funkar det! tack för hjälpen!

Permalänk: https://www.webforum.nu/p/2281153

---

Tråden på webben: https://www.webforum.nu/amne/php/187467-if-slinga
