---
title: "Skriva ut namn en gång vid dubblett"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/163765-skriva-ut-namn-en-gång-vid-dubblett"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "MickeA.com"
published: "2007-08-23T09:24:38.000Z"
updated: "2007-09-05T13:45:31.000Z"
replies: 7
views: 609
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/163765-skriva-ut-namn-en-gång-vid-dubblett"
---

# Skriva ut namn en gång vid dubblett

## #1 — MickeA.com, 2007-08-23T09:24Z

Hej
Skriver ut lite data från ett XML dokument.
Nu vill jag bara skriva ut *$payout-sitename* vid första förekomsten.

Såhär har jag gjort:

```php
foreach($xml->mypayouts->payout as $payout){
	$row_class = ($row_class == "row-even") ? "row-odd" : "row-even";
	print("<tr class=\"" . $row_class . "\">\n"
		 ."<td class=\"table-content\">" . ($sitename == $payout->sitename ? "&nbsp;" : $payout->sitename) . "</td>\n"
		 ."<td class=\"table-content\">" . $payout->datetime . "</td>\n"
		 ."<td class=\"table-content\">" . $payout->period . "</td>\n"
		 ."<td class=\"table-content\">" . $payout->brake . "</td>\n"
		 ."<td class=\"table-content\">" . $payout->bonus . "</td>\n"
		 ."<td class=\"table-content\">" . $payout->nrake . "</td>\n"
		 ."<td class=\"table-content\">" . $payout->rakeback . "</td>\n"
		 ."<td class=\"table-content\">" . $payout->currency . "</td>\n"
		 ."</tr>\n");
	$sitename = $payout->sitename;
}
```

Jag har testat flera olika saker, men får inget att fungera, hur jag än gör, så innehåller alltid *$sitename* sidans namn det aktuella varvet.

Har givetsvis sökt på det här innan, men det jag hittade var radfärgning, något som även finns i min kod ovan och som fungerar, men trots att jag använder samma princip får jag inte ordning på det här.

Tack!

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

## #2 — MickeA.com, 2007-09-04T10:53Z

Efter en veckas semester högg jag tag i det här igen nu, men får det inte att funka.
Har testat en annan variant:

```
$sitename	= "";
foreach($xml->mypayouts->payout as $payout){
	$row_class = ($row_class == "row-even") ? "row-odd" : "row-even";
	if(($payout->sitename != $sitename)){
		$sitename = $payout->sitename;
	}else{
		$sitename = "";
	}
	print(	  "<tr class=\"" . $row_class . "\">\n"
		 ."<td class=\"table-content\">" . $sitename . "</td>\n"
		 ."<td class=\"table-content\">" . $payout->datetime . "</td>\n"
		 ."<td class=\"table-content\">" . $payout->period . "</td>\n"
		 ."<td class=\"table-content\">" . $payout->brake . "</td>\n"
		 ."<td class=\"table-content\">" . $payout->bonus . "</td>\n"
		 ."<td class=\"table-content\">" . $payout->nrake . "</td>\n"
		 ."<td class=\"table-content\">" . $payout->rakeback . "</td>\n"
		 ."<td class=\"table-content\">" . $payout->currency . "</td>\n"
		 ."</tr>\n");
	$sitename = $payout->sitename;
}
```

Men, samma resultat där, det *$sitename* skrivs ut varje varv i loopen, även fast namnet är detsamma.

Tacksam för alla tips!

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

## #3 — Mr T, 2007-09-05T08:48Z

Jag är helt obekant med XML i PHP och kanske vore det enklare om man fick se XML filen, men jag gör ett försök.

 Långsökt men har du prövat att skapa fler site variabler? Borde inte ha den minsta påverkan, men underligare saker har ju hänt så ....

```
$last_sitename       = "";
foreach($xml->mypayouts->payout as $payout){
        $row_class = ($row_class == "row-even") ? "row-odd" : "row-even";
        $this_sitename = $payout->sitename;
        if(($this_sitename != $last_sitename)){
                $text_sitename = $this_sitename;
                $last_sitename = $this_sitename;
        }else{
                $text_sitename = "";
        }
        print(    "<tr class=\"" . $row_class . "\">\n"
                 ."<td class=\"table-content\">" . $text_sitename . "</td>\n"
                 ."<td class=\"table-content\">" . $payout->datetime . "</td>\n"
                 ."<td class=\"table-content\">" . $payout->period . "</td>\n"
                 ."<td class=\"table-content\">" . $payout->brake . "</td>\n"
                 ."<td class=\"table-content\">" . $payout->bonus . "</td>\n"
                 ."<td class=\"table-content\">" . $payout->nrake . "</td>\n"
                 ."<td class=\"table-content\">" . $payout->rakeback . "</td>\n"
                 ."<td class=\"table-content\">" . $payout->currency . "</td>\n"
                 ."</tr>\n");
}
```

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

## #4 — MickeA.com, 2007-09-05T09:28Z

Tack för förslaget, men tyvärr blir resultatet detsamma.
Är det inte här väldigt konstigt?

Går det att deklarera eller typkonvertera variablar i PHP?

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

## #5 — Mr T, 2007-09-05T09:36Z

Har du kollat så att det är exackt samma skrivet. Inga mellanslag, versaler eller gemener som skiljer ?

> **MickeA.com skrev:**
>
> Går det att deklarera eller typkonvertera variablar i PHP?

Förstår inte vad du menar, troligen pga bristande kunsskap innom området. sorry.

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

## #6 — MickeA.com, 2007-09-05T09:53Z

Det här är informationen som skrivs ut:

```
Eurobet 	20070309 	200703 	1000 	500 	1000 	400 	USD
Full Tilt 	20070516 	200701 	234,43 	2,3 	13,4 	23 	SEK
Full Tilt 	20070516 	200702 	24,43 	27,3 	10,4 	23 	SEK
Full Tilt 	20070516 	200704 	23,43 	13,3 	173,4 	23 	SEK
Full Tilt
```

Tanken är ju att "Full Tilt" bara ska skrivas ut en gång.

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

## #7 — andyoumaydie, 2007-09-05T13:28Z

Mina kunskaper i php är obefintliga, men i rimlighetens namn borde det ju vara nåt som blir galet i if-satsen.

Ser att du har dubbla parenteser. Ska det vara det?

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

## #8 — Mr T, 2007-09-05T13:45Z

Rensa variabelerna ex. med chop() så vi vet 100% att det inte ligger ett returnslag eller annan skit någonstanns.

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

---

Tråden på webben: https://www.webforum.nu/amne/php/163765-skriva-ut-namn-en-gång-vid-dubblett
