Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Bei Zufalls Ausgabe jeweils nur einmal

Mitglied: Dipps

Dipps (Level 2) - Jetzt verbinden

18.03.2010, aktualisiert 14:14 Uhr, 3021 Aufrufe, 3 Kommentare

Bei Zufalls Ausgabe jeweils nur einmal

Hallo wir machen bei uns auf der Webseite ein Zufalls Bild aus der DB laden nun habe ich das in eine for schleife gemacht und auf 200 mal gesetzt.
da würde er 200 zufallsbilder ausgeben nun kommt es vor das 2 bis 10 mal hintereinander das selbe bild ist.
ich schreibe die bilder dann in ein javascript array was kann ich machen damit die bilder nicht hintereinader mehrmals vorkommen am besten sollte es sein das jedes bild am ende nur einmal im array ist.

der code
01.
<script language="JavaScript" type="text/javascript">
02.

03.
var akturl= document.getElementById('hslb').href;
04.
image_url[0] = akturl;
05.

06.
setTimeout("img_autoreload('imgbild')", 5000);
07.
                        var image;                      
08.
                        
09.
<%
10.
for(my $i = 1; $i <= 199; $i++) {
11.

12.
  require "../plugins/bild_startseite/plugin.pl";
13.

14.
  my $imgtempl="##IMAGE1##";
15.
  my ($imghtml, $imgid)=&zufallsbild($dbh, $cgi, 95, $imgtempl);
16.

17.
print "image_url[$i] =\"$imghtml\";\n";
18.
print "image_set[$i] ={'caption': 'Startbilder', 'url':'$imghtml'};\n";
19.
}
Die Set sieht so am ende aus und muss auch so aussehen
01.
image_set[16] ={'caption': 'Startbilder', 'url':'/images/BildXYZ.jpg'};
Mitglied: bytecounter
18.03.2010 um 14:27 Uhr
Das versteh ich nu nicht ganz...für ein Zufallsbild dieser Aufwand? Naja, vielleicht verwirren mich auch nur die fehlenden Satzzeichen..

Mit shuffle() aus list::Util (ab Perl 5.8) hast Du genau die Funktion. Also ich würde mit Perl an Javascript ein zufällig zusammengestelltes Array übergeben, welches dann von Javascript durchlaufen wird.
Verwendest Du eine ältere Perl-Version müsstest Du dir den Algorithmus selber schreiben, ist aber auch kein Hexenwerk, denke aber, dass man da bei Google auch schon vorgefertigte Scripten findet.
Jedenfalls in JS nur ein Array und dieses mit einer for-Schleife und Verzögerung auslesen und die entsprechende Grafik setzen.

vg
Bytecounter
Bitte warten ..
Mitglied: Dipps
18.03.2010 um 16:46 Uhr
Ich habe es jetzt so gelöst

01.

02.
my @bildarray =();
03.

04.
for(my $i = 1; $i <= 199; $i++) {
05.
 
06.

07.

08.

09.

10.
  require "../4flex/plugins/bild_startseite/plugin.pl";
11.

12.
  my $imgtempl="##IMAGE1##";
13.
  my ($imghtml, $imgid)=&zufallsbild($dbh, $cgi, 95, $imgtempl);
14.

15.

16.
  $bildarray[$i]=$imghtml;
17.

18.

19.
}
20.

21.
sub del_double{
22.
my %all=();
23.
@all{@_}=1;
24.
return (keys %all);
25.
}
26.

27.
my @bil=&del_double(@bildarray);
28.
print "//@bil\n";
29.

30.
$ende = @bil;
31.

32.
for(my $a = 1; $a < $ende; $a++) {
33.

34.
print "image_url[$a] =\"$bil[$a]\";\n";
35.
print "image_set[$a] ={'caption': 'Startbilder ', 'url':'$bil[$a]'};\n";
36.

37.
}
38.

39.

40.
%>
41.
Funktioiert auch so weit super ausser das das JavaScriptArray[2] immer leer ist sprich in $bil[2] ist ni was drin warum das?
Bitte warten ..
Mitglied: filippg
18.03.2010 um 21:32 Uhr
Hallo,

mir sieht das alles sehr spanisch aus. Daher zur zwei allgemeine Hinweise:
1. Wenn man von einem Zufallsgenerator mehrmals am Stück den gleichen Wert ausgespuckt bekommt liegt das meist an einer falschen Initialisierung. Jeder Zufallszahlenalgorithmus ist eine mathematische Funktion und als solche deterministisch. Die Funktion benötigt einen Input-Wert und errechnet zu diesem eine Ausgabe - bei gleichem Input _immer_ den gleichen Output. Als Input-Wert wird oft Datum + Uhrzeit verwendet. Das wiederholt sich seeeehr selten. Folglich ist der Input immer unterschiedlich, folglich der Output auch. Außer natürlich, man ruft die Funktion mehrmals in der gleichen Millisekunde (oder was auch immer die Einheit ist). Schaue mal in der Referenz zu der von dir verwendeten Zufallsfunktion.
2. Das require wird bei jedem Schleifendurchlauf aufgerufen. Kann es sein, dass das Unsinn ist, und du es besser vor die Schleife packen solltest?

Gruß

Filipp
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
Zufall in Excel
gelöst Frage von ms01Microsoft Office2 Kommentare

Ich habe eine Excelliste mit 400 Namen in Spalte A. Von diesen 400 Namen möchte ich 50 Namen auswählen ...

Entwicklung
Alles Zufall (Algorithmus gesucht)
Frage von WPFORGEEntwicklung2 Kommentare

Hallo, ich bin auf der Suche nach einer Funktion, die einen bestimmten Betragsbereich (zum Beispiel 80000 -120000) in einzelnen ...

Google Android

Android 6.0 Zufall Spam Screens die alles überdecken

Frage von FL1991Google Android9 Kommentare

Hallo Zusammen, da ich bei Google nicht fündig wurde, hoffe ich mal, dass mir hier ein Android Profi kurzfristig ...

Neue Wissensbeiträge
Rechtliche Fragen
Unitymedia siegt vor dem BGH
Information von transocean vor 18 StundenRechtliche Fragen3 Kommentare

Moin, lt. einem aktuellen Urteil darf UM Mietrouter seiner Kunden weiterhin in Hotspots verwandeln. Nachlesen kann man das hier. ...

Router & Routing
Der "768k-Day" kommt
Information von LordGurke vor 1 TagRouter & Routing2 Kommentare

Für Leute, die Router mit BGP-Fulltable betreiben vielleicht ein interessanter Hinweis: Die IPv4-Fulltable erreicht voraussichtlich innerhalb der nächsten 2-3 ...

Debian

Partition angeblich voll, dabei aber noch nicht mal zur Hälfte belegt

Anleitung von diemilz vor 2 TagenDebian8 Kommentare

Hallo zusammen, ich habe ein kleines Problem: Ich habe auf einem physischen Debian Linux Server als ZoneMinder-Server (HP ProLiant ...

Windows 7
Updategängelung auf Windows 10, die zweite
Information von Penny.Cilin vor 6 TagenWindows 73 Kommentare

Hallo, da Windows 7 im kommenden Jahr nicht mehr supportet wird, werden Nutzer von Window 7 home premium wieder ...

Heiß diskutierte Inhalte
HTML
Bild hochladen mit html auf die Webseite
gelöst Frage von WorldoftheitHTML63 Kommentare

Will eine Seite entwickeln im Internet aber Das Bild wird nicht angezeigt woran kann das liegen? Wäre für jede ...

Vmware
Terminalserver VM - Videos ruckeln
Frage von easyriderVmware29 Kommentare

Hallo zusammen, wir haben einen (free) ESXi 5.5 auf einem HP DL 380 G8 im Einsatz. Darauf läuft, unter ...

Festplatten, SSD, Raid
Harddisk kaputt, was sagt mir ChrystalDiskInfo
gelöst Frage von InfoSeekerFestplatten, SSD, Raid23 Kommentare

Hallo zusammen, Mein Rechner lahmt. Ich stell mir die Frage woran es liegt und bin der Meinung es ist ...

Backup
Veeam Community Edition
gelöst Frage von dgrebnerBackup23 Kommentare

Hallo Zusammen, kann jemand seine praktischen Erfahrungswerte mit der Veeam-Community Edition mit mir teilen? Es gab dazu ja schon ...