Door
samet ozel
op 08-01-2011 16:00
gewijzigd op 08-01-2011 19:37
6.241 views
Ik heb nu een script waarmee ik dus gegevens uit mijn database haal en ook kan zoeken, dit gebeurd probleemloos. het lukt mij niet om een knop boven studentennummer en een knop boven achternaam te plaatsen waarmee ik mijn resultaten uit mijn database kan sorteren.ik heb nu dit:
<html>
<head>
<title></title>
<link href="opmaak.css" rel="stylesheet" type="text/css">
</head>
<body>
<?php
// Koppelen met de server//
mysql_connect("localhost", "root", "") or die ("error server");
// Koppelen met de database wat nodig is //
mysql_select_db("datbaseHogeschool.db") or die ("error database");
/* print het invoerveld, dropdownlist en de knop */
echo '
<form action="" method="get">
Zoek: <input type="text" name="snaam"/>
<select name="dropdown">
<option value="NULL">Zoek op..</option>
<option value="studentnummer">Studentnummer</option>
<option value="achternaam">Achternaam</option>
<option value="voornaam">Voornaam</option>
<option value="geboortedatum">Geboortedatum</option>
<option value="slb">Slb</option>
</select>
<input type="submit" value="Zoeken" name="submit"/>
</form>
';
/* print tabel header */
echo '
<table class="header">
<tr>
<th>Studentnummer</th>
<th>Achternaam</th>
<th>Voornaam</th>
<th>Geboortedatum</th>
<th>Slb</th>
<tr>
';
//zodra op de knop zoeken gedrukt wordt
//en anders print alle studenten op
if (isset($_GET['submit']) && ($_GET['dropdown'] != "NULL") ){
// haal de ingevoerde waarde op
$snaam = $_GET['snaam'];
$dropdown = $_GET['dropdown'];
//--> zoeken moet nog
//zoek in de database op de opgegeven informatie in het invoerveld, dropdownlist
$resultaten = mysql_query("SELECT * FROM student WHERE $dropdown = '$snaam'") or die("error query opdracht 1");
}else {
$resultaten = mysql_query("SELECT * FROM student;") or die("error query opdracht 1");
}
/* print per rij de inhoud uit de database */
while ($resultaatOp2 = mysql_fetch_array($resultaten)){
echo '
<tr>
<td>'. $resultaatOp2['studentnummer'] .'</td>
<td>'. $resultaatOp2['achternaam'] .'</td>
<td>'. $resultaatOp2['voornaam'] .'</td>
<td>'. $resultaatOp2['geboortedatum'] .'</td>
<td>'. $resultaatOp2['slb'] .'</td>
<tr>
';
}
/* einde tabel */
echo '</table>';
?>
</body>
</html>
[size=xsmall]Toevoeging op 08/01/2011 16:03:01:[/size]
Het moet niet verbonden zijn aan het zoeken. Wanneer ik nog niet heb gezocht krijg ik al de gegevens te zien van mijn database, Als ik zoek dan krijg ik dus alleen datgene wat ik wil hebben. Maar wat ik wil is dus dat de twee knoppen die ik heb gezet naast studenten nummer en achternaam gaan ordenen. Dus wanneer mijn tabel de gegevens laat zien uit de database en ik druk op knop orden naast studentennummer dan moet de tabel geordend worden van klein naar groot(studentennummers) net als bijv bij marktplaats dat je op prijs klikt en dat het dan gaat ordenen van goedkoop naar duur.
Om na het verkrijgen van het zoekresultaat te kunnen sorteren zal je de zoekterm moeten onthouden. Is het misschien verstandig om dat soort gegevens in een session te bewaren? Ook wil je waarschijnlijk het sorteergedrag bewaren.
ik had het eerst wel verbonden met de zoekfunctie dmv een dropdown kon je selecteren op wat je wilde sorteren maar dit heb ik eruit gehaald omdat ik echt twee losse knoppen wil hebben die los zijn van de zoekfunctie.
Moet ik veel veranderen aan wat ik nu heb?
trouwens ik heb die tweede formulier gemaakt met de hoop dat hij het dan wel zou doen dus die is niet zo relevant denk ik. Kan ik de formulier op lijn 35 gewoon weghalen en dan de functie op lijn 48 koppelen aan mijn knop?