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

<?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

<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>

Reageren