Gå til innhold

Anbefalte innlegg

Hei.

 

Har laget et script som henter informasjon fra en database.

I output så har jeg en overskrift for hver kolonne. Jeg vil gjerne kunne klikke på en av disse overskriften i listen for å få sortert ASC eller DESC hver gang man klikker på overskriften (f.eks.).

I scriptet mitt er det kolonnen Vekt som jeg vil ha gjort dette med.

 

<html>
<head>
<style type="text/css">

table.data { width:75%; height: 25px; margin: 0; border: 1px solid black; border-spacing: 2px; }

.navn {width: 25%; background-color: #c7c7c0; }
.dato {width: 10%;  background-color: #d8d8d1; }
.art { width: 10%;  background-color: #c7c7c0; }
.vekt {width: 10%;  background-color: #d8d8d1; }
.redskap { width: 20%;  background-color: #c7c7c0; }
.bilde { width: 20%;  background-color: #d8d8d1; }

</style>

<table class="data" border="0" cellspacing="2">

<tr>

<td width="25%" class="navn"><b>Navn</b></td>
<td width="10%" class="dato"><b>Dato</b></td>
<td width="10%" class="art"><b>Art</b></td>
<td width="10%" class="vekt"><b>Vekt</b></td>
<td width="20%" class="redskap"><b>Vekt</b></td>
<td width="20%" class="bilde"><b>Bilde</b></td>

</tr>
</table>
</head>
<body>


<?php
$con = mysql_connect("localhost", "bruker", "passord");
if (!$con)
{
die('Could not connect to DB: ' . mysql_error() );
}

mysql_select_db ("database", $con);

$sql = "SELECT * FROM tabell";
  $res = mysql_query($sql);

  while ($row = mysql_fetch_array($res)) {

  echo
"<table class='data' border='0' cellspacing='2'>
<tr>
<td class='navn'>".$row['navn']."</td>
<td class='dato'>".$row['dato']."</td>
<td class='art'>".$row['art']."</td>
<td class='vekt'>".$row['vekt']."</td>
<td class='redskap'>".$row['redskap']."</td>
<td class='bilde'>".$row['bilde']."</td>
</tr>
</table>"; 
'<tr>';
  echo '</tr>';
  }

  echo '</table>';
?>
</body>
</html>

Lenke til kommentar
Videoannonse
Annonse

Et enkelt og billig triks er å legge link-tags på alle kolonneoverskriftene. Linken må peke tilbake til samme dokument, bare med en get-parameter som angir sorteringsrekkefølge, for eksempel slik:

<a href="side.php?orderby=1">Vekt</a>

Så kan du ut fra denne parameteren modifisere sql-spørringen med en "order by", for eksempel "select * from tabell order by felt1" eller "select * from tabell order by felt2 desc".

 

Merk at eksemplet forutsetter at dokumentet heter side.php. Enten kan du erstatte dette med det egentlige filnavnet, eller så kan du bruke $_SERVER['PHP_SELF'].

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...