---
title: "Hjälp!"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/16187-hjälp"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Php"
published: "2001-10-13T09:43:00.000Z"
updated: "2001-10-14T08:31:00.000Z"
replies: 11
views: 174
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/16187-hjälp"
---

# Hjälp!

## #1 — Php, 2001-10-13T09:43Z

Hej!

Jag undrar om det är någon som vet hur man kan få ut dagens födelsedags barn från en MySql databas. Jag har ett fält i min databas där de har fyllt i när de fyller år.

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

## #2 — spango, 2001-10-13T12:18Z

Det här hade passat bättre i MySQL-forumet, men låt gå :) 
Det hela beror ju på vilken datatyp du har i den kolumn där födelsedatum lagras. Är det någon av de datatyper som lagrar datum (och inte t.ex. text) kan du göra en select som ser ut sä här:

```
SELECT kolumner FROM medlemmar WHERE MONTH(födelsedag) = MONTH(NOW()) AND DAYOFMONTH(födelsedag) = DAYOFMONTH(NOW())
```

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

## #3 — LarsG, 2001-10-13T12:19Z

Hur ligger det lagrat? Är det födelsedatum eller bara dag och månad?

Om det är födelsedatum så kan du skriva en sqlfråga:

```
$sql = "select * from members where month(birthday) = month(current_date) and dayofmonth(birthday) = dayofmonth(current_date)";
//hämta värden som vanligt
```

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

## #4 — Php, 2001-10-13T16:25Z

Men detta skriver ju inte ut namnet på den perssonen som fyller år!

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

## #5 — LarsG, 2001-10-13T17:28Z

```
$l = mysql_connect("localhost", "magdur", "crepert");
mysql_select_db("magic_mystery");

$sql = "select * from members where month(birthday) = month(current_date) and dayofmonth(birthday) = dayofmonth(current_date)";

$result = mysql_query($sql) or die mysql_error();
if ( mysql_num_rows($result) ) {
  echo "Dagens födelsedagsbarn: <br>";

while ( $row = mysql_fetch_array($result) ) {
echo $row["Namn"] . "<br>";
}
}
```

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

## #6 — Php, 2001-10-13T21:41Z

Det fungerar inte jag får följande felmedelande:
Parse error: parse error in /web/sites/221/test/www.test.f2s.com/test.php on line 74

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

## #7 — LarsG, 2001-10-13T21:47Z

Då är det intressant att se rad 60-80 i din kod.

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

## #8 — Php, 2001-10-13T22:08Z

Jag gjorde en nys sida då fick jag detta felmedelandet:
Parse error: parse error in /web/sites/221/test/www.test.f2s.com/test1.php on line 6

hela koden är så gär:
\<?
$l = mysql_connect("db.test.f2s.com", "användarnamn", "lösenord");
mysql_select_db("magic_mystery");
$sql = "select \* from anvandare where month(manad) = month(current_date) and dayofmonth(dag) = dayofmonth(current_date)";

$result = mysql_query($sql) or die mysql_error();
if ( mysql_num_rows($result) ) {
echo "Dagens födelsedagsbarn: \<br\>";

while ( $row = mysql_fetch_array($result) ) {
echo $row\["anv_namn"\] . "\<br\>";
}
}
?\>

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

## #9 — LarsG, 2001-10-13T22:17Z

Som vanligt idag så blev det lite fel. Hade glömt parenteser vid anrop till die.

mysql_select_db behövs nog inte (i vilket fall så tror jag inte att din databas heter magical_mystery)

```
<?
$l = mysql_connect("db.test.f2s.com", "användarnamn", "lösenord");
//
$sql = "select * from anvandare where manad = month(current_date) and dag = dayofmonth(current_date)";

$result = mysql_query($sql) or die( mysql_error());
if ( mysql_num_rows($result) ) {
echo "Dagens födelsedagsbarn: <br>";

while ( $row = mysql_fetch_array($result) ) {
echo $row["anv_namn"] . "<br>";
}
}
?>
```

Jag gjorde också om select-frågan då det ser ut som du lagrar månad och dag och inte ett datum.

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

## #10 — Php, 2001-10-13T22:30Z

Tack du det fungerar nu men jag har forfarande några frågor:
1\. Min server ligger inte i Sverige så när klockan är 00.00 i sverige altså nu ska det vara den 14 oktober men eftersom server inte är i Sverige så är det forfarande 13 oktober för servern jag undrar om det går att fixa så att den går efter svensk tid?

2\. Kan man inte göra så att om det inte finns några födelsedagsbarn så ska det stå att det inte finns några födelsedags barn idag?

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

## #11 — LarsG, 2001-10-13T22:51Z

1)
Om du byter sql-satsen mot detta 

```
$sql = "select * from anvandare where manad = month(from_unixtime(unix_timestamp(current_date)+6*3600)) and dag = dayofmonth(from_unixtime(unix_timestamp(current_date)+6*3600))";
```

Du får ändra 6 till det antal timmar som skiljer mellan serverns tid och svensk tid

2\.

```
if ( mysql_num_rows($result) ) {
echo "Dagens födelsedagsbarn: <br>";

while ( $row = mysql_fetch_array($result) ) {
echo $row["anv_namn"] . "<br>";
}
} else {
  echo "Ingen fyller år idag <br>";
}
?>
```

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

## #12 — Php, 2001-10-14T08:31Z

Tack!

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

---

Tråden på webben: https://www.webforum.nu/amne/php/16187-hjälp
