parsing d.m.v. het uitlezen van het path achter de PHP script. LET OP # kan alleen op apache webserver. # --> Zorgt voor de presentatie van de moppen # Parameters in URL: /school/ # : schoolnummer wordt gebruikt om de juiste school op te zoeken # # - Maakt gebruik van template.php (parsing van een template bestand # - Template is mop_overzicht.tmpl ############################################################################################### require_once("template.php"); include("config.php"); # Uitlezen van de parameters in de URL; # Array is opgebouwd uit de volgende elementen: # - 1e sorteer methode (op ID, CATEGORY, RANK) # # /id/desc/25/2 --> sorteer de moppen op id, aflopend, per 25 stuks, start op pagina 2 # /cat/2/desc/25/2 sorteer de moppen op categorie, filter cat id =2, per 25 start op pagina 2 $var_array = explode("/", $_SERVER [ 'PATH_INFO' ] ); Global $var_array; if ( $mop_sel > 0 ) { if (is_array($_SESSION['basket'])) { $basket = $_SESSION['basket']; $n = count($basket); $basket[$n] = $mop_sel; } else { $basket= array(); $basket[0]= $mop_sel; } session_register("basket"); } if ( $remove == true ) { session_destroy(); $basket=""; } if (is_array($_SESSION['basket'])) { $nm_selected = count($_SESSION['basket']); } else { $nm_selected = 0; } # Controle of er een stem is uitgevoerd; if ( $vote > 0 ) { setcookie ( "moppenhoek[" . $vote . "]" , 1 , time()+ 3600000); } # Controle of er een stem is uitgevoerd; if ( $vote > 0 ) { if ($moppenhoek[$vote] <> 1) { $sql="SELECT * FROM moppen WHERE mop_id='$vote'"; $result = mysql_query( $sql ); if ($myrow = mysql_fetch_array($result)) { $veld_1 = $myrow['aantal_1']; $veld_2 = $myrow['aantal_2']; $veld_3 = $myrow['aantal_3']; $veld_4 = $myrow['aantal_4']; $veld_5 = $myrow['aantal_5']; $totaal = $myrow['score_totaal'] + $rate; $aantal = $myrow['score_aantal'] + 1; $gemiddelde = $totaal / $aantal; switch( $rate ) { case 1: $veld_1 = $veld_1 + 1; break; case 2: $veld_2 = $veld_2 + 1; break; case 3: $veld_3 = $veld_3 + 1; break; case 4: $veld_4 = $veld_4 + 1; break; case 5: $veld_5 = $veld_5 + 1; break; } $sql = "UPDATE moppen SET gemiddelde='$gemiddelde', score_aantal='$aantal', score_totaal='$totaal', aantal_1='$veld_1', aantal_2='$veld_2', aantal_3='$veld_3', aantal_4='$veld_4', aantal_5='$veld_5' WHERE mop_id = '$vote' "; $result = mysql_query ( $sql ); } } } if ($nm_selected > 0) { $selected_txt = "Aantal moppen geselecteerd: " . $nm_selected ; $url_ophef = $PHP_SELF . "?&remove=true"; $url_print = "/print_moppen.php"; $url_mail = "/mail/mop_mail.php"; $selected_txt = $selected_txt . "  [Print selectie]  [E-mail selectie]  [Selectie opheffen]

"; } # aanmaken van het overzicht; # A.d.v. de meegegeven parameters; # $sort_field = $var_array[1]; if ($sort_field == "id") { $sortfield = "mop_id"; $sortorder = $var_array[2]; $startpage = $var_array[3]; $numberofDocs = $var_array[4]; $filter = ""; if ( $var_array[5] == "nieuw" ) { $body_titel = "

De laatste toegevoegde moppen op moppenhoek.nl

"; $sub_url = "/nieuw"; } if ( $var_array[5] == "cat" ) { $cat_id = $var_array[6]; $sql_category = "SELECT * FROM mop_category WHERE category_id = '". $cat_id . "'"; $res_category = mysql_query( $sql_category ); $filter = "WHERE mop_category='" . $cat_id . "'"; if ($myrow = mysql_fetch_array($res_category)) { $body_titel = "

Moppen archief: geselecteerd op : Categorie overzicht ->" . $myrow['cat_oms']. "

"; } $sub_url = "/cat/" . $cat_id; } if ( $var_array[5] == "top" ) { $filter = " WHERE score_aantal > 4 "; $sortfield = "gemiddelde"; $body_titel = "

De beste moppen, met meer dan 4 stemmen

"; $sub_url = "/top"; $robots = "index, follow"; } else { $robots = "noindex, nofollow"; } $page = $startpage * $numberofDocs - $numberofDocs ; $sqlstring = "SELECT * FROM moppen " . $filter. " order by " . $sortfield . " " . $sortorder . " limit " . $page . ", " . $numberofDocs; $sql_count = "SELECT * FROM moppen " . $filter; } else { $sqlstring = "SELECT * FROM moppen order by mop_id DESC limit 1, 10"; } $res_count = mysql_query( $sql_count ); $num_rows = mysql_num_rows( $res_count); mysql_free_result ( $res_count ); # Maximum aantal weer te geven pagina's is 10 $nm_of_pages = ceil( $num_rows / $numberofDocs ); if ( $startpage == 1 ) { $prev_url = ""; $next_url = "<Volgende pagina>"; $end_page = 10; $beg_page = 1; } else { $prev_url = "<Vorige pagina>"; if ( $startpage <> $nm_of_pages ) { $next_url = "<Volgende pagina>"; } if ( $startpage > 5 ) { $end_page = $startpage + 5; $beg_page = $startpage - 5; if ( $end_page > $nm_of_pages ) { $end_page = $nm_of_pages; $beg_page = $nm_of_pages - 10; } } else { $beg_page = 1; $end_page = 10; } if ( $beg_page < 0) { $beg_page = 1; $end_page = 10; } } if ( $end_page > $nm_of_pages ) { $end_page = $nm_of_pages; } if ( $nm_of_pages == 1) { $next_url = ""; } # Definitie van de "overzicht pagina URL's; $browse_txt = ""; for ( $i = $beg_page; $i <= $end_page; $i++) { if ($i <> $startpage ) { $browse_txt = $browse_txt . "" . $i. " "; } else { $browse_txt = $browse_txt . " " . $i . " "; } } $result = mysql_query( $sqlstring ); if ($myrow = mysql_fetch_array($result)) { $mop_body = ""; do { # voer controle uit of de mop al geselecteerd is; $select_ok = 1; if ( $nm_selected > 0 ) { #controleer of de mop in de sessie array voorkomt; if (in_array( $myrow['mop_id'], $basket)) { $select_ok = 0; } } if ( $select_ok == 1) { $select_txt = "[selecteer mop]  "; } $bewerk_txt = ""; $delete_txt = ""; if ( isset($username) ) { $bewerk_txt = "  "; $delete_txt = "  "; } $mop_body = $mop_body . ""; $mop_body = $mop_body . ""; $mop_body = $mop_body . ""; } while ($myrow = mysql_fetch_array($result)); $mop_body = $mop_body . "
" . $body_titel . $selected_txt; $mop_body = $mop_body . "Aantal pagina's: " . $nm_of_pages . "   " . $prev_url . " ". $browse_txt . " " . $next_url . "
" . $delete_txt . $bewerk_txt . $select_txt . " " . $myrow['mop_titel'] . "
" . $myrow['mop_omschrijving'] . "
" ; if ( $myrow['score_aantal'] < 5 ) { $mop_body = $mop_body . "Aantal stemmen is kleiner dan 5"; } else { $mop_body = $mop_body . "Aantal stemmen : " . $myrow['score_aantal'] . "   gemiddelde score: " . $myrow['gemiddelde'] . ""; } if ( $myrow['aanmelder'] != "" ) { $mop_body = $mop_body . "  Aanmelder: " . $myrow['aanmelder'] . " "; } $mop_body = $mop_body . "
"; # Controle uitvoeren of er al gestemd is if ( $moppenhoek[$myrow['mop_id']] <> 1 ) { if ( $vote <> $myrow['mop_id']) { $mop_body = $mop_body . ""; $mop_body = $mop_body . ""; $mop_body = $mop_body . "
Geef score:
"; $mop_body = $mop_body . ""; $mop_body = $mop_body .""; $mop_body = $mop_body . ""; $mop_body = $mop_body . ""; $mop_body = $mop_body . ""; $mop_body = $mop_body . ""; $mop_body = $mop_body . ""; $mop_body = $mop_body . ""; $mop_body = $mop_body . "
Uitstekend
Zeer goed
Goed
Matig
Slecht
"; } else { $mop_body = $mop_body . " "; } } else { $mop_body = $mop_body . " "; } $mop_body = $mop_body . "

"; } #-- Including the poster_sitebar include("poster_sitebar.php"); # Setting the template class $template_name = "mop_overzicht.tmpl"; $template =& new Template( $template_name ); $template->AddParam('mop_robots', $robots ); $template->AddParam('mop_title', "Overzicht van de nieuwste moppen, grappen en raadsels"); $template->AddParam('mop_body', $mop_body); $template->AddParam('mop_sitebar', postersitebar( 6 )); $template->EchoOutput(); ?>