Er wordt een arraysessie weggezet in de temp van de keuze(1) die gemaakt is in het menu.
Mocht men dan een andere keuze(2) maken dan wordt de bestaande sessie gedumpt en
de nieuwe arraysessie geplaatst.
Datgene is wat mij niet lukt. Weet ook niet waar ik dit neerzet in het script.
de logische gedachte is even weg.
Ook wil ik de nummering van de sessiearray zichtbaar. Omdat dit gebruikt
wordt op regel 133 op aan te geven - hoeveelste foto van Totaalfoto(= $last)- in array.
de variabele $rid wordt gebruikt om alle fotos te tonen (dus db-nummering.
Zoekende op het www en diverse probeersels lukt het mij niet om dit voor elkaar te krijgen.
mocht iemand mij daarin willen helpen, heel graag.
Het duurt mij nu te lang'
b.v.d.
Mocht men dan een andere keuze(2) maken dan wordt de bestaande sessie gedumpt en
de nieuwe arraysessie geplaatst.
Datgene is wat mij niet lukt. Weet ook niet waar ik dit neerzet in het script.
de logische gedachte is even weg.
Ook wil ik de nummering van de sessiearray zichtbaar. Omdat dit gebruikt
wordt op regel 133 op aan te geven - hoeveelste foto van Totaalfoto(= $last)- in array.
de variabele $rid wordt gebruikt om alle fotos te tonen (dus db-nummering.
Zoekende op het www en diverse probeersels lukt het mij niet om dit voor elkaar te krijgen.
mocht iemand mij daarin willen helpen, heel graag.
Het duurt mij nu te lang'
b.v.d.
PHP:
<?php
include ("../core/lib.inc.php");
myheader("slider");
$conn = mysqli_connect( $db['host'], $db['user'], $db['pw'], $db['db'] );
if(mysqli_connect_errno($conn))
{
trigger_error('Fout bij verbinden met database: '.mysqli_connect_error());
} else {
//echo "Verbinding gemaakt";
}
if (isset($_GET['img']) == ""){ $_GET['img'] = 1;}
if (isset($_GET['img']) <> ""){ $rid = $_GET['img'];}
//echo $rid;
// init slideshow class
$ss = new slideshow($err);
if (($err = $ss->init()) != '')
{
//header('HTTP/1.1 500 Internal Server Error');
echo $err;
exit();
}
// get image files from directory
$ss->get_images($conn);
// set variables, done.
list($curr, $caption, $first, $prev, $next, $last, $Omschrijving, $positie, $rid) = $ss->run();
/*
slideshow class, can be used stand-alone
*/
class slideshow
{
private $files_arr = NULL;
private $err = NULL;
public function __construct(&$err)
{
$this->files_arr = array();
$this->err = $err;
}
public function init()
{
// run actions only if img array session var is empty
// check if image directory exists
//if (!$this->dir_exists())
//{
// echo $this->dir_exists();
// return 'Error retrieving images, missing directory';
//}
//return '';
}
public function get_images($conn)
{
// run actions only if img array session var is empty
if (isset($_SESSION['imgarr']))
{
$this->files_arr = $_SESSION['imgarr'];
}else{
//echo "array niet in sessie dus hier langs<br>";
//hier het gekozen menu-item wat meegegeven wordt
$sql= "SELECT * from omschrijving where buro='".$_GET['id']."'";;
$result = mysqli_query($conn,$sql);
if($result){
while($row=mysqli_fetch_assoc($result)){
$this->files_arr[] = $row;
}
//print_r ($list);
}else{
echo "Fout";
}
}
$_SESSION['imgarr'] = $this->files_arr;
//print_r ($this->files_arr);
}
public function run()
{
$last = count($this->files_arr);
if (isset($_GET['img']))
{
if (preg_match('/^[0-9]+$/', $_GET['img'])) $curr = (int) $_GET['img'];
//echo $curr;
if ($curr <= 0 || $curr > $last) $curr = 1;
}
if ($curr <= 1)
{
$prev = $curr;
$next = $curr + 1;
}
else if ($curr >= $last)
{
$prev = $last - 1;
$next = $last;
}
else
{
$prev = $curr - 1;
$next = $curr + 1;
}
$foto = $this->files_arr[$curr - 1]['foto'];
$Omschrijving = $this->files_arr[$curr - 1]['beschrijving'];
$rid = $this->files_arr[$curr - 1]['id'];
$positie = $this->files_arr[$curr - 1]['positie'];
//echo 'Fotonummer = '.$foto.'';
echo '<br>';
// regel benden set de caption-naam...
$ext = ".JPG";
$caption = str_replace(' ', ' ', $this->files_arr[$curr - 1]['foto']);
$caption = str_replace(' ', ' ', $caption);
$caption = preg_replace('/\.(jpg|jpe?g|gif|png|JPG)$/i', '', $caption);
$caption = $caption.$ext;
return array($this->files_arr[$curr - 1]['foto'], $caption, 1, $prev, $next, $last, $Omschrijving, $positie, $rid);
}
private function dir_exists()
{
//return file_exists(foto);
}
}
?>
<div id="hoofdvak">
<div id="tekstvak">
<?php
// alleen laten zien wanneer men lid is
if (isset($_SESSION['lid']) == 1){
// wijzigen aanbrengen wanner men gerechtigd is.....
// if (isset($_SESSION['rechten']) == 1){
echo'<div class="numbertext"><center>Foto : '.$rid.' van '.$last.'</center></div>';
echo'<div class="gallery">';
?>
<a class= "prev" href="?img=<?=$prev;?>">❮</a>
<a class= "next" href="?img=<?=$next;?>">❯</a>
<?php
if ($positie == 0){
echo'<center><img class="scaled" src="'.fotos.$caption.'" alt="" ></center>';
}else{
echo'<center><img class="scaled1" src="'.fotos.$caption.'" alt="">'; //style= "height= 480px;"> </center>';
}
echo'<div><center><p class="gallery-image-label">'.$Omschrijving.'</p></center></div>';
echo'</div>';
?>