---
title: "Räkna antal e-vykort"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/69035-räkna-antal-e-vykort"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "sorhh"
published: "2003-02-22T11:03:30.000Z"
updated: "2003-02-24T15:45:51.000Z"
replies: 20
views: 382
page: 1
pages: 2
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/69035-räkna-antal-e-vykort"
---

# Räkna antal e-vykort

_Sida 1 av 2._

## #1 — sorhh, 2003-02-22T11:03Z

Jag är rätt så ny i PHP-världen men ni förstår nog.

Så här ser det ut i "textdatabasen" som ligger utanför www-roten: 
\-\>

<mailadress1@regerar.com>¦¦mailadress2@regerar.com¦¦Namn1¦¦Namn2¦¦**NUMMER**¦¦Meddelande¦¦Session-kod

\<-

Hur gör jag för att räkna antal gånger tex. **50** finns i "fältet" NUMMER? Det borde väl gå?
Så här skriver jag ut **NUMMER** 

```php
<?php echo"$data[4]"; ?>
```

 

Detta är alltså för att kunna räkna antal gånger ett e-vykort är skickat. <http://www.regerar.com/e-kort/ekortstart.php>

Blir glad för lite hjälp!

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

## #2 — rIkLuNd, 2003-02-22T13:05Z

Har **NUMMER** olika värden för varje rad i "databasen", eller finns det bara 1 rad i den??

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

## #3 — sorhh, 2003-02-22T14:05Z

Det är blir en ny rad för varje e-kort som skickas. Dvs. en massa olika värden.

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

## #4 — rIkLuNd, 2003-02-22T14:12Z

gör nåt som det här:

```php
// ladda filen
$load = file("databas.txt");
// loopa igenom datan
for($i = 0; $i < count($load); $i++)
{
   // splitta den!
   $data = explode("||",$load[$i]);
   // räkna det nummer som finns i den här raden!
   $number[$data[4]]++;
}

// låt oss kolla på resultatet
echo "<pre>\n";
print_r($number);
echo "</pre>\n";
```

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

## #5 — sorhh, 2003-02-22T14:23Z

Ok tack, men exakt var ska jag skriva tex. 43 för att kolla hur många gånger det är skickat?

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

## #6 — rIkLuNd, 2003-02-22T14:24Z

```php
echo $number[43];
```

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

## #7 — sorhh, 2003-02-22T14:31Z

```php
<?php
// ladda filen
$load = file("databasen.txt");
// loopa igenom datan
for($i = 0; $i < count($load); $i++)
{
   // splitta den!
   $data = explode("||",$load[$i]);
   // räkna det nummer som finns i den här raden!
   $number[$data[4]]++;
}

// låt oss kolla på resultatet
echo "<pre>\n";
print_r($number);
echo "</pre>\n";
?>

<?php
echo $number[43];
?>
```

 

Förlåt om jag är lite efter. Är det såhär du menar?

Det här blir resultatet: <http://www.regerar.com/e-kort/antal.php>

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

## #8 — rIkLuNd, 2003-02-22T14:42Z

det verkar som att det inte funkar... \*hmm\* är det verkligen \|\| som separerar värdena från varandra??

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

## #9 — sorhh, 2003-02-22T16:33Z

Nja, det är ¦¦ fast det kanske inte är nån skillnad.

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

## #10 — rIkLuNd, 2003-02-22T17:13Z

den här borde fungera:

```php
// ladda filen
$load = file("databas.txt");
// loopa igenom datan
for($i = 0; $i < count($load); $i++)
{
   // splitta den!
   $data = explode("¦¦",$load[$i]);
   // räkna det nummer som finns i den här raden!
   $number[$data[4]]++;
}

// låt oss kolla på resultatet
echo "<pre>\n";
print_r($number);
echo "</pre>\n";
```

ändrade \|\| till ¦¦

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

## #11 — sorhh, 2003-02-22T20:44Z

Det funkade felfritt, tack så mycket! 
Kanske återkommer senare ang. en e-kortstopplista  ;)

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

## #12 — rIkLuNd, 2003-02-23T01:22Z

gör det...  :birp

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

## #13 — sorhh, 2003-02-23T01:29Z

:birp

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

## #14 — sorhh, 2003-02-23T21:55Z

Det verkar funka riktigt fint det här. Men hur gör jag om jag vill ha en 0:a när kortet inte har skickats nån gång alls. 
Försökte knåpa lite själv med if osv. men det gick inge bra.

Kanske nån som kan hjälpa mej? :OO

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

## #15 — rIkLuNd, 2003-02-24T13:18Z

finns de raderna inte i databasen eftersom de aldrig skickats?

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

## #16 — sorhh, 2003-02-24T13:25Z

Nej, det blir en ny rad för varje skickat e-kort. Själva e-korten finns inte i nån databas. 
När ett kort inte är skickat står det ingenting. Kan man byta ut ingenting mot en nolla?

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

## #17 — rIkLuNd, 2003-02-24T13:26Z

vad menar du med ingenting? att det kortets id inte finns med i $number, eller vad menar du?

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

## #18 — sorhh, 2003-02-24T13:27Z

exakt

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

## #19 — rIkLuNd, 2003-02-24T13:33Z

då skulle du kunna ha alla korten som finns i t ex "kort.txt" så att den ser ut så här med kortens id på varje rad:
1
2
3
4
etc...

```php
// ladda filen
$load = file("databas.txt");
// loopa igenom datan
for($i = 0; $i < count($load); $i++)
{
   // splitta den!
   $data = explode("¦¦",$load[$i]);
   // räkna det nummer som finns i den här raden!
   $number[$data[4]]++;
}

// låt oss nu kolla vilka kort som inte skickats!
// ladda filen!
$kort = file("kort.txt");
// loop
for($j = 0; $j < count($kort); $j++)
{
   // kolla om den har skickats någon gång
   if($number[$kort[$j]] > 0)
   {
      // japp, det hade den...
      continue;
   }
   else
   {
      // nej, det hade det inte...
      $number[$kort[$j]] = 0;
   }
}

// låt oss kolla på resultatet
echo "<pre>\n";
print_r($number);
echo "</pre>\n";
```

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

## #20 — sorhh, 2003-02-24T13:36Z

Tackar, ska prova det ikväll!

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

---

Tråden på webben: https://www.webforum.nu/amne/php/69035-räkna-antal-e-vykort  
Nästa sida: https://www.webforum.nu/amne/php/69035-räkna-antal-e-vykort/page2.md
