php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 10.03.2008, 23:12  
Neuer Benutzer
 
Registriert seit: 10.03.2008
Beiträge: 1
eimer24 befindet sich auf einem aufstrebenden Ast
Standard Zufalls Diashow Script

Hallo,
ich habe dieses Diashow Script bereits im Inet gefunden.

Code:
<?php

# Diashow mit PHP und JavaScript

# Verzeichnis der Bilder
$verzeichnis = "bilder/";

# Geschwindigkeit in Millisekunden
# 3000 = 3 Sekunden
$peed = 2500;

echo "
<script type='text/javascript'>
Animation=new Array();
bild=new Array();
var i=0;
";

$ordner=opendir ($verzeichnis); 
$by = 0;
while ($file = readdir ($ordner)) {
 if($file != "." && $file != "..") {
  echo "bild[$by]='$verzeichnis$file';\n";
  $by++;
 }
}
 closedir($ordner);

echo "
for(r=0; r < $by; r++){
 Animation[r]=new Image(); Animation[r].src=bild[r];
}

function anzeigen(){
 if(i < $by){
  document.images.dummy.src=Animation[i].src;
  i++;
 }
 else{
  i=0;
 }
  setTimeout('anzeigen()',$peed);
}
</script>

<body onLoad='anzeigen();'>
<div align=center><img name='dummy'></div>
";
?>
So funktioniert es super und entspricht auch ganz meinen wünschen.
Nur hätte ich gerne das die Bilder zufällig ausgewählt und dann angezeigt werden.
Kann mir da vielleicht einer behilflich sein, da ich nicht viel ahnung von php habe.
M.f.G.
eimer24 ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 03.07.2008, 17:32  
Benutzer
 
Registriert seit: 02.07.2008
Beiträge: 31
stinger133 befindet sich auf einem aufstrebenden Ast
Standard

In der Funktion "anzeigen()" kannst du doch einfach eine Zufallszahl zwischen 0 und der Arraylaenge-1, also der Anzahl der Bilder-1 generieren und dann dieses Bild anzeigen. Ungefähr so:

PHP-Code:
function anzeigen(){
 while(
Animation.length-1){
  
= (Animation.length-1)*(Math.random());
  
Math.round(i);
 }
  
document.images.dummy.src=Animation[i].src;

Dass 1 abgezogen wird ist deshalb wichtig, weil der Zugriff auf ein Array ja nicht mit 1, sondern mit 0 beginnt. Sprich der 1. Arrayinhalt wird mit array[0] und nicht array[1] ausgelesen.
Versuch mal ob du damit weiterkommst.

Geändert von stinger133 (03.07.2008 um 21:15 Uhr).
stinger133 ist offline  
Alt 04.07.2008, 06:50  
Moderator
 
Benutzerbild von Chriz
 
Registriert seit: 11.05.2008
Beiträge: 6.268
Chriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer Anblick
Standard

Das ist jetzt aber JavaScript-Code den du gepostet hast;

eimer24, bitte mach dich doch etwas mit PHP schlau, wir wollen hier Leuten helfen PHP zu lernen, nicht kostenlos Skripte fuer sie schreiben.

Entweder du postest also deine Versuche oder ich verschiebe das ganze ins Gesuche-Forum.

PHP: mt_rand - Manual
PHP: shuffle - Manual
__________________
"Nuschel ich?" - "Was?"
Chriz ist offline  
Alt 04.07.2008, 08:16  
Benutzer
 
Registriert seit: 02.07.2008
Beiträge: 31
stinger133 befindet sich auf einem aufstrebenden Ast
Standard

Da er die Funktionen eh schon in JS geschrieben hatte, dachte ich halt es wäre für ihn einfacher. Ist aber natürlich auch in PHP zu lösen. Um dir nicht gleich wieder "ein kostenloses Skript zu schreiben", geb ich dir halr ein paar Tipps.

Deine Javascript-Variablen Bild und Animation brauchst du eigentlich gar nicht in JS. Verwende doch PHP-Variablen, als $Bild und $Animation. Die liest ja schon wunderbar den Ordner auf dem Server aus und füllst die Variable Bild mit den Dateipfaden. Schreib sie doch gleich in eine PHP-Variable $Bild. Danach füllst du dein 2. Array $Animation. Anschließend über
PHP-Code:
count($Animation); 
Die Arraylänge auslesen und über
PHP-Code:
rand(0,count($Animation)-1); 
eine Zufallszahls erzeugen, die dann das zufällige Bild aufruft. Deine Ausgabe sieht dann halt so aus:
PHP-Code:
echo "document.images.dummy.src=".$Animation[$i].src.";"
wenn $i deine Zufallszahl ist.
stinger133 ist offline  
Alt 04.07.2008, 12:55  
Erfahrener Benutzer
 
Benutzerbild von lazydog
 
Registriert seit: 02.04.2008
Beiträge: 4.032
lazydog befindet sich auf einem aufstrebenden Ast
Standard

Schau dir mal die Funktionen glob() und shuffle() an. Damit dürfte das noch einfacher zu realisieren sein, als in deinem Beispiel.
Was allerdings dein JS-Teil machen soll verstehe ich definitiv nicht.
__________________
Gruss
L
lazydog ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
diashow - script nixdorf JavaScript, Ajax und mehr 8 14.04.2009 13:52
Diverses aus meinem Apache Logs robo47 Server, Hosting und Workstations 5 25.05.2007 22:45
Script beendet sich ohne Fehlermeldung Zahl PHP Tipps 2006 6 04.06.2006 20:41
passwort script problem PHP Tipps 2006 8 15.02.2006 10:30
[Erledigt] php script und ixed PHP Tipps 2005-2 14 12.10.2005 13:34
[Erledigt] Verzögerung durch included Script? Umgehen? PHP Tipps 2005-2 4 10.07.2005 19:26
[Erledigt] Relay Script PHP-Fortgeschrittene 11 01.06.2005 16:02
[Erledigt] Hilfe bei Download Verwaltungs Script PHP Tipps 2005 8 04.05.2005 10:29
Fehler bei Script, welches Ordner erstellt PsychoEagle PHP Tipps 2005 3 23.04.2005 16:03
[Erledigt] python script mit php aufrufen... PHP-Fortgeschrittene 1 17.11.2004 17:11
PHP Script aus PHP aufrufen Stümper PHP Tipps 2004 5 26.09.2004 08:15
"das" Script oder "der" Script?? Simbo Off-Topic Diskussionen 31 16.09.2004 17:04

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
zufalls diashow, javascript diashow, http://www.php.de/php-tipps-2008/666-zufalls-diashow-script.html, diashow script, zufallsdiashow, diashow zufall, php diashow script, diashow script php, slideshow php script, zufällige diashow, javascript zufällige diashow, php zufalls diashow, script diashow zufall, php script diashow, php slideshow zufall, php diashow zufällige, php diashow, javascript slideshow zufall, diashow zufällig, slideshow zufall

Alle Zeitangaben in WEZ +2. Es ist jetzt 18:24 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum