Hulp met link sorteren in tabel

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Marcel

Marcel

07/09/2005 16:26:00
Quote Anchor link
Hallo,

Ik ben best nieuw met PHP. Hieronder heb ik een heel klein scriptje gemaakt.

<html>
<head>
<title>
</title>
</head>
<body>
<table border ="1" cellpadding="0" cellspacing="0">
<th><a href="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php $_SERVER['PHP_SELF']; ?>
">Klant</a></th><th><a href="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php $_SERVER['PHP_SELF']; ?>
">Artikel</a></th><th><a href="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php $_SERVER['PHP_SELF']; ?>
">Prijs</a></th>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
$connect
= mysql_connect("Localhost", "root", "");
$db = mysql_select_db("test");
$sql_klant = "SELECT * FROM klant ORDER BY achternaam";
$resultaat = mysql_query($sql_klant) or die (mysql_error);
while ($rij = mysql_fetch_assoc($resultaat))
{

?>


<form action = "
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php $_SERVER['PHP_SELF'] ?>
" name="tabel" method="get">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
    echo "<tr><td>". $rij['Achternaam'] . "</td>";
}

?>

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
$sql_artikel
= "SELECT * FROM artikel ORDER BY Omschrijving && Prijs";
$resultaat2 = mysql_query($sql_artikel) or die (mysql_error);
while ($row = mysql_fetch_assoc($resultaat2))
{

    echo "<td>". $row['Omschrijving'] . "</td><td>" . $row['Prijs'] . "</td></tr>";
}

?>

</table>
</body>
</html>

In dit script wil ik onder de TH Koppen van de tabel een link maken. Dit heb ik ook gedaan. Als ik op de link klikt, dan moet bijvoorbeeld de kolom Klant wordt gesorteerd. Dit geldt eveneens voor artikel en prijs.

Ik denk zelf dat het te maken heeft met de GET functie, maar ik weet nu hoe ik dit moet oplossen.

Kunnen jullie mijn helpen?
 
PHP hulp

PHP hulp

23/11/2024 23:16:55
 
Han eev

Han eev

07/09/2005 16:32:00
Quote Anchor link
$sql_artikel = "SELECT * FROM artikel ORDER BY Omschrijving && Prijs";
moet zo zijn =>
$sql_artikel = "SELECT * FROM artikel ORDER BY Omschrijving, Prijs";
 
Marcel

Marcel

07/09/2005 16:37:00
Quote Anchor link
Oke. Heb je ook een idee hoe ik die links kan laten sorteren?
 
Jan Koehoorn

Jan Koehoorn

07/09/2005 17:59:00
Quote Anchor link
in de link moet je een variabele meegeven
bijvoorbeeld zo:

<a href="pagina.php?sorteerop=kolom1"></a>

als er op geklikt wordt kun je via $_GET['sorteerop'] kijken waarop gesorteerd moet worden. Die waarde verwerk je dan in je query bij ORDER BY.
 
Marcel

Marcel

07/09/2005 18:55:00
Quote Anchor link
Ik heb gedaan wat je zei.

Maar nou krijg ik de volgende error:

syntax error, unexpected "T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING"

En dit is de code:

$sql_klant = "SELECT * FROM klant ORDER BY $_GET['achternaam']";
 
Jelmer -

Jelmer -

07/09/2005 19:01:00
Quote Anchor link
Nu sorteer je dus op datgene wat de browser opstuurt. Daarbij, is dit niet bepaald veilig -> zoek op: mysql injection.

Ik denk dat Jan meer iets bedoelde in de richting van:
switch($_GET['sorteerop']){
case('achternaam'):
$order = 'achternaam';
break;

case('prijs'):
$order = 'prijs';
break;

default:
$order = 'artikel';
break;
}

$sql = "SELECT * FROM klant ORDER BY ".$order;
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.