Klopfer
Mitglied
Hallo zusammen,
wie im Betreff schon erwähnt habe ich ein problem mit jcarousel.
Ich habe vor, über die Adressleite ein Variable zu übergeben, die den Name des Ordners der Thumbnails enthält.
Diese Variable kann ich mir auch mit einem einfachen echo ausgeben lassen. Allerdings nur in dem PHP script das ich öffne. Also
index.php?galerie=EM2008
schreibe ich jetzt in der index.php echo $galerie; gibt er mir das auch richtig als Text wieder. Diese Variable möchte ich nun aber an einer anderen stelle in einem anderen Script, welches aber über die selbe Seite mitgeladen wird in einen Textblock mit einbinden. Was aber NICHT funktioniert. Anbei der Quelltext der beiden Dateien. Ich suche jetzt schon 2 Tage dran und finde den Fehler nicht wieso er die Variable nicht ausliest.
index.php
galerie_ajax.php
Gruß Fabian
wie im Betreff schon erwähnt habe ich ein problem mit jcarousel.
Ich habe vor, über die Adressleite ein Variable zu übergeben, die den Name des Ordners der Thumbnails enthält.
Diese Variable kann ich mir auch mit einem einfachen echo ausgeben lassen. Allerdings nur in dem PHP script das ich öffne. Also
index.php?galerie=EM2008
schreibe ich jetzt in der index.php echo $galerie; gibt er mir das auch richtig als Text wieder. Diese Variable möchte ich nun aber an einer anderen stelle in einem anderen Script, welches aber über die selbe Seite mitgeladen wird in einen Textblock mit einbinden. Was aber NICHT funktioniert. Anbei der Quelltext der beiden Dateien. Ich suche jetzt schon 2 Tage dran und finde den Fehler nicht wieso er die Variable nicht ausliest.
index.php
PHP:
<script type="text/javascript" src="../js/jquery-1.2.3.pack.js"></script>
<script type="text/javascript" src="../js/jquery.jcarousel.pack.js"></script>
<link rel="stylesheet" type="text/css" href="../css/skin.css" />
<script type="text/javascript">
function mycarousel_itemLoadCallback(carousel, state)
{
// Prüfen ob die angefragten Teile schon vorhanden sind
if (carousel.has(carousel.first, carousel.last)) {
return;
}
jQuery.get(
'inhalt/galerie_ajax.php',
{
first: carousel.first,
last: carousel.last,
},
function(xml) {
mycarousel_itemAddCallback(carousel, carousel.first, carousel.last, xml);
},
'xml'
);
};
function mycarousel_itemAddCallback(carousel, first, last, xml)
{
// Set the size of the carousel
carousel.size(parseInt(jQuery('total', xml).text()));
jQuery('image', xml).each(function(i) {
carousel.add(first + i, mycarousel_getItemHTML(jQuery(this).text()));
});
};
/**
* Item html creation helper.
*/
function mycarousel_getItemHTML(url)
{
return '<img src="' + url + '" width="75" height="56" alt="" />';
};
jQuery(document).ready(function() {
jQuery('#mycarousel').jcarousel({
// Uncomment the following option if you want items
// which are outside the visible range to be removed
// from the DOM.
// Useful for carousels with MANY items.
itemVisibleOutCallback: {onAfterAnimation: function(carousel, item, i, state, evt) { carousel.remove(i); }},
itemLoadCallback: mycarousel_itemLoadCallback
});
});
</script>
<div id="wrap">
<div id="mycarousel" class="jcarousel-skin-ie7">
<ul>
<!-- Inhalt wird Dynamisch erzeugt -->
</ul>
</div>
</div>
galerie_ajax.php
PHP:
<?php
$dir = '/galerie/thumb/'.$galerie.''';
if(is_dir($dir)){
//true -> angegebene Variable ist ein Verzeichnis
if($dir != "." && $dir != ".."){
foreach(glob("".$dir."/*.jpg") as $bild) {
$images[] = $bild;
}
}
}else{
//false -> angegeben Variable ist kein Verzeichnis
$bild = "Kein Ordner";
}
$first = max(0, intval($_GET['first']) - 1);
$last = max($first + 1, intval($_GET['last']) - 1);
$length = $last - $first + 1;
$total = count($images);
$selected = array_slice($images, $first, $length);
header('Content-Type: text/xml');
echo "<data>";
echo "<total>".$total."</total>";
foreach ($selected as $img) {
echo"<image>".$img."</image>";
}
echo"</data>";
?>
Gruß Fabian