Leuk PHP trucje om te zoeken in een bepaalde categorie

PHP, HTML, Joomla, WordPress, etc..
Plaats reactie
Gebruikersavatar
Kees
VIP
Berichten: 3014
Lid geworden op: 28 nov 2005, 22:07
Answers: 1
SAM-versie: 4.9.1.*
Database: MySQL 5.0
Windows: 8.1
Locatie: Bergen op Zoom
Contacteer:

Leuk PHP trucje om te zoeken in een bepaalde categorie

Ongelezen bericht door Kees »

Wie van jullie is er geintereseert om in de PHP pagina's te zoeken in een bepaalde categorie ?
Voorbeeld.
In onderstaand menu zie je dat alles is onder verdeeld in verschillende categorieen.
Ik heb het zo gemaakt dat als ik klik op b.v. Nederlands ik de verzoeklijst krijg met allemaal Nederlandstalige nummers.
Als ik klik op b.v. Schlager krijg ik de verzoeklijst met allemaal schlagers.
In die lijsten kan ik ook alleen zoeken in die bepaalde categorie.
Dus Frans Bauer komt niet voor in de zoekopdracht Buitenlands.
Er zit wel een addertje onder het gras.
De nummers die b.v. gekenmerkt staan als Nederlands hebben in de tags allemaal als genre nederlands.
Ik weet dat dit bij vele van jullie niet zo is dus daarom eerste maar de vraag.
Ik hoop dat dit dudelijk is zo en ik lees wel of hier liefebbers voor zijn.
Afbeelding

Gebruikersavatar
Wout
Moderator
Berichten: 3273
Lid geworden op: 03 dec 2007, 14:17
Answers: 1
SAM-versie: SAM 2019.3
Database: MySQL 8.0
Windows: Windows 10
Locatie: Bergen op Zoom
Contacteer:

Re: Leuk PHP trucje om te zoeken in een bepaalde categorie

Ongelezen bericht door Wout »

graag, ben wel benieuwd. :)
Afbeelding

Gebruikersavatar
Kees
VIP
Berichten: 3014
Lid geworden op: 28 nov 2005, 22:07
Answers: 1
SAM-versie: 4.9.1.*
Database: MySQL 5.0
Windows: 8.1
Locatie: Bergen op Zoom
Contacteer:

Re: Leuk PHP trucje om te zoeken in een bepaalde categorie

Ongelezen bericht door Kees »

Nou Wout, als jij er in geintereseert bent dan wil ik het wel uitleggen.
NOGMAALS !!!!
Nummers uit de cat. Nederlands moeten allemaal als genre nederlands hebben en uit de cat. schlager allemaal schlager.
Anders gaat deze truc niet op.
Afbeelding
Nu de uitleg...
Even 1 voorbeeld met de cat. Nederlands
Standaard is er maar 1 file waar je uit kan kiezen.
playlist.php.
Copieer nu playlist.php naar playlist-nederlands.php
Copieer nu search.php naar search-nederlands.php

In playlist-nederlands verander je deze regel

Code: Selecteer alles

$where = " WHERE (songtype='S') AND (status=0) ";
in

Code: Selecteer alles

$where = " WHERE (genre='nederlands') AND (status=0) ";
en 2 maal deze regel

Code: Selecteer alles

<? require("search.php"); ?>
in

Code: Selecteer alles

<? require("search-nederlands.php"); ?>
Nu gaan we search-nederlands.php aanpassen.
Verander daar deze regel

Code: Selecteer alles

<form method="POST" action="playlist.php">
in

Code: Selecteer alles

<form method="POST" action="playlist-nederlands.php">
Het enige wat je nu nog moet doen is je menu nav.php aanpassen.

Code: Selecteer alles

 
    <td nowrap align="center"><img border="0" src="images/tb-file-list.gif"></td>
    <td nowrap><a href="playlist-nederlands.php?limit=25"><font color="#000000">Verzoekjes<p style="margin-top: 0; margin-bottom: 0">Nederlands</a></td>
  </tr>
  <tr>
    <td nowrap align="center"><img border="0" src="images/tb-file-list.gif"></td>
    <td nowrap><a href="playlist-buitenlands.php?limit=25"><font color="#000000">Verzoekjes<p style="margin-top: 0; margin-bottom: 0">Buitenlands</a></td>
  </tr>
  <tr>
    <td nowrap align="center"><img border="0" src="images/tb-file-list.gif"></td>
    <td nowrap><a href="playlist-schlager.php?limit=25"><font color="#000000">Verzoekjes<p style="margin-top: 0; margin-bottom: 0">Schlager</a></td>
  </tr>
  <tr>
    <td nowrap align="center"><img border="0" src="images/tb-file-list.gif"></td>
    <td nowrap><a href="playlist-westerhaar.php?limit=25"><font color="#000000">Verzoekjes<p style="margin-top: 0; margin-bottom: 0">Westerhaar</a></td>
  </tr>
  <tr>
    <td nowrap align="center"><img border="0" src="images/tb-file-list.gif"></td>
    <td nowrap><a href="playlist-sinterklaas.php?limit=25"><font color="#000000">Verzoekjes<p style="margin-top: 0; margin-bottom: 0">Sinterklaas</a></td>
  </tr>
  <tr>
Suc6 er mee.

Gebruikersavatar
Kees
VIP
Berichten: 3014
Lid geworden op: 28 nov 2005, 22:07
Answers: 1
SAM-versie: 4.9.1.*
Database: MySQL 5.0
Windows: 8.1
Locatie: Bergen op Zoom
Contacteer:

Re: Leuk PHP trucje om te zoeken in een bepaalde categorie

Ongelezen bericht door Kees »

Ben benieuwd Wout..zat op een makkelijkere manier te wachten van jou kant of is dit toch de goeie manier hiihiih :rolleyes:

Gebruikersavatar
Wout
Moderator
Berichten: 3273
Lid geworden op: 03 dec 2007, 14:17
Answers: 1
SAM-versie: SAM 2019.3
Database: MySQL 8.0
Windows: Windows 10
Locatie: Bergen op Zoom
Contacteer:

Re: Leuk PHP trucje om te zoeken in een bepaalde categorie

Ongelezen bericht door Wout »

Ben ermee bezig. :-D
Afbeelding

Gebruikersavatar
ojee66
******
Berichten: 224
Lid geworden op: 20 jul 2006, 22:42
SAM-versie: 4.2.2.*
Database: MySQL 4.1
Windows: 2000
Locatie: Waddinxveen
Contacteer:

Re: Leuk PHP trucje om te zoeken in een bepaalde categorie

Ongelezen bericht door ojee66 »

Code: Selecteer alles

<html>
<head>
<? require("style.css"); ?>
<script language="JavaScript1.2"><? require("songinfo.js"); ?></script>
<script language='JavaScript1.2' src='http://www.audiorealm.com/player/player.js.html?srefID=1&subscription=no'></script>
<? require("req/request.java.php"); ?>
<script language="JavaScript1.2">
function PictureFail(picname) {
    if (document.images)
	 {
        document.images[picname].width   = 1;
		document.images[picname].height  = 1;
	 }
 }
</script>

</head>


<?
date_default_timezone_set('Europe/Amsterdam'); 
require("config.php");



 $where = " WHERE categoryid = 46 AND categorylist.songid=songlist.id AND (songtype='S') AND (status=0) ";
 
 Def($start,0);
 Def($limit,25);
 Def($search,"");

 //########## BUILD SEARCH STRING ################
 
 if(!empty($search))
 {
   $words = Array();
   $temp = explode(' ',$search);
   reset($temp);
   while(list($key,$val) = each($temp))
   {
    $val = trim($val);
    if(!empty($val))
	 $words[] = $val;
   }
	 

   $where2 = "";	  
   reset($words);
   while(list($key,$val) = each($words))	 
   {
     if(!empty($where2)) $where2 .= " OR ";
	 $val = "%$val%";
	 $db->AddStr($val); $db->AddStr($val); $db->AddStr($val);
     $where2 .= " (title like :val1) OR (artist like :val2) OR (album like :val3) ";
   }
   $where .= "AND ($where2) ";
}
 
 if((isset($letter)) && (!$letter==""))
 {
  $nextletter = chr(ord($letter)+1);
  if($letter=='0')
   $where .= " AND NOT((artist>='A') AND (artist<'ZZZZZZZZZZZ')) ";
  else
   {
    $db->AddStr($letter); $db->AddStr($nextletter);
    $where .= " AND ((artist>=:letter) AND (artist<:nextletter)) ";
   }
 }
 else
 {
		$letter="";
 }
 
 //########## =================== ################ 
 
 //Calculate total
 $tmp = $db->params; //Save params for second query
 $db->open("SELECT count(*) as cnt , songlist.* , categorylist.* FROM songlist, categorylist $where GROUP BY categorylist.songid=songlist.id");
 $row2 = $db->row();
 $cnt = $row2["cnt"];
 
 //Now grab a section of that
 $db->params = $tmp; //Restore params
 $db->open("SELECT songlist.* , categorylist.* FROM songlist, categorylist $where ORDER BY artist ASC, title ASC", $limit, $start);
 $row = $db->row();
 
 
 $first = $start+1;
 $last  = min($cnt,$start+$limit);
 $rc    = $start;
 
 $prevlnk = "";
 $nextlnk = "";
 if($cnt>0)
 {
 
 if(!isset($search))
	 { $search=""; }
  $searchstr = urlencode($search);
  $prev = max(0,$start-$limit);
  if($start>0)
    $prevlnk = "<a href='?start=$prev&limit=$limit&letter=$letter&search=$searchstr'><< Previous</a>";
   
  $tmp = ($start+$limit);
  if($tmp<$cnt) 
    $nextlnk = "<a href='?start=$tmp&limit=$limit&letter=$letter&search=$searchstr'>Next >></a>";
 }
    
function PutSongRow($song) 
{
 global $rc, $start, $darkrow, $lightrow;
 
 $rc++;
 $bgcolor = $darkrow;
 if(($rc % 2)==0) $bgcolor = $lightrow;
 
 
 PrepareSong($song);
 
 
 


?> 
  <tr bgcolor="<? echo $bgcolor; ?>"> 
    <td nowrap align="right" width="1%"><font size="2" color="#003366"><small><? echo "$rc"; ?></small></font></td>
    <td nowrap><font size="2" color="#003366">&nbsp;<small><? echo $song["combine"]; ?></small></font></td>
	
	<td nowrap width="1%"> 
      <p align="center"><font size="2" color="#003366"><a href="<? echo $song["request"]; ?>"><img
    src="images/request.gif" alt="Request this song now!" border="0"></a></font> 
    </td>
	
    <td nowrap width="1%"> 
      <p align="center"><font size="2" color="#003366"><a href="<? echo $song["buycd"]; ?>" target="_blank"><img
    src="images/buy.gif" alt="Buy this CD now!" border="0"></a></font> 
    </td>
    <td nowrap width="1%"> 
      <p align="center"><font size="2" color="#003366"><a href="<? echo $song["website"]; ?>" target="_blank"><img
    src="images/home.gif" alt="Artist homepage" border="0"></a></font> 
    </td>
	
	<td nowrap align="center" width="1%"> 
      <font size="2" color="#003366"><a href="javascript:songinfo(<? echo $song["songid"]; ?>)"><img
    src="images/info.gif" alt="Song information" border="0"></a></font> 
    </td>
	
    <td nowrap><font color="#003366" size="2"><small><? echo $song["album"]; ?></small></font></td>
    <td nowrap> 
      <p align="right"><font color="#003366" size="2"><small><strong><? echo $song["mmss"]; ?></strong></small></font>
    </td>
  </tr>
<?
}//PutSongRow

/* ## ===================================================================== ## */
?>

<?//  require("header.php"); ?>

<? require("search.php"); ?>
<br>

<table border="0" width="98%" cellspacing="0" cellpadding="4">
  <tr bgcolor="#002E5B"> 
    <td colspan="8" nowrap align="left"> 
      <b><font face="Verdana, Arial, Helvetica, sans-serif" size="1" color="#FFFFFF">Playlist results</font></b>
    </td>
  </tr>	
<? 
  while($song = $db->row())
   PutSongRow($song); 
?>
  
  <tr bgcolor="#E0E0E0"> 
    <td colspan="8" nowrap align="center">
	<? echo "$prevlnk"; ?>
 &nbsp; ( Showing <? echo "$first to $last of $cnt"; ?> ) &nbsp; 	 
	<? echo "$nextlnk"; ?></td>
  </tr>	
  
</table>

<br>
<? require("search.php"); ?>  
<? // require("footer.php"); ?>


Ik heb de playlist.php aangepast.
Let wel op.
Elke category heeft een id meegekregen in de database.
Deze moet aangepast worden aan de cat die je wil laten zien.
Alleen de search functie werkt nu niet meer, die zoekt dan in alle cat's

Gebruikersavatar
perry11
*****
Berichten: 185
Lid geworden op: 14 dec 2007, 16:37

Re: Leuk PHP trucje om te zoeken in een bepaalde categorie

Ongelezen bericht door perry11 »

hallo kees

ik wil daar mee mee gaan draaien maar in playlist.php stahee wat anders
ik heb sam 2020

deze code

Code: Selecteer alles

<?php

try {
	// Get the configuration
	require_once('../config/config.php');

	// Get the code for this page
	require_once('../code/code.playlist.php');

	// Get the display for this page
	require_once('../display/display.playlist.php');

} catch (Exception $ex) {
	// The error page will be displayed if anything goes wrong above
	$message = $ex->getMessage();
	require_once('../display/display.error.php');
}
is daar op wat voor het zo te krijg wat jij beschijf

Plaats reactie
  • Vergelijkbare Onderwerpen
    Reacties
    Weergaves
    Laatste bericht