Zur Navigation

Anzeige Zufallsbilder mit Link aus ?.php Datei ?

1 Marko

Hallo

Ich habe eine Anzeige von Zufallsbildern mit Verlinkung.


<script type="text/javascript" language="JavaScript">
<!-- Begin

var wie_viele = 2;

var now = new Date()
var sec = now.getSeconds()
var zufall02 = sec % wie_viele;
zufall02 += 1;


if (zufall02==1) {
link_url="link.html";
banner_url="bildlink.jpg";
width="200";
height="200";
TitelText = " Bild-1 ";
}

if (zufall02==2) {
link_url="link.html";
banner_url="bildlink.jpg";
width="200";
height="200";
TitelText = "Bild-2 ";
}

## usw.

function zufallsbanner02() {
document.write('<div align="center">');
document.write('<a href="' + link_url + '" target="_blank">');
document.write('<img title="' + TitelText + '" src="' + banner_url + '" width="')
document.write(width + '" height="' + height + '" ');
document.write('border="1"></a><br>');
document.write('</div>');
return
}


// End -->
</script>

Nachteil ich muss ständig 2 Startseiten aktualisieren, weil das der Script im Head ist.

Mein Ziel ist es, dass die Zufallsbilder aus einem Verzeichnis geladen werden, wie jetzt auch "zufallsbilder" wo ich aber nur einmal in einer "zufallsbilder.php" Datei das Zufallsbild und den Link einmal anlegen muss.

Hoffe hab mich verständlich ausgedrückt. Falls das überhaupt funktioniert?

Gruß
Marko

01.02.2017 10:41

2 Jörg

Mit PHP könntest du ein Array der Bilder definieren und mithilfe von rand() ein Zufallsbild auswählen, also in etwa so:

<?php

$bilder = array(
    array(
        'link_url' => 'link.html',
        'banner_url' => 'bildlink.jpg',
        'width' => '200',
        'height' => '200',
        'TitelText' => ' Bild-1 '
    ),
    array(
        'link_url' => 'link-2.html',
        /* etc. */
    )
);

$i = rand(0, count($bilder));

?>
<div align="center">
<a href="<?php echo $bilder[$i]['link_url'] ?>" target="_blank">
<img title="<?php echo $bilder[$i]['link_url'] ?>" ...

... das ganze kannst du dann in mehrere Dateien includieren:

<?php include ('zufallsbilder.php'); ?>

... vorausgesetzt, die Dateien haben die Endung .php

01.02.2017 14:55 | geändert: 01.02.2017 14:57

3 Marko

Hallo
Jörg
Danke für Deine Mühe

Habe eine Datei "zufallsbilder.php" und 2 Bilder eingetragen.

<?php

$bilder = array(
    array(
        'link_url' => 'http://ww.......html',
        'banner_url' => 'http://ww........jpg',
        'width' => '200',
        'height' => '200',
        'TitelText' => ' Bild-1 '
    ),
    array(
        'link_url' => 'http://ww.........html',
        'banner_url' => 'http://ww........jpg',
        'width' => '200',
        'height' => '200',
        'TitelText' => ' Bild-2 '
    )
);

$i = rand(0, count($bilder));

?>

Hatte versuchsweise eine leer.php auf meinen Server geladen.
Sie lädt aber nur einen kleinen Balken und den Link immer zum Bild-1


<?php include ('zufallsbilder.php'); ?>

<!DOCTYPE html>
<html>
<head>

......

<div align="center">
<a href="<?php echo $bilder[$i]['link_url'] ?>" target="_blank">
<img ="<?php echo $bilder[$i]['banner_url'] ?>">
</div>

</body>
</html>


Irgendwie hab ich noch einen Denkfehler?

Gruß
Marko

05.02.2017 19:23

4 Jörg

Sie lädt aber nur einen kleinen Balken

das <img> Tag ist ja auch noch unvollständig, was ich durch die beiden "..." angedeutet habe; etwas vollständiger:

<a href="<?php echo $bilder[$i]['link_url'] ?>" target="_blank">
<img title="<?php echo $bilder[$i]['TitelText'] ?>"
     src="<?php echo $bilder[$i]['banner_url'] ?>"
     width="..."
     height="...">
</a>

Die beiden übrigen "..." musst du noch nach dem gleichen Muster ergänzen :)

und den Link immer zum Bild-1

Lass dir mal testweise die Zufallszahl ausgeben:

$i = rand(0, count($bilder));
echo 'Zufallszahl: ' . $i . '<br/>';

... und dann aktualisiere die Seite öfters mal...

06.02.2017 09:11 | geändert: 06.02.2017 09:22

5 Marko

Hallo
Jörg
Danke für Deine Mühe.

Läuft,

Wie mach ich es in einer .html Datei, wo ich auch das obige Script nutze.

Kann ich da auch auf die zufallsbilder.php gehen oder muss eine andere Datei angelegt werden.

Ich kann 2 Dateien aktualisieren, das ist kein Problem aber ich will eben die beiden Startseiten im head nicht immer anpassen.
Die erste läuft einwandfrei.

Gruß
Marko

06.02.2017 16:19

6 Jörg

Du kannst zufallsbilder.php in alle Dateien inkludieren, in denen PHP ausgeführt wird. Normalerweise müssen die Dateien dazu die Endung .php haben. Über die .htaccess Datei kann man den Webserver aber auch anweisen, PHP in Dateien auszuführen, deren Endung .html ist - das ist z.B. hier beschrieben:

https://www.computerhilfen.de/info/webmaster-html-seiten-ueber-php-ausgeben-lassen.html

Ggf. musst du deinen Webhoster fragen, welches der beschriebenen Verfahren auf deinem Webspace eingesetzt werden muss

06.02.2017 17:17

7 Marko

Hallo
Jörg

Danke für die Mühe, das werde ich mal testen.

Beste Grüße
Marko

19.02.2017 18:03

Beitrag schreiben (als Gast)





[BBCode-Hilfe]