Random Header Images!

Μια περιοχή όπου τα μέλη μας μπορούν να βάζουν τα PHP scripts που έχουν φτιάξει και θέλουν να τα μοιραστούν με τα υπόλοιπα μέλη.

Συντονιστές: Super-Moderators, WebDev Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
Basilakis
PHP Moderator
Δημοσιεύσεις: 8574
Εγγραφή: 17 Νοέμ 2003 13:03
Τοποθεσία: Womans' Brain
Επικοινωνία:

Random Header Images!

Δημοσίευση από Basilakis » 22 Νοέμ 2008 12:49

Πολλές φορές έχω σκεφτεί να παίξω με ένα Random Image για header σε κάποια Design μου. Τα random Images δίνουνε την δυνατότητα να δημιουργείτε ποίο ευχάριστα designs.
Ας δούμε τον τρόπο που μπορεί να γίνει αυτό…

Ας υποθέσουμε πως έχουμε λοιπόν τα images μας.

Τα ονομάζουμε
header_1.png
header_2.png
header_3.png
header_4.png

Αυτό που θα κάνουμε τώρα είναι να δημιουργήσουμε μία Class η οποία θα τραβάει τυχαία μέσα από έναν φάκελο τις εικόνες μας. Μετά θα την χρησιμοποιήσουμε για να δημιουργούμε τις εικόνες.

Οκ από την άλλη μπορούμε να κάνουμε και κάτι ποίο απλό.

Κώδικας: Επιλογή όλων

<img src="http&#58;//path_to_images/header_<?php echo&#40;rand&#40;1,4&#41;&#41;; ?>.png"
width="100" height="200" alt="Your Image!" />
Εκεί που έχουμε το

<?php echo(rand(1,4)); ?>

Δημιουργούμε έναν τυχαίο αριθμό από το 1 έως το 4 που είναι και στις εικόνες μας αυτοί οι αιρθμοί.

Εύκολο και απλό!
Τελευταία επεξεργασία από το μέλος Basilakis την 22 Φεβ 2009 14:54, έχει επεξεργασθεί 1 φορά συνολικά.

Άβαταρ μέλους
p_pan
Δημοσιεύσεις: 1248
Εγγραφή: 11 Φεβ 2007 20:45
Τοποθεσία: Άστεγος!

Random Header Images!

Δημοσίευση από p_pan » 27 Νοέμ 2008 02:19

prepei na metafer8ei sta script...!!!!!!! kalo kai paneukolo..!!!!
Αγράματος...

Άβαταρ μέλους
p_pan
Δημοσιεύσεις: 1248
Εγγραφή: 11 Φεβ 2007 20:45
Τοποθεσία: Άστεγος!

Random Header Images!

Δημοσίευση από p_pan » 13 Δεκ 2008 02:40

Λοιπόν λόγο του ότι έπρεπε να χρησιμοποιήσω το παράδειγμα του Basilakis άλλα έπρεπε κάθε εικόνα να έχει και διαφορετικό λινκ έφτιαξα το παρακάτω που πιστεύω ότι σε πολλούς θα φανεί χρήσιμο.


Πρώτο είναι το script της random επιλογής

Κώδικας: Επιλογή όλων

<?php
$num = rand&#40;1,9&#41;;
if&#40;$num == 1&#41;&#123;
$src = "pics/logo1.jpg";
alt = "Logo1";
$href = "main.php";
&#125;elseif&#40;$num == 2&#41;&#123;
$src = "pics/logo2.jpg";
alt = "Logo2";
$href = "index.php";
&#125;elseif&#40;$num == 3&#41;&#123;
$src = "pics/logo3.jpg";
alt = "Logo3";
$href = "products.php";
&#125;elseif&#40;$num == 4&#41;&#123;
$src = "pics/logo4.jpg";
alt = "Logo4";
$href = "contact.php";&#125;
?>

Μετά τοποθετούμε τον παρακάτω κώδικα για να εμφανίζετε στο σημείο τις σελίδας μας που θέλουμε η εικόνα.

Κώδικας: Επιλογή όλων

<?php
echo "<a href=\"$href\"><img src=\"$src\" alt=\"$alt\" width="73" height="113" /></a>"
?>
Αγράματος...

Άβαταρ μέλους
ThyClub
Honorary Member
Δημοσιεύσεις: 5312
Εγγραφή: 17 Νοέμ 2003 00:21
Τοποθεσία: Hell's Kitchen
Επικοινωνία:

Random Header Images!

Δημοσίευση από ThyClub » 13 Δεκ 2008 10:14

Κάτι ακόμα πιο εύκολο είναι:

Βάζουμε τις εικόνες μας σε ενα array και επιλέγουμε μια στην τύχη:

Κώδικας: Επιλογή όλων

$images = array&#40;"logo1.png","logo8.png","another.png","allhmia.gif"&#41;;
$random = array_rand&#40;$images, 1&#41;;
και μετά στην σελίδα μας:

Κώδικας: Επιλογή όλων

<img src="<?php echo $images&#91;$random&#93;; ?>" />


Άβαταρ μέλους
SoUpEr_PiLaS
Δημοσιεύσεις: 428
Εγγραφή: 07 Δεκ 2007 22:37
Τοποθεσία: Αθήνα, Νίκαια
Επικοινωνία:

Random Header Images!

Δημοσίευση από SoUpEr_PiLaS » 22 Φεβ 2009 14:34

Basilakis έγραψε:
Τα ονομάζουμε
header_1.png
header_2.png
header_3.png
header_4.png

Κώδικας: Επιλογή όλων

<img src="http&#58;//path_to_images/header_<?php echo&#40;rand&#40;1,4&#41;&#41;; ?>.jpg"
width="100" height="200" alt="Your Image!" />
Δεν θα έπρεπε να είναι:

Κώδικας: Επιλογή όλων

<img src="http&#58;//path_to_images/header_<?php echo&#40;rand&#40;1,4&#41;&#41;; ?>.png"
width="100" height="200" alt="Your Image!" />
μιας και οι αρχικές εικόνες μας υποτίθεται ότι είναι png;
Ή είμαι βλάκας ή όντως πρόσεξα κάτι που δεν πρόσεξε άλλος...

Φιλικά
Εικόνα

Άβαταρ μέλους
Basilakis
PHP Moderator
Δημοσιεύσεις: 8574
Εγγραφή: 17 Νοέμ 2003 13:03
Τοποθεσία: Womans' Brain
Επικοινωνία:

Random Header Images!

Δημοσίευση από Basilakis » 22 Φεβ 2009 14:53

hehe, σωστός μου ξέφυγε! :)

Το διόρθωσα :)

Fallen
Δημοσιεύσεις: 7
Εγγραφή: 02 Ιαν 2008 15:09

Random Header Images!

Δημοσίευση από Fallen » 15 Απρ 2009 18:26

Μπορούμε να βάλουμε refresh μετά από κάποιο time interval?

heisenberg
Δημοσιεύσεις: 88
Εγγραφή: 28 Αύγ 2009 15:15

Random Header Images!

Δημοσίευση από heisenberg » 27 Σεπ 2009 04:10

πως θα γίνει να αλλάζει μόνο του κάθε Χ δευτερόλεπτα;
ευχαριστώ

Άβαταρ μέλους
Banavas
Script Master
Δημοσιεύσεις: 1367
Εγγραφή: 21 Νοέμ 2004 20:25
Επικοινωνία:

Random Header Images!

Δημοσίευση από Banavas » 28 Σεπ 2009 09:55

p_pan
Αυτό με τα if δεν είναι και πολύ ευέλικτο αν θέλεις να προσθέσεις φωτογραφίες γιατί κάθε φορά θα πρέπει να πειράζεις τον κώδικα.
Μπορείς να συνδυάσεις αυτό που έδωσε ο thyclub με την explode κάπως έτσι:

Κώδικας: Επιλογή όλων

$images = array&#40;"logo1.png|my_site.gr","logo8.png|otheronesite.gr","another.png| yetanothersite.gr","allhmia.gif|klp.gr"&#41;; 
$random = array_rand&#40;$images, 1&#41;; 

$pic_plus_url = explode&#40;"|",$random&#41;;
<a href="<?php echo $pic_plus_url&#91;1&#93;; ?>" "> <img src="<?php echo $pic_plus_url&#91;0&#93;; ?>" />  </a>

Fallen και heisenberg
Αυτή μέθοδος είναι κατάλληλη για να αλλάζει το header ή κάποια φωτογραφία μετά από κάθε φόρτωση της σελίδας.
Επειδή είναι εκνευριστικό για τον επισκέπτη να γίνεται refresh η σελίδα και επιλέον φορτώνει και τον server άσκοπα η λύση για αυτό που θέλετε είναι κάποιο javascript slideshow. (με μια αναζήτηση θα βρείτε πολλά δωρεάν)
Happy coding....
Μάρκος
http://lasernet.gr

flawl3ss
Δημοσιεύσεις: 4
Εγγραφή: 14 Αύγ 2010 20:26

Random Header Images!

Δημοσίευση από flawl3ss » 27 Δεκ 2010 17:20

Βάλτε τον παρακάτω κώδικα πριν από το rand() για καλύτερο randomization.

Κώδικας: Επιλογή όλων

srand&#40;&#40;double&#41; microtime&#40;&#41;*1000000&#41;;
-Flawl3ss

Απάντηση

Επιστροφή στο “PHP τα δικά μας scripts”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες