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, 2949 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
Batch & Shell

Wieso ist die Catch Ausgabe ohne ausgabe der Variable?

gelöst Frage von pixel0815Batch & Shell10 Kommentare

Hallo zusammen, weshalb wird nicht die Variable $_.Hostname mit dem betreffenden nicht vorhandenen Record angezeigt? Ich erhalte immer Kein ...

Microsoft

Ausgabe einer CMD-Ausgabe in Datei kopieren

Frage von zimbomanMicrosoft4 Kommentare

Hallo zusammen! Wir haben ein Batch-Skript mit mehrere Abfragen und Ablaufroutinen. Es ist unser Vorinstallationsskript das auf Nachfrage diverse ...

Datenbanken

MYSQL ausgabe

Frage von pcguyDatenbanken31 Kommentare

Hallo zusammen Ich versuche gerade einen DB inhalt gefiltert auszugeben. DB: id - parent_id - title - url - ...

Batch & Shell

Ausgabe filtern

gelöst Frage von DoktorApfelBatch & Shell2 Kommentare

Hallo zusammen, Ich schreib gerade an einem Skript für Abfragen aus dem Programm Device42, mit Hilfe folgendes Befehles Erhalte ...

Neue Wissensbeiträge
Server-Hardware
HP iLO ist gefährdet (iLO 4))
Tipp von AlFalcone vor 9 StundenServer-Hardware1 Kommentar

Gemäss Twitter und Heise gibt es eine Angriffsmöglichkeit auf iLO Quelle: iLO ist gefährdet

CMS
Erneut kritische Zero-Day-Lücke in Drupal
Tipp von Reini82 vor 18 StundenCMS

Laut einem Bericht auf t3n gibt es eine Schwere Sicherheitslücke in Drupal die auch schon ausgenutzt wird. Betroffen sind ...

Sicherheit

MikroTik-Router patchen, Schwachstelle wird ausgenutzt

Information von kgborn vor 1 TagSicherheit

Am 23. April 2018 wurde von Mikrotik ein Security Advisory herausgegeben, welches auf eine Schwachstelle im RouterOS hinwies. Mikrotik ...

Windows 10

Microcode-Updates KB4090007, KB4091663, KB4091664, KB4091666 für Windows 10

Information von kgborn vor 1 TagWindows 101 Kommentar

Kurze Information für Administratoren von Windows 10-Systemen, die mit neueren Intel CPUs laufen. Microsoft hat zum 23. April 2018 ...

Heiß diskutierte Inhalte
Ausbildung
Wie gelingt ein guter Einstieg in die FiSi-Ausbildung? (Umschulung)
Frage von SiAnKoAusbildung30 Kommentare

Schönen guten Tag, ich bin SiAnKo und habe seit dem 1.04.2018 eine Umschulung als FiSi angefangen. Ich möchte natürlich ...

Windows Server
Alten DC entfernen
gelöst Frage von smartinoWindows Server27 Kommentare

Hallo zusammen, ich habe hier eine Umgebung übernommen und erstmal einen DCDIAG gemacht. Dabei fällt auf, daß eine ganze ...

Batch & Shell
Mit Powershell den Inhalt einer Excel mit einer Text Datei abgleichen
gelöst Frage von Bommi1961Batch & Shell21 Kommentare

Hallo zusammen, ich muss den Inhalt einer Excel Datei (Mappe1) mit dem Daten einer Text Datei abgleichen. Die Daten ...

Router & Routing
Subnetzmaske vergrößern
gelöst Frage von groovesurferRouter & Routing18 Kommentare

Hallo, hat jemand schonmal getestet was passiert, wenn man die Subnetzmaske bei laufendem Betrieb (wenn user im Netzwerk verbunden ...