Zoekfunctie in deze site

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Johan Sebastiaan

Johan Sebastiaan

24/06/2010 13:04:48
Quote Anchor link
Hallo allemaal!

Wederom wil ik leren van de phpfanaten hier. Op de volgende website

http://81.30.70.233/~dnp/

wordt gebruik gemaakt van een MySQL database. De gegevens worden opgevraagd en alle items worden neergezet. Nu zijn het al behoorlijk wat items... Er komen zelfs nog veel meer.

Vandaar de vraag; hoe bouw ik hier een simpele zoekfunctie in? Ik heb al iets geprobeerd:
http://81.30.70.233/~dnp/zoektest2.php
maar dat krijg ik niet gecombineerd met de eerdergenoemde pagina.

De zoekmachine/filter moet de gevonden items dus alleen weergeven. Precies zoals de bovengenoemde pagina.

Alvast bedankt!



zoektest2.php
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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
<?php                                            


// De variabelen die je naar eigen belangen moet invullen
$db_user = 'xxxx';      // Gebruiker voor MySQL
$db_pass = 'xxxx';          // Wachtwoord voor MySQL
$db_host = 'localhost'; // Host voor MySQL; standaard localhost
$db_db =   'xxx';          // Database
$tabel =   'dnp2';          // De tabel waarin gezocht moet worden
$eerste =  'Titel';     // De 1e rij in je tabel waain hij moet zoeken
$tweede =  'Plaats';     // De 2e rij in je tabel waain hij moet zoeken
$derde =  'Bericht';     // De 3e rij in je tabel waain hij moet zoeken

// Met onze database connecten

mysql_connect($db_host,$db_user,$db_pass) or die(mysql_error());
mysql_select_db($db_db) or trigger_error(mysql_error());

// Onze functie voor het afkorten. Later meer.
function afkorten($var, $lengte) {
  if (strlen($var) > $lengte) {
    $var = substr($var, 0, $lengte-3)."...";
  }

  return $var;
}
  

// Als er een id is in de url de volledige tekst laten zien
if(isset($_GET['ID']) and !empty($_GET['ID']) and is_numeric($_GET['ID'])){  
    
        // Resultaten ophalen
    $result = mysql_query("SELECT * FROM ".$tabel." WHERE ID=" .  mysql_real_escape_string(  $_GET['ID'] )  . "");
    
        // Checken of het tekst id wel bestaat
    if (mysql_num_rows($result) >= 1) {    
        
            // De resultaten even in een $_ROW['']; stoppen
        $row = mysql_fetch_assoc($result);  
                                          
            // Resultaten tonen
          echo $row[''.$eerste.''];
          echo '<br /><br />';
          echo $row[''.$tweede.''];  
          echo '<br /><br />';
          echo $row[''.$derde.''];  
    }

    else {    // Als het tekst id niet bestaat:
        echo 'Dit id bestaat niet!';
    }
}
                            
 // Als er een zoekterm in de url staat en niet leeg is...  
else if(isset($_GET['zoekterm']) and !empty($_GET['zoekterm'])){
  if($_GET['waar'] == $eerste)           // En de waar is 'titel'..
  {
    $sqlquery = "SELECT * FROM ".$tabel." WHERE ".$eerste." LIKE '%" .  mysql_real_escape_string(  $_GET['zoekterm'] )  . "%'";       // De goede query uitvoeren
    
    $results = mysql_query($sqlquery) or die(mysql_error());;   // De goede resultaten ophalen    
            // Als er resultaten zijn:

        if (mysql_num_rows($results) >= 1) {            
            while($row = mysql_fetch_assoc($results)) {                                            
            
                echo '<a href="?ID='.$row['ID'].'">'.$row[''.$eerste.''].'</a><br />';  // De titel als linkje met daarna de afgekorte tekst
                $tekst = $row[''.$tweede.''];
                echo afkorten($tekst,25);  // Onze functie aan roepen. De 25 staat voor 25 tekens
                echo "<br /><br />";  // En dan ook maar een paar entertjes
            }
        }

        else {   // Als er geen resultaten zijn:
            echo "Er zijn geen resultaten";
        }
  }

  else if($_GET['waar'] == $tweede)    // Of de waar is 'tekst'...
  {
    $sqlquery = "SELECT * FROM ".$tabel." WHERE ".$tweede." LIKE '%" .  mysql_real_escape_string(  $_GET['zoekterm'] )  . "%'";        // Een andere query uitvoeren          
    
    
    $results = mysql_query($sqlquery) or die(mysql_error());;   // De goede resultaten ophalen    
            // Als er resultaten zijn:

        if (mysql_num_rows($results) >= 1) {            
            while($row = mysql_fetch_assoc($results)) {                                            
            
                echo '
                <a href="?ID='
.$row['ID'].'">'.$row[''.$eerste.''].'</a><br />';  // De titel als linkje met daarna de afgekorte tekst
                $tekst = $row[''.$tweede.''];
                $berichtje = $row[''.$derde.''];
                echo afkorten($tekst,25);  // Onze functie aan roepen. De 25 staat voor 25 tekens
                echo afkorten($berichtje,2000);  // Onze functie aan roepen. De 25 staat voor 25 tekens
                echo "<br /> <br />";  // En dan ook maar een paar entertjes
            }
        }

        else {   // Als er geen resultaten zijn:
            echo "Er zijn geen resultaten";
        }
  }
              
  else if($_GET['waar'] == $derde)    // Of de waar is 'tekst'...
  {
    $sqlquery = "SELECT * FROM ".$tabel." WHERE ".$derde." LIKE '%" .  mysql_real_escape_string(  $_GET['zoekterm'] )  . "%'";        // Een andere query uitvoeren          
    
    
    $results = mysql_query($sqlquery) or die(mysql_error());;   // De goede resultaten ophalen    
            // Als er resultaten zijn:

        if (mysql_num_rows($results) >= 1) {            
            while($row = mysql_fetch_assoc($results)) {                                            
            
                echo '
                <a href="?ID='
.$row['ID'].'">'.$row[''.$eerste.''].'</a><br />';  // De titel als linkje met daarna de afgekorte tekst
                $tekst = $row[''.$tweede.''];
                echo afkorten($tekst,25);  // Onze functie aan roepen. De 25 staat voor 25 tekens
                echo "<br /> <br />";  // En dan ook maar een paar entertjes
            }
        }

        else {   // Als er geen resultaten zijn:
            echo "Er zijn geen resultaten";
        }
  }
            
  else if($_GET['waar'] == 'overal')    // En als de waar 'overal' is
  {
    $sqlquery = "SELECT * FROM ".$tabel." WHERE ".$eerste." LIKE '%" .  mysql_real_escape_string(  $_GET['zoekterm'] ) . "%' OR ".$tweede."
    LIKE '%"
.  mysql_real_escape_string(  $_GET['zoekterm'] ) . "%'";                // Weer een andere query uitvoeren        
        
            
    $results = mysql_query($sqlquery) or die(mysql_error());;   // De goede resultaten ophalen    
            // Als er resultaten zijn:

        if (mysql_num_rows($results) >= 1) {            
            while($row = mysql_fetch_assoc($results)) {                                            
            
                echo '<a href="?ID='.$row['ID'].'">'.$row[''.$eerste.''].'</a><br />';  // De titel als linkje met daarna de afgekorte tekst
                echo afkorten($row[''.$tweede.''],25);  // Onze functie aan roepen. De 25 staat voor 25 tekens
                echo "<br /><br />";  // En dan ook maar een paar entertjes
            }
        }

        else {   // Als er geen resultaten zijn:
            echo "Er zijn geen resultaten";
        }
  }
else {
      echo 'Hier kan ik niet in zoeken!';
  }
  
}

else {     // Als er niks bruikbaars in de url staat:

           // Ons zoekformuliertje laten zien

    echo '<form action="'.$_SERVER['PHP_SELF'].'" method="GET">
            <input type="text" name="zoekterm">&nbsp; &nbsp;
            <select name="waar">
              <option>Alles
              <option>'
.$eerste.'
              <option>'
.$tweede.'
              <option>'
.$derde.'
           </select>&nbsp; &nbsp; &nbsp;
           <input type="submit" value="Filter">
         </form>'
;  
}

?>



index.php
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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
<html>

    <head>
        <title> DNP.NU beta 3</title>
        <LINK REL=StyleSheet HREF="style1.css" TYPE="text/css" MEDIA=screen>
        <link rel="stylesheet" href="css/lightbox.css" type="text/css" media="screen" />
<SCRIPT>
<!-- PopUp Link JavaScript Code Provided By: http://www.DesignerWiz.com - Development Resource & JavaScript Public Archive Center -->
function popUp(page,PWidth,PHeight,id) {
 eval("designerwiz"+id+"=window.open('"+page+"','designerwiz1','toolbar=0,scrollbars=1,location=0,status=1,menubars=0,resizable=0,width="+PWidth+",height="+PHeight+"')")
eval;("wiz"+id+".window.moveTo((screen.width/2)-(PWidth/2),(screen.height/2)-(PHeight/2))")
}
</SCRIPT>
<script type="text/javascript" src="js/prototype.js"></script>
<script type="text/javascript" src="js/scriptaculous.js?load=effects,builder"></script>
<script type="text/javascript" src="js/lightbox.js"></script>

    </head>
    <body>


<div class="container">



<div class="midden2">
<div class="midden">


    <div class="header">
        <img src="layout/img/header.png" alt="DNP.NU">
    </div>

    <div class="divmenu">
         <A HREF="javascript:popUp('upload.php',500,250,1);"><img src="layout/img/uploadbutton.png" border=0 alt="Upload jouw video op DNP.NU" align="right"></a>
    </div>

<?php
# 10-10-2006
# pagina nummering v1.0
# G. de Rover
# GDRmedia
# [email protected]
//
// welke pagina er geshowed moet worden

$pag        = $_GET['pag'];
// eerste bezoek moet 0 zijn.
if($pag == '1' || $pag == 1){
    $pag = 0;
}

// het aantal resultaten per pagina.
$showRecords= 3;
//
// connectie settings

$myServer    = 'localhost';
$myDataBase    = 'xxxx';
$myUser        = 'xxxx';
$myPass        = 'xxxx';
//
$myConn = mysql_connect($myServer, $myUser, $myPass);
$select = mysql_select_db($myDataBase, $myConn);
//
$query = 'SELECT * FROM dnp2 ORDER BY Datum DESC';
$results = mysql_query($query) or die(mysql_error());
$num_rows = mysql_num_rows($results);
//
$pages = $num_rows / $showRecords;
//
if($pages>1){
    $myPage = $pag * $showRecords;
    //
    $query = 'SELECT * FROM dnp2 ORDER BY Datum DESC LIMIT '.$myPage.', '.$showRecords;
    $results = mysql_query($query) or die(mysql_error());
}

//output:
echo '<div class="divpaginatelling">';
// checkt of er uberhaubt wel meerdere pagina's zijn.
if($pages > 1){
    for($i=1; $i<=floor($pages); $i++){
        echo ' | <a href='.$_SERVER['PHP_SELF'].'?pag='.$i.'>'.$i.'</a>';
    }

    echo ' |<br/></div><br/>';
}

// spuug de gewenste data uit.
while ($row = mysql_fetch_array($results)) {

   echo ' <div class="geheel">

            <div class="linkerkolom">

                <div class="bovenlinks">
                            <div class="titel"><div class="id">( '
.$row['ID'].' ) </div> '.$row['Titel'].'</div>
                            <div class="datum">'
.$row['Datum'].'</div>

                </div><br>

                <div class="onderlinks">

                            <div class="bericht"><b>'
.$row['Plaats'].'</b> - '.$row['Bericht'];



    $dirname = "dnpnieuw/items/".$row['ID']."/downloads";

    $images = scandir($dirname);

    $ignore = Array(".", "..", ".txt", ".TXT");



    foreach($images as $curimg){

        if(!in_array($curimg, $ignore)) {

            echo '<a href="dnpnieuw/items/'.$row['ID'].'/downloads/'.$curimg.'">Download '.$curimg.'</a><br><br>'.PHP_EOL;
        }

    }
    

echo '</div>

                </div>

            </div>

            <div class="rechterkolom"><img src="layout/img/balkvideo.png" alt="Bekijk onderstaande video">'
;
                    

    $dirname = "dnpnieuw/items/".$row['ID']."/flv/";

    $images = scandir($dirname);

    $ignore = Array(".", "..", ".txt", ".TXT");



    foreach($images as $curimg){

        if(!in_array($curimg, $ignore)) {

            echo '<object classid=clsid:d27cdb6e-ae6d-11cf-96b8-444553540000  
codebase=http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0
width=381 height=216 id=fullscreen align=middle>
<param name="WMode" value="transparent"></param>
<param name=allowScriptAccess value=sameDomain/>
<param name=movie value="flvplayer.swf/>
<param name=quality value=high />
<param name=salign value=tl />
<param name=bgcolor value=#ffffff />
<param name="startimage" value="start_frame.jpg" />
    <param name="autoplay" value="0" />
    <param name="autoload" value="0" />
    <param name="buffer" value="5" />
    <param name="buffermessage" value="" />
    <param name="buffercolor" value="ffffff" />
    <param name="bufferbgcolor" value="858686" />
    <param name="buffershowbg" value="0" />
    <param name="title" value="20100214 Zwaag carnaval" />
    <param name="titlesize" value="20" />
    <param name="titlecolor" value="ffffff" />
    <param name="margin" value="0" />
    <param name="srt" value="0" />
    <param name="srtcolor" value="ffffff" />
    <param name="srtbgcolor" value="858686" />
    <param name="srtsize" value="11" />
    <param name="showstop" value="1" />
    <param name="showvolume" value="1" />
    <param name="showtime" value="1" />
    <param name="showplayer" value="autohide" />
    <param name="showloading" value="autohide" />
    <param name="showfullscreen" value="1" />
    <param name="showswitchsubtitles" value="0" />
    <param name="showmouse" value="autohide" />
    <param name="loop" value="0" />
    <param name="startimage" value="start_frame.jpg" />
    <param name="playercolor" value="858686" />
    <param name="loadingcolor" value="dddddd" />
    <param name="bgcolor" value="ffffff" />
    <param name="bgcolor1" value="ffffff" />
    <param name="bgcolor2" value="ffffff" />
    <param name="buttoncolor" value="ffffff" />
    <param name="buttonovercolor" value="c3c4c4" />
    <param name="slidercolor1" value="ffffff" />
    <param name="slidercolor2" value="cccccc" />
    <param name="sliderovercolor" value="c3c4c4" />
    <param name="loadonstop" value="0" />
    <param name="onclick" value="playpause" />
    <param name="onclicktarget" value="_blank" />
    <param name="ondoubleclick" value="fullscreen" />
    <param name="ondoubleclicktarget" value="_blank" />
    <param name="playertimeout" value="1500" />
    <param name="videobgcolor" value="000000" />
    <param name="volume" value="100" />
    <param name="shortcut" value="1" />
    <param name="playeralpha" value="100" />
    <param name="srturl" value="video.srt" />
    <param name="top1" value="0" />
    <param name="showiconplay" value="1" />
    <param name="iconplaycolor" value="ffffff" />
    <param name="iconplaybgcolor" value="dddddd" />
    <param name="iconplaybgalpha" value="25" />
    <param name="showtitleandstartimage" value="0" />
<param NAME=FlashVars VALUE="file=dnpnieuw/items/'
.$row['ID'].'/flv/'.$curimg.'">
<embed wmode="transparent" src=flvplayer.swf FlashVars="file=dnpnieuw/items/'
.$row['ID'].'/flv/'.$curimg.'" quality=high
salign=tl bgcolor=#ffffff width=381 height=216 name=fullscreen
align=middle allowScriptAccess=sameDomain type=application/x-shockwave-
flash pluginspage=http://www.macromedia.com/go/getflashplayer/>
</object>'
.PHP_EOL;

        }

    }
    

echo '
                    

<br>

                <img src="layout/img/balkfoto.png" alt="Bekijk onderstaande video">

                    <div class="fotoalbum">'
;


    $dirname = "dnpnieuw/items/".$row['ID']."/foto/";

    $images = scandir($dirname);

    $ignore = Array(".", "..", ".txt", ".TXT");



    foreach($images as $curimg){

        if(!in_array($curimg, $ignore)) {

            echo '<a href="dnpnieuw/items/'.$row['ID'].'/foto/'.$curimg.'" rel="lightbox['.$row['ID'].']"><img img width=109 border=0 height=61 Hspace=5 src="dnpnieuw/items/'.$row['ID'].'/foto/'.$curimg.'" alt="Foto: DNP.NU"></a>';
                    
        }

    }
    

echo '

                </div>

                    

            </div>

</div><br>


            '
;

}

?>





</div>

<div class="divfooter">
     <A HREF="javascript:popUp('overdnp.php',800,600,1);">Over DNP.NU</a>&nbsp; &nbsp; &nbsp;  <A HREF="javascript:popUp('algemenevoorwaarden.php',800,600,1);">Algemene voorwaarden</a>&nbsp; &nbsp; &nbsp; <a href="mailto:[email protected]">Contact</a>&nbsp; &nbsp; &nbsp;  <A HREF="javascript:popUp('admin/index.php',640,700,1);">Inloggen</A>


</div>

</body>
</html>
Gewijzigd op 24/06/2010 13:07:52 door Johan Sebastiaan
 
Er zijn nog geen reacties op dit bericht.



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.