getreidemuehlen
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 13.09.2005, 12:54   #1
TP-Junior
 
Benutzerbild von imatt
 
Registriert seit: Sep 2005
imatt macht alles soweit korrekt

Bilder mit Link zufällig anzeigen


Erst einmal ein herzliches Hallo an alle (bin neu hier)!
Obwohl ich schon etwas länger die Beiträge lese, ist dies mein erster Thread...

Nun zu Thema:
Ich bin gerade dabei meine Website neu zu gestalten. Dazu möchte ich auf der Startseite drei Bilder, die mit unterschiedlichen Links versehen sind, zufällig aus einem Pool von ca. 40 Bilder anzeigen.

Damit ihr euch das ein wenig vorstellen könnt hier der Entwurf

Wäre für jeden Lösungsvorschlag dankbar.

PS. Mein Server unterstützt PHP.
imatt ist offline   Mit Zitat antworten


Alt 13.09.2005, 14:01   #2
TP-Urgestein
 
Benutzerbild von webcreate
 
Registriert seit: Nov 2003
Ort: NRW
webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts
Willkommen im TP.
Dein Problem wäre besser im Dynamik Bereich aufgehoben.
Ggf. kann es ja einer verschieben.

Zum Problem:
Erzeuge ein mehrdimensionales Array und dann nutze die rand function.
Ansatz:
PHP-Code:
<?
$bilder
['bild']= array("01.jpg""02.jpg""03.jpg");
$bilder['url'] = array("http://www.link1.de""http://www.link2.de""http://www.link3.de");

$zuffi rand(0count($bilder['bild'])-1);

echo 
"<a href=\"".$bilder[url][$zuffi]."\" target=\"_blank\"><img src=\"".$bilder['bild'][$zuffi]."\" border\"0\"></a>";
?>
Wichtig ist halt, dass die Anzahl der Link zu den der Bilder passt.
__________________
Gruß Mark
Mein Blog zum TP || XING Profil || grafiker.de Profil || How to use GOOGLE
emCalculator 1.0

webcreate IT SOLUTIONS
www.webcreate-nrw.de

>>> der code ist so scheisse, soweit hab ich nicht gelesen <<<
webcreate ist offline   Mit Zitat antworten
Alt 13.09.2005, 16:25   #3
TP-Junior
 
Benutzerbild von imatt
 
Registriert seit: Sep 2005
imatt macht alles soweit korrekt
Vielen Dank für deine Antwort.

Vielleicht habe ich mich ein wenig unklar ausgedrückt oder ich verstehe den Code falsch.
Aber ich möchte jedem Bild einen definierten Link zuweisen (je nach dem in welchem Album das Bild liegt)

Bin jedoch ein Rookie was PHP angeht...
Kann ich diesen Code einfach in den Head-Bereich meiner HTML-Seite schreiben?


PS. Sorry, dass ich das falsche Forum gewählt habe. Immer diese Anfänger
imatt ist offline   Mit Zitat antworten
Alt 13.09.2005, 16:34   #4
TP-Urgestein
 
Benutzerbild von webcreate
 
Registriert seit: Nov 2003
Ort: NRW
webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts
Und was macht der Code?
Jedes Bild hat doch einen festen Link
Bild 1 hat Link 1; Bild 2 hat Link 2, usw.
Via rand() wird ja nur gewählt, welches Arraybild gewählt wird.
Also hast du doch eine feste Zuordnung.

Wo muss das Script hin?
Head? Nee nee, das ist hier kein JavaScript mehr.
Das Script kann direkt an die Stelle, wo die Bildausgabe erfolgen soll.
Das echo wird dann direkt da ausgeführt.
Jedoch wird da z.Z. nur ein Bild ausgegeben, du musst es halt noch so erweitern, dass dann 3 ausgegeben werden.
Aber bedenke zu Prüfen, dass ein Array-Element nicht zweimal aufgegeben wird, sonst hast ein Bild doppelt.
__________________
Gruß Mark
Mein Blog zum TP || XING Profil || grafiker.de Profil || How to use GOOGLE
emCalculator 1.0

webcreate IT SOLUTIONS
www.webcreate-nrw.de

>>> der code ist so scheisse, soweit hab ich nicht gelesen <<<
webcreate ist offline   Mit Zitat antworten
Alt 13.09.2005, 16:50   #5
321
TP-Specialist
 
Benutzerbild von 321
 
Registriert seit: Nov 2004
Ort: Die Insel in Europa die aus Europa erst Europa macht _________________________ Nähe Lenzburg
321 hilft, wo's geht321 hilft, wo's geht321 hilft, wo's geht
Da Du 3 Bilder haben willst, und sicher jedes nur einmal, mache 3 mal rand()
Das erstemal wie beschrieben und belege eine Variable damit ($B1)
beim zweiten und drittenmal in einer Iteration
bis der ermittelte Wert (1 - 40) ein anderer ist, als bereits in $B1 und $B2 festgehalten.
__________________
[321 Name="Joe"]
wie immer, lieber gleich mit notepad, dem Editor meines Vertrauens
[/321]


use my HTML-Tester

Motto'06: Mut zur deutschen Sprache!
321 ist offline   Mit Zitat antworten
Alt 13.09.2005, 16:54   #6
TP-Junior
 
Benutzerbild von imatt
 
Registriert seit: Sep 2005
imatt macht alles soweit korrekt
Question

Tut mir leid, ich steh' leider immer noch ein wenig auf der Leitung.

Wenn ich die Bilder in einem Ordner (z.B. images) habe. Wie müsste ich den Code dann ergänzen?

Den "echo" Befehl kann ich dann einfach auf die 3 Zellen, in denen die Bilder angezeigt werden sollen, aufteilen oder?

Vielen Dank für deine Geduld!
imatt ist offline   Mit Zitat antworten
Alt 13.09.2005, 16:56   #7
TP-Urgestein
 
Benutzerbild von webcreate
 
Registriert seit: Nov 2003
Ort: NRW
webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts
So hier mal eine Lösung, die dann auch die Sicherheit bietet, das kein Bild doppelt vorkommt. ISt der Grundgedanke von 321, halt nur elegant gelöst
PHP-Code:
<?
$bilder
['bild']= array("images/01.jpg""images/02.jpg""images/03.jpg""images/04.jpg""images/05.jpg");
$bilder['url'] = array("http://www.link1.de""http://www.link2.de""http://www.link3.de""http://www.link4.de""http://www.link5.de");
$zuffis = array();
function 
bildausgabe($i$anzahl){
    global 
$zuffis;
    
$zuffi rand(0count($anzahl)-1);
    if (!
in_array ($zuffi$zuffis)){
        
$zuffis[] = $zuffi;
        if(
$i 2bildausgabe($i+1$anzahl);
    }
    else 
bildausgabe($i$anzahl);
}
bildausgabe(0$bilder['bild']);
foreach(
$zuffis as $zuffi) echo "<a href=\"".$bilder[url][$zuffi]."\" target=\"_blank\"><img src=\"".$bilder['bild'][$zuffi]."\" border\"0\"></a>\n";
?>
__________________
Gruß Mark
Mein Blog zum TP || XING Profil || grafiker.de Profil || How to use GOOGLE
emCalculator 1.0

webcreate IT SOLUTIONS
www.webcreate-nrw.de

>>> der code ist so scheisse, soweit hab ich nicht gelesen <<<

Geändert von webcreate (13.09.2005 um 17:02 Uhr).
webcreate ist offline   Mit Zitat antworten
Alt 13.09.2005, 17:05   #8
321
TP-Specialist
 
Benutzerbild von 321
 
Registriert seit: Nov 2004
Ort: Die Insel in Europa die aus Europa erst Europa macht _________________________ Nähe Lenzburg
321 hilft, wo's geht321 hilft, wo's geht321 hilft, wo's geht
Hab auch keinen fertigen Code zur Hand, aber wenn ein Tipp reicht ...

Du wirst das Directory auslesen müssen und die Dateinamen der Bilder in ein Array schubsen.
Desweitern wirst Du eine Datei/DB-Tabelle benötigen, die zB. Bilddateinamen und die entsprechenden Links enthält.

Danach folgt oben beschriebenes.

Und richtig, echo von $B1, $B2 und $B3
sowie von $L1, $L2 und $L3 (für die Links)
schreibst Du in Ergänzung des <a ..> und des <img .../>

Die Seite muss deineseite.php statt deineseite.html heissen.
__________________
[321 Name="Joe"]
wie immer, lieber gleich mit notepad, dem Editor meines Vertrauens
[/321]


use my HTML-Tester

Motto'06: Mut zur deutschen Sprache!
321 ist offline   Mit Zitat antworten
Alt 13.09.2005, 17:47   #9
TP-Junior
 
Benutzerbild von imatt
 
Registriert seit: Sep 2005
imatt macht alles soweit korrekt
Smile

Es funktioniert!!!!

Ihr seid echt der Wahnsinn, vielen Dank!

Wie könnte ich jetzt noch einen kleinen Abstand zwischen den Bildern erzeugen?


PS. Die Tabelle wird noch überarbeitet.
imatt ist offline   Mit Zitat antworten
Alt 13.09.2005, 17:52   #10
TP-Urgestein
 
Benutzerbild von webcreate
 
Registriert seit: Nov 2003
Ort: NRW
webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts
Du solltest dich mal mit CSS beschäftigen, da findet sich auch ne Lösung
http://www.css4you.de
__________________
Gruß Mark
Mein Blog zum TP || XING Profil || grafiker.de Profil || How to use GOOGLE
emCalculator 1.0

webcreate IT SOLUTIONS
www.webcreate-nrw.de

>>> der code ist so scheisse, soweit hab ich nicht gelesen <<<
webcreate ist offline   Mit Zitat antworten
Alt 13.09.2005, 17:54   #11
321
TP-Specialist
 
Benutzerbild von 321
 
Registriert seit: Nov 2004
Ort: Die Insel in Europa die aus Europa erst Europa macht _________________________ Nähe Lenzburg
321 hilft, wo's geht321 hilft, wo's geht321 hilft, wo's geht
Das wäre dann nur reines HTML und/oder CSS!

HTML: <img ... hspace=8 oder vspace=12
CSS: margin: 0 1 2 3 für top right bottom left
__________________
[321 Name="Joe"]
wie immer, lieber gleich mit notepad, dem Editor meines Vertrauens
[/321]


use my HTML-Tester

Motto'06: Mut zur deutschen Sprache!
321 ist offline   Mit Zitat antworten
Alt 13.09.2005, 18:21   #12
TP-Junior
 
Benutzerbild von imatt
 
Registriert seit: Sep 2005
imatt macht alles soweit korrekt
Vielen, vielen Dank. Ihr seid wirklich klasse!
imatt ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Traum-Talk > Webdesign & Co.
Bilder mit Link zufällig anzeigen Bilder mit Link zufällig anzeigen
« Wieso funktioniert "zurück" nicht? | Betatesting »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
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


Alle Zeitangaben in WEZ +2. Es ist jetzt 22:38 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67