---
title: "strlen i if sats"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/50060-strlen-i-if-sats"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Cactuz"
published: "2002-08-11T15:14:33.000Z"
updated: "2002-08-11T15:53:20.000Z"
replies: 9
views: 199
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/50060-strlen-i-if-sats"
---

# strlen i if sats

## #1 — Cactuz, 2002-08-11T15:14Z

```
if ($_POST['Hej'] == $_POST['abc'] || strlen($_POST['abc'] > 3){
echo "hej";
} else {
echo "nej";
}
```

Det spelar ingen roll hur mkt strlen($\_POST\['Pass'\] är. Den skriver ändå ut hej.

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

## #2 — Matte, 2002-08-11T15:21Z

Du saknar en avslutande parentes för strlen()

```
if ($_POST['Hej'] == $_POST['abc'] || strlen($_POST['abc']) > 3){
```

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

## #3 — Cactuz, 2002-08-11T15:27Z

Det gjorde ingen skillnad. Även om abc är 2 så skriver den ut hej iaf.

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

## #4 — Matte, 2002-08-11T15:37Z

Vad får du för utfall av detta:

```
echo $_POST['Hej']."<br>";
echo $_POST['abc']."<br>";
echo strlen($_POST['abc'])."<br>";
if ($_POST['Hej'] == $_POST['abc'] || strlen($_POST['abc']) > 3){
echo "hej";
} else {
echo "nej";
}
```

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

## #5 — Cactuz, 2002-08-11T15:40Z

jag kör redan med echo strlen($\_POST\['abc'\]); efter if satsen o då skriver den 2.. (om den är då lång)

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

## #6 — Cactuz, 2002-08-11T15:41Z

och Hej och abc kollar jag oxå o dom är lika

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

## #7 — Matte, 2002-08-11T15:46Z

Du har två vilkor i din if-sats

1\. $\_POST\['Hej'\] ska vara lika med $\_POST\['abc'\]
2\. Längden på strängen $\_POST\['abc'\] ska vara längre än 3

Om minst ett av dessa villkor uppfylls så skrivs "Hej" ut annars skrivs "nej" ut.

Vad jag ville se var vad som stoppades in i if-satsen, alltså en felsökning, som kan hjälpa till att förstå varför det inte fungerar.

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

## #8 — Cactuz, 2002-08-11T15:48Z

hmm... visste att jag tänkte snett...

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

## #9 — Matte, 2002-08-11T15:49Z

> **Cactuz skrev:**
>
> och Hej och abc kollar jag oxå o dom är lika

Alltså SKA "hej" skrivas ut.

Det är inte detta du söker:

```
if ($_POST['Hej'] == $_POST['abc'] && strlen($_POST['abc']) > 3){
```

 Båda villkoren måste vara uppfyllda för att "hej" ska skrivas ut.

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

## #10 — Cactuz, 2002-08-11T15:53Z

exakt :) men jag kan inte tänka klart idag

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

---

Tråden på webben: https://www.webforum.nu/amne/php/50060-strlen-i-if-sats
