---
title: "Register i php / \"Vad hände idag för ett år sedan\" i php"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/107726-register-i-php-vad-hände-idag-för-ett-år-sedan-i-php"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "rodge"
published: "2004-07-20T20:03:02.000Z"
updated: "2004-07-27T20:53:15.000Z"
replies: 34
views: 1522
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/107726-register-i-php-vad-hände-idag-för-ett-år-sedan-i-php"
---

# Register i php / "Vad hände idag för ett år sedan" i php

_Sida 1 av 2._

## #1 — rodge, 2004-07-20T20:03Z

Hejsan, ny på detta forum och ganska ny när det gäller php.
Tänkte lägga till ett register på min hemsida med information om alla låtar och alla mixar med depeche mode. Med andra ord, två kolumner, båda två ska vara sorteringsbara och när man klickar på valfri mix ska man komma till en sida där all information om just den kmixen finns.

Någon som har ett script eller vet var jag kan söka ett.

Sedan problem 2:
Skulle vilja ha en liten ruta där det visas vad som har hänt i depeche modes karriör hittills just den aktuella dagen. Går det att fixa?
Samma här, någon som har ett script eller vet var jag kan söka ett?

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

## #2 — Pedda, 2004-07-21T07:45Z

Finns nog inget färdigt skript med just de funktioner du önskar, det enda är nog att du knåpar ihop ett eget.

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

## #3 — Duffer, 2004-07-21T07:58Z

Förstod inte riktigt hur du ville att det skulle se ut men här har du iaf en liten kod som kräver att du har en MySQL databas med åtminstonde kolumnerna:
id
titel
mix

Det borde i alla fall generera nått sånär vad det var du var ute efter.

```php
<?php

echo("
<table>
<tr>
<td><b>Titel</b><br>
<a href='register.php?orderby=titel'>Ordna efter titel</a></td>
<td><b>Mix</b><br>
<a href='register.php?orderby=mix'>Ordna efter mix</a></td>
</tr>
<tr>
");

/// Ansluter
mysql_connect($host,$id,$kod);
mysql_select_db($databas);

/// Hämtar låtarna från databasen
$query =  mysql_query("SELECT * FROM tracks ORDER BY $orderby desc");
WHILE($rad=mysql_fetch_array($query)){

	$id=$rad["id"];
	$titel=$rad["titel"];
	$mix=$rad["mix"];

/// Stoppar in värdena i tabellen

echo("
<td><a href='latinfo.php?id=$id'>$titel</a></td>
<td><a href='latinfo.php?id=$id'>$mix</a></td>
");
}
echo("
</tr>
</table>
");

?>
```

 

Säg bara till om det är något!

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

## #4 — rodge, 2004-07-21T19:56Z

Tack Duffer.

Ska sätta mig och kolla på det till helgen.

Ingen som har tips om mitt andra problem?

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

## #5 — Matte, 2004-07-21T20:02Z

Problem 2:
Var har du information om vad depeche mode gjorde ett visst datum ?

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

## #6 — rodge, 2004-07-21T22:07Z

Just nu ingenstans, men den ska ligga i en databas i samma mapp som .php filerna.

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

## #7 — rodge, 2004-07-21T22:08Z

> **Duffer skrev:**
>
> Förstod inte riktigt hur du ville att det skulle se ut men här har du iaf en liten kod som kräver att du har en MySQL databas med åtminstonde kolumnerna:
> id
> titel
> mix
> 
> Det borde i alla fall generera nått sånär vad det var du var ute efter.
>
>
> ```php
> <?php
> 
> echo("
> <table>
> <tr>
> <td><b>Titel</b><br>
> <a href='register.php?orderby=titel'>Ordna efter titel</a></td>
> <td><b>Mix</b><br>
> <a href='register.php?orderby=mix'>Ordna efter mix</a></td>
> </tr>
> <tr>
> ");
> 
> /// Ansluter
> mysql_connect($host,$id,$kod);
> mysql_select_db($databas);
> 
> /// Hämtar låtarna från databasen
> $query =  mysql_query("SELECT * FROM tracks ORDER BY $orderby desc");
> WHILE($rad=mysql_fetch_array($query)){
> 
> 	$id=$rad["id"];
> 	$titel=$rad["titel"];
> 	$mix=$rad["mix"];
> 
> /// Stoppar in värdena i tabellen
> 
> echo("
> <td><a href='latinfo.php?id=$id'>$titel</a></td>
> <td><a href='latinfo.php?id=$id'>$mix</a></td>
> ");
> }
> echo("
> </tr>
> </table>
> ");
> 
> ?>
> ```
>
>  
> 
> Säg bara till om det är något!

Blev så nyfiken så jag testade koden idag, den verkar fungera efter lite inställnings problem (från min sida). Fick ändra "WHILE($rad=mysql_fetch_array($query)){" till "WHILE($rad=mysql_query($query)){" så krånglade det inte med min domän.
Bara en liten undran, hur ska latinfo.php se ut?

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

## #8 — Duffer, 2004-07-21T22:33Z

Okej vi säger att du har en egen tabell för låt info. I stort kan sidan se ut såhär:

```php
<?php
/// Deklaration
$latid = $_GET[id];  /// Denna håller reda på vilken låt man vill ha info om

/// Ansluter
mysql_connect($host,$id,$kod);
mysql_select_db($databas);

/// Hämtar låtinfo från databasen med limit 1
$query =  mysql_query("SELECT * FROM tracks_info WHERE latid = $latid ORDER BY id desc LIMIT 1");
WHILE($rad=mysql_query($query)){

    $titel=$rad["titel"];
    $mix=$rad["mix"];
    $text=$rad["text"];

/// Skriver en söt liten info text om låten/mixen
echo("
<b>$titel <i>($mix)</i></b>
<br>$text
");
}
?>
```

 

Det där genererar en sida som inte är mycket mer för världen än vad det ser ut som ovan. Men funka ska det göra iaf.
Observera att i denna tabell (tracks_info) behövs dessa fält:
id (rekommenderat)
titel
mix
text
latid

latid har vi för när du lägger till en ny låt sparar du dess id i fältet låtid i denna tabellen för att hålla rätt på vilken låt infotexten tillhör.
Man skulle kunna lagra allt i en och samma tabell men det blir inte lika kul och med detta kan man bygga en mer dynamisk sida ifall man kommer på fler funktioner efter hand.

Mer om din andra funktion fårbli tills imorrn
Fler frågor så är det bara att sägatill =)

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

## #9 — rodge, 2004-07-21T22:48Z

Verkar som det fungerar då det inte kommer något fel meddelande i alla fall.
Tackar och bugar Duffy

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

## #10 — nkrantz, 2004-07-21T22:52Z

Om ditt andra problem. Skapa en tabell i mySQL (eller det DBHS som du nu använder). I tabellen skall det finnas följande kolumner: id, datum, händelse. I SQL-frågan så hämtar du hem alla rader som matchar dagens datum, men med valfritt år, mao, %-07-22. Sedan är det bara för dig att via det året som händelsen inträffade beräkna skillnaden från dagens datum...

Fast du borde kunna hitta exemepelvis födelsedags script och liknande. Det är ju bara att skriva in en händelse istället för namnet på personen som fyller år...

// Nippe

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

## #11 — rodge, 2004-07-22T20:13Z

Födelsedags script, det var en bra ide. Att jag inte tänkte på det.

Tack för tipset.

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

## #12 — rodge, 2004-07-22T22:12Z

Då är jag tillbaka igen.
Satt och försökte pussla ihop en add.php
Väljer jag att gå in på latinfo.php eller register.php efter det syns inte mina inlägg. Kollade på min server och informationen ligger där.
Någon som har en aning?
\<html\>

	\<head\>
	
		\<title\>Lägg till information i en databas\</title\>
	
	\</head\>
	
	\<body\>
	     
	     \<form method="POST" action="add.php"\>
	     
	     	\<b\>Låt\</b\>\<br/\>
	     	\<input type="text" size="30" name="titel"\>\<p/\>
	     	
	     	\<b\>Mix\</b\>\<br/\>
	     	\<input type="text" size="30" name="mix"\>\<p/\>
	     	
	     	\<b\>Text\</b\>\<br/\>
	     	\<input type="text" size="300" name="text"\>\<p/\>
	     		     	
	     	\<input type="submit" size="30" value="Lägg till!"\>\<p/\>
	     
	     \</form\>
	     
		\<?php if(empty($\_POST\['titel'\]))
			     $namn = "not set";
			  if(empty($\_POST\['mix'\]))   
		         $dag = "not set";
		      if(empty($\_POST\['text'\]))
		         $manad = "not set";
		      		
			  if(!empty($\_POST\['titel'\]))
			  {
				  $titel   = $\_POST\['titel'\];
				  $mix    = $\_POST\['mix'\];
				  $text  = $\_POST\['text'\];
				  
				  $connection = mysql_connect("localhost", "", "") or die("Kunde inte skapa koppling!");
			   
			  	  mysql_select_db("dmsverige_se") or die("Kunde inte välja databas");
			  
			   	  $laggTill = "INSERT INTO tracks_info (titel, mix, text) VALUES ('$titel', '$mix', '$text')";
			  	  mysql_query($laggTill) or die("Det gick inte att lägga till information!");
			  
			      mysql_close($connection);
			      
			      print("Information lades framgångsrikt till i databasen!");
			      print("\<hr noshade size=1 color=#000000\>");
		      } 
		    
			 			  
	     ?\>
	
	\</body\>

\</html\>

Hur får man latid och id att "spela tillsammans"?

Tackasam för svar / Trevande novis

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

## #13 — Duffer, 2004-07-23T09:26Z

Här har du glömt { }

\<?php if(empty($\_POST\['titel'\])){
$titel = "not set";
if(empty($\_POST\['mix'\])) 
$mix = "not set";
if(empty($\_POST\['text'\]))
$text = "not set";

}

Men sparades datan i databasen alltså men kommer inte ut på sidan sen?
Testa att titta på register.php och tryck ctrl+F5 då ska allt komma upp!

Kollade på koden igen och såg att för att listan ska komma upp krävs det ju att du lägger in ovanstående data i tabellen tracks också, iom att det är från den du hämtar all information från på register.php

Så mitt tips nu är att du skrotar tracks tabellen och ändrar koden i register.php så den hämtar informationen från tracks_info istället.

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

## #14 — rodge, 2004-07-23T21:33Z

Harändrat i register.php men får det inte att fungera

register.php
\<html\>

\<head\>
\<meta http-equiv="Content-Type" content="text/html; charset=windows-1252"\>
\<title\>Ny sida 1\</title\>
\</head\>

\<body\>
\<?php

echo("
\<table\>
\<tr\>
\<td\>\<b\>Titel\</b\>\<br\>
\<a href='register.php?orderby=titel'\>Ordna efter titel\</a\>\</td\>
\<td\>\<b\>Mix\</b\>\<br\>
\<a href='register.php?orderby=mix'\>Ordna efter mix\</a\>\</td\>
\</tr\>
\<tr\>
");

/// Ansluter
mysql_connect(localhost,dmsverige_se,LÖSEN);
mysql_select_db(dmsverige_se);

/// Hämtar låtarna från databasen
$latar =  mysql_query("SELECT \* FROM tracks_info ORDER BY $orderby desc");
WHILE($rad=mysql_query($latar)){

    $id=$rad\["id"\];
    $titel=$rad\["titel"\];
    $mix=$rad\["mix"\];

/// Stoppar in värdena i tabellen

echo("
\<td\>\<a href='latinfo.php?id=$id'\>$titel\</a\>\</td\>
\<td\>\<a href='latinfo.php?id=$id'\>$mix\</a\>\</td\>
");
}
echo("
\</tr\>
\</table\>
");

?\>

\</body\>

\</html\>

latinfo.php
\<html\>

\<head\>
\<meta http-equiv="Content-Type" content="text/html; charset=windows-1252"\>
\<title\>Ny sida 1\</title\>
\</head\>

\<body\>
\<?php

/// Ansluter
mysql_connect(localhost,dmsverige_se,LÖSEN);
mysql_select_db(dmsverige_se);

/// Hämtar låtinfo från databasen med limit 1
$info =  mysql_query("SELECT \* FROM tracks_info ORDER BY id desc LIMIT 1");
WHILE($rad=mysql_query($info)){

    $titel=$rad\["titel"\];
    $mix=$rad\["mix"\];
    $text=$rad\["text"\];

/// Skriver en söt liten info text om låten/mixen
echo("
\<b\>$titel \<i\>($mix)\</i\>\</b\>
\<br\>$text
");
}
?\>

\</body\>

\</html\>

TYcker det verkar som om koden inte laddar ner databasen.

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

## #15 — Duffer, 2004-07-23T21:47Z

Har du skapat någon tabell i databasen som heter tracks_info då?
så du inte bara har tracks?
Säker på att det finns någon data i tabellerna?

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

## #16 — rodge, 2004-07-23T21:50Z

Jag har skapat en tabell som heter tracks_info och har lagt till två poster för att se om det fungerar.

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

## #17 — rodge, 2004-07-23T21:54Z

Kanske gjort något fel i deklarationen av tabellen?
id står som int(9) med auto_increment
titel står som varchar(50)
mix står som varchar(50)
text står som text

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

## #18 — Duffer, 2004-07-23T22:15Z

testade just med mysql_fetch_array() på b-one funkar fin fint!

Ersätt :
WHILE($rad=mysql_query
med
WHILE($rad=mysql_fetch_array

då funkar det mycket bättre!

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

## #19 — rodge, 2004-07-24T05:29Z

änmdrade till WHILE($rad=mysql_fetch_array och fick detta till svar

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /customers/dmsverige.se/dmsverige.se/httpd.www/register.php on line 28

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

## #20 — Matte, 2004-07-24T09:03Z

Vad får du ut om du skriver så här:

```php
mysql_connect('localhost', 'dmsverige_se', 'LÖSEN');
mysql_select_db('dmsverige_se');

/// Hämtar låtarna från databasen
$sql = "SELECT * FROM tracks_info ORDER BY $orderby desc";
$latar =  mysql_query($sql) or die("SQL: $sql <br>".mysql_error());

while ($rad = mysql_fetch_assoc($latar)) {

    $id=$rad["id"];
    $titel=$rad["titel"];
    $mix=$rad["mix"];

    /// Stoppar in värdena i tabellen

    echo("
      <td><a href='latinfo.php?id=$id'>$titel</a></td>
      <td><a href='latinfo.php?id=$id'>$mix</a></td>
    ");

}
```

 

Varifrån kommer $orderby ?

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

---

Tråden på webben: https://www.webforum.nu/amne/php/107726-register-i-php-vad-hände-idag-för-ett-år-sedan-i-php  
Nästa sida: https://www.webforum.nu/amne/php/107726-register-i-php-vad-hände-idag-för-ett-år-sedan-i-php/page2.md
