database gegevens sorteren met buttons (ASC)

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Marcel sauer

marcel sauer

06/06/2012 22:24:13
Quote Anchor link
ik heb een aantal database gegevens en die wil ik per kollom kunnen sorteren met een button.

alleen is mijn vraag hoe doe je dit?
in een button de code plaatsen?

Quote:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
<center>
  <
FORM METHOD="get" ACTION="HIER DE CODE PLAATSEN????">
  <
input type="submit" value="sorteer" style="width:100px; height:30px;">
  <
/FORM>
  <
/center>
?>

 
PHP hulp

PHP hulp

05/11/2024 16:20:23
 
Jasper DS

Jasper DS

06/06/2012 22:53:45
Quote Anchor link
Neen, je zal moeten kijken of er een request is geweest door het formulier en de submit knop. Dat doe je zo ->

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST')
{

    # Er is gepost!
    # -> code

}
else
{
    # Er is nog niet gepost!
    # -> Toon je formulier

}
?>
 
Joakim Broden

Joakim Broden

06/06/2012 23:20:50
Quote Anchor link
of een $_GET gebruiken, een knop maken die verwijst naar http://www.domein.nl/?column=id&order=ASC of http://www.domein.nl/?column=id&order=DESC etc. Via $_GET['column'] b $_GET['order'] kun je je query bouwen.

En wat betreft je code, even een paar verbeter puntjes.
1) <center> word tegenwoordig niet meer gebruikt.
2) Tags en attributen zoals FORM METHOD altijd met kleine letters.
3) Geen inline CSS maar gebruik een apparte CSS bestand.
Gewijzigd op 06/06/2012 23:21:22 door Joakim Broden
 
Gerhard l

gerhard l

07/06/2012 08:52:17
Quote Anchor link
Voor het gebruiksgemak zou je ook kunnen kiezen voor bijv. javascript linkje. Deze hoef je alleen een class mee te geven aan je tabel en dan wordt hij sorteerbaar gemaakt.
 
Marcel sauer

marcel sauer

07/06/2012 17:38:19
Quote Anchor link
@gerhard dat java bevalt me wel als manier alleen heb ik het probleem dat als ik alles ingevoegd heb dat ik de headers nog steeds niet kan klikken.

ik heb een sorttable.js gemaakt(knippen plakken) deze in de js map gezet op de server.
bij de pagina waar ik wil sorteren <script src="sorttable.js"></script> in de head gezet.
en mijn table begonnen met <table class="sortable" align="center">

waarom werkt het dan niet?
 
- Ariën  -
Beheerder

- Ariën -

07/06/2012 17:44:47
Quote Anchor link
Heb je een voorbeeld?
En dit is geen JAVA, maar JavaScript. Een groot verschil.
Gewijzigd op 07/06/2012 17:45:36 door - Ariën -
 
Marcel sauer

marcel sauer

07/06/2012 21:55:35
Quote Anchor link
de sorttable.js is een pure kopie van dit link

Quote:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
<?php
<table class="sortable" align="center">
<
thead>
  <
tr><th>ID</th><th>IP</th><th>DATUM</th><th>BEKENDE IP'S</tr></tr>
</thead>
<tr>
<td bgcolor="#0099FF" width="50">
<?php
$sql = "
SELECT
      id,
      ip,
      datum
      
FROM  
     bezoek
";


if(!$res = mysql_query($sql))
{
    trigger_error(mysql_error().'
<br />In query: '.$sql);
}
elseif(mysql_num_rows($res) == 0)
{
    echo '
Geen resultaten gevonden';
}
else
{
    while($row = mysql_fetch_assoc($res))
    {
        echo $row['
id'].'<br />';
    }
}
?>
</td>
<td bgcolor="#00CCFF" width="150"><?php

if(!$res = mysql_query($sql))
{
    trigger_error(mysql_error().'
<br />In query: '.$sql);
}
elseif(mysql_num_rows($res) == 0)
{
    echo '
Geen resultaten gevonden';
}
else
{
    while($row = mysql_fetch_assoc($res))
    {
        echo $row['
ip'].'<br />';
    }
}
?>
</td>
<td bgcolor="#0099FF" width="150">
<?php
if(!$res = mysql_query($sql))
{
    trigger_error(mysql_error().'
<br />In query: '.$sql);
}
elseif(mysql_num_rows($res) == 0)
{
    echo '
Geen resultaten gevonden';
}
else
{
    while($row = mysql_fetch_assoc($res))
    {
        echo $row['
datum'].'<br />';
    }
}

<
/td>
<
td bgcolor="#00FFFF" width="150" valign="top">


<
/td>
<
/tr>
<
/table>
?>
[/quote]
Gewijzigd op 07/06/2012 21:56:47 door marcel sauer
 
Bas  van de Steeg

Bas van de Steeg

08/06/2012 07:23:41
Quote Anchor link
Marcel, je zou dit ook met AJAX kunnen maken.
Hier is een handige link:
http://www.w3schools.com/ajax/tryit.asp?filename=tryajax_database
En de uitleg die daar bij moet:
http://www.w3schools.com/ajax/ajax_database.asp

Marcel sauer op 07/06/2012 17:38:19:
@gerhard dat java bevalt me wel als manier alleen heb ik het probleem dat als ik alles ingevoegd heb dat ik de headers nog steeds niet kan klikken.

ik heb een sorttable.js gemaakt(knippen plakken) deze in de js map gezet op de server.
bij de pagina waar ik wil sorteren <script src="sorttable.js"></script> in de head gezet.
en mijn table begonnen met <table class="sortable" align="center">

waarom werkt het dan niet?

Vind je het heel gek dat het niet werkt ? Je hebt het bestand in de js map gezet en dan roep je het zo: <script src="sorttable.js"></script> aan...
Dan moet dit minstens zo iets worden: <script src="js/sorttable.js"></script> tenzij je de base url van je website naar js map hebt laten gaan.
Gewijzigd op 08/06/2012 07:27:48 door Bas van de Steeg
 
Marcel sauer

marcel sauer

08/06/2012 08:42:03
Quote Anchor link
oeps dat meen je niet...... vergeten dir aan te passen.... ga het vanavond gelijk proberen! thx
 
Joakim Broden

Joakim Broden

08/06/2012 09:13:05
Quote Anchor link
aan een online voorbeeld hebben we veel meer ;-)
 
Marcel sauer

marcel sauer

08/06/2012 18:02:26
Quote Anchor link
ok het was dus niet alleen de dir.
heb nu wel head text met als je er op klikt een pijltje naar boven of beneden alleen gebeurt er met de gegevens niks.


Toevoeging op 08/06/2012 22:33:21:

voorbeeld te zien op Masafoto
 
Gerhard l

gerhard l

09/06/2012 12:38:21
Quote Anchor link
Logisch dat hij niet werkt, als je even de voorbeelden van sortable had bekeken kon je zien dat jou tabel helemaal verkeerd is..
Een voorbeeld van een goed tabel:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<table>
    <tr>
        <th>..</th>
        <th>..</th>
        <th>..</th>
        <th>..</th>
    </tr>
    <tr>
        <td>1</td>
        <td>1</td>
        <td>1</td>
    </tr>
    <tr>
        <td>2</td>
        <td>2</td>
        <td>2</td>
    </tr>
</table>
 
Marcel sauer

marcel sauer

09/06/2012 12:54:20
Quote Anchor link
zo ziet de mijne er ook uit.

Quote:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
<table class="sortable" align="center">
<
thead>
<
tr>
<
th></th>
<
th></th>
<
th></th>
<
th></tr>
<
/tr>
<
/thead>
<
tbody>
<
tr>
<
td bgcolor="#0099FF" width="50"></td>
<
td bgcolor="#00CCFF" width="150"></td>
<
td bgcolor="#0099FF" width="150"></td>
<
td bgcolor="#00FFFF" width="150" valign="top"></td>
<
/tr>
<
/tbody>
<
tfoot></tfoot>
<
/table>

?>
 
Gerhard l

gerhard l

09/06/2012 12:57:20
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<table class="sortable" align="center">
<thead>
  <tr><th>ID</th><th>IP</th><th>DATUM</th><th>BEKENDE IP'S</tr></tr>
</thead>
<tbody>
<tr>
<td bgcolor="#0099FF" width="50">
1<br />2<br />6<br />4<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br /></td>
<td bgcolor="#00CCFF" width="150">94.209.169.250<br />77.88.31.246<br />94.209.169.250<br />83.84.39.174<br />77.88.31.246<br />91.194.225.57<br />94.209.169.250<br />188.88.237.174<br />178.154.164.250<br />94.209.169.250<br />66.249.66.10<br />207.46.13.114<br />38.105.162.11<br />95.98.107.44<br />178.154.164.250<br />94.209.169.250<br />178.154.164.250<br />94.209.169.250<br />208.115.113.84<br />66.249.66.150<br />93.182.131.9<br />208.115.113.84<br />37.220.1.115<br />188.227.175.184<br />207.46.13.114<br />82.101.232.211<br />110.85.72.135<br />94.209.169.250<br />84.83.232.210<br />77.169.216.221<br /></td>
<td bgcolor="#0099FF" width="150">
2012-06-03 00:00:00<br />2012-06-04 00:00:00<br />2012-06-04 22:28:47<br />2012-06-04 00:00:00<br />2012-06-05 08:53:34<br />2012-06-05 16:35:41<br />2012-06-05 18:13:16<br />2012-06-05 21:27:01<br />2012-06-06 10:38:12<br />2012-06-06 17:25:23<br />2012-06-06 17:27:41<br />2012-06-06 21:05:21<br />2012-06-06 23:23:12<br />2012-06-07 10:27:17<br />2012-06-07 13:59:02<br />2012-06-07 17:09:43<br />2012-06-08 11:30:36<br />2012-06-08 17:58:57<br />2012-06-08 20:39:24<br />2012-06-09 00:40:00<br />2012-06-09 01:00:06<br />2012-06-09 02:33:39<br />2012-06-09 03:48:07<br />2012-06-09 07:52:09<br />2012-06-09 09:29:22<br />2012-06-09 09:32:33<br />2012-06-09 10:20:00<br />2012-06-09 11:42:46<br />2012-06-09 11:57:29<br />2012-06-09 12:34:01<br /></td>

</tr>
</tbody>
<tfoot></tfoot>
</table>


Als dat hetzelfde is...
Je moet niet met die BR werken daar heb je de <tr> voor en daar maakt sortable onderscheid van.
Gewijzigd op 09/06/2012 12:58:07 door gerhard l
 
Marcel sauer

marcel sauer

09/06/2012 13:06:05
Quote Anchor link
huh dat heb ik niet in mijn script staan zie ik.
wel als ik via de site de bron code opvraag.
ik vermoed dat dit uit de database komt.....
hoe pas je dit aan dan?
 
Marcel sauer

marcel sauer

12/06/2012 22:00:51
Quote Anchor link
niemand?
 
Gerhard l

gerhard l

13/06/2012 08:25:39
Quote Anchor link
Even mijn glazen bol erbij pakken....

Dit zie ik gewoon in jou code staan hoor:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
while($row = mysql_fetch_assoc($res))
    {
        echo $row['datum'].'<br />';
    }

Dan doe je het toch echt zelf.
Gewijzigd op 13/06/2012 08:26:41 door gerhard l
 
Marcel sauer

marcel sauer

13/06/2012 18:57:17
Quote Anchor link
als ik dit verander naar :

Quote:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
while($row = mysql_fetch_assoc($res))
    {

        echo $row['datum'].'<tr />';
    }

?>


dan gooit hij heel het tabel door de war en plaatst bijna alle gegevens buiten het tabel op een hoopje.

dan werkt de sortable wel alleen is het tabel helemaal uit zijn fatsoen.

kijk maar op de pagina op mijn site.
Gewijzigd op 13/06/2012 18:58:55 door marcel sauer
 
Eddy E

Eddy E

13/06/2012 22:02:57
Quote Anchor link
Logisch, want dan ga je opeens een <tr> afsluiten die je nog niet hebt gesloten met </td> en zo.
Kijk goed in de broncode van je gelade pagina of de html van je tabel goed is.... want dat is ook belangrijk.
 
Marcel sauer

marcel sauer

14/06/2012 23:00:36
Quote Anchor link
ok maar hoe doe ik dit dan heb in de query al </td> gezet krijg het echt niet voor elkaar.

blijkbaar snap ik die query nog niet helemaal..............
 



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.