Ik heb wel eens gehoord van MooFX en jQuery e.d., maar volgens mij bieden die niet precies wat ik zoek. Op m'n website zou ik graag een random plaatje willen hebben: elke keer dat je de pagina bezoekt zou hij een ander plaatjemoeten tonen.
Kan iemand me op weg helpen met een link, stuk code of misschien zoiets alsjQuery of MooFX toevallig?
Alvast bedankt
<?php<p>$directory = "images/random/";<p>if ( $handle = opendir($directory) )<br>{<br> $files = array();<br> while ( false !== ($file = readdir($handle)) )<br> {<br> $filename = $directory.$file;<br> if ( is_file($filename) )<br> $files[] = $filename;<br> }<br> closedir($handle); <p> if ( count($files) > 0 )<br> {<br> srand(time());<br> $i = rand(0, count($files)-1);<br> $random_file = $files[$i];<br> }<br>}<p>print '<img src=\".$random_file.\">';<p>?>
Bij een gewone HTML-pagina (xHTML transitional), zou ik de PHP-code dan ineen extern bestandje moeten zetten, of is het beter om het gewoon bovenaanin de BODY te zetten?
En kun je me vertellen hoe ik dit moet toepassen in de HTML?Stel dat ik een map met plaatjes heb (allemaal 50x100px bijvoorbeeld) ophttp://www.motustudio.org/plaatjes/ ...dan moet ik de $directory = "";veranderen naar die URL toch? En hoe zou ik deze code moeten linken naarde plek waar die plaatjes in de HTML zichtbaar moeten worden?
Iig alvast bedankt voor de code
<?php<p>include("randomimage.php");<p>?>
als je het bestand met bovenstaande code erin zo hebt genoemd.
Het is het beste om de plaatjes die je op die plek wilt laten zien in een aparte map op je server onderbrengt. De URL in het script pas je daarop aan. De print opdracht onderaan het script kan je eventueel aanpassen door breedte en hoogte van het plaatje in te vullen, randdikte, randkleur, etc. Dat kan met gewone HTML maar met een \ voor elke ". In diezelfde string kan je ook ene class aangeven voor opmaken van het plaatje via CSS i.p.v. alles in de string met een style.(Bewerkt door Leendert om 11:11, 29-06-2007)
(Bewerkt door Leendert om 11:11, 29-06-2007)
- Ik maak een PHP-bestand aan met de code die je hebt gegeven (bijv. randomimage.php)- In de HTML-pagina vul ik op de plek waar die plaatjes moeten komen deze code in:
<?php <br>include("randomimage.php"); <br>?>
Ervan uitgaande dat ik nu begrijp hoe je die plaatjes laat zien, snap ik niet hoe ik deze plaatjes met CSS kan stijlen (border, float, margin's e.d. bijvoorbeeld). Volgens mij isdat wel mogelijk, maar ik zie niet waar ik de div's e.d. moet zetten... of moet ik die php-code die in de HTML staat dan gewoon in een DIV zetten?
print '<img src=\".$random_file.\">';
wordt dan:
print '<div id=\"randomploagie_id\">'; print '<img src=\".$random_file.\">'; print '</div>';
Zoals al gezegd: zorg er ook voor dat het bestand waarin je het script oproept een .php extensie heeft en PHP werkt.(Bewerkt door Leendert om 11:17, 29-06-2007)
(Bewerkt door Leendert om 11:17, 29-06-2007)
Ehmm, ik ben even de weg kwijt... dit is toch wat ik moet doen?- Maak een bestand "randomimage.php" aan met de code die je aangaf- in het bestand index.html geef ik op de plek waar de plaatjes moeten komenhet "include" stukje aan.
Dit zou dan de site-structuur worden:- index.html- portfolio.html- linkjes.html- randomimage.php- randomimages (map met alle images voor het php-script)
M'n domein ondersteund PHP e.d., dus da's gelukkig geen probleem Maar het stylen, hoe moet ik dat doen met de printopdracht in die PHP? Kan ik 'mniet stylen door het volgende te doen?
<div id="randomstyle"><?php <br>include("randomimage.php"); <br>?> </div>
Mvg,Joram
Je kan de div tags ook gewoon daar zetten zoals jij aangeeft, geen verschil.
De bedoeling is eigenlijk om gewoon een hele xHTML site te maken, en dan op1 plek op de indexpagina (index.html) die PHP te activeren en de plaatjes randomte laten zien na elke refresh.
Ehhh, je gaat me toch niet vertellen dat dat niet mogelijk is he? Dan heb ik voorniets een half uurtje flink zitten dromen, hahaha :-D
... da's dan ook niet van invloed op de doctype e.d. die je bovenaan je html-pagina zet?
Imand die dat weet? Ferris? Ferris Bueller? Anyone?
Waarom direct grijpen naar een server side technologie terwijl het client side veel sneller en simpler kan, met gewone HTML. Het javascript kun je ook op elke pagina waar je dat effect wil hebben laten 'includen' net als PHP. Bovendien: als je website hebt waar geen PHP draait of je wilt het niet gebruiken omdat je misschien een simpele website hebt of er geen verstand van hebt.
Den88;Klopt, ik heb het wel eens gezien ja. Maar als iemand Javascript heeft uitstaan (50% van de Windowsgebruikers met Service Pack 2 dus), dan werkt het niet meer. Vandaar dat PHP m'n voorlopige voorkeur heeft, hehe. Maar dan nog, ook met JavaScript weet ik niet hoe ik het moet doen
Ik kom een heel eind met HTML en CSS, en m'n website host ondersteund alles Maar ik heb net zoveel verstand van PHP als van Javascript... het enige wat ik welweet is dat Javascript niet bij iedereen aan staat, terwijl PHP altijd werkt.
Doet me denken aan een sketch: How to irritate people.
Terug on-topic:Wat je wilt bereiken is toch iets van een 'special effect'. Het is dan wel simpel plaatjes wisselen (met javascript kan je er zelfs een fade effect tussendoor doen, en nee dat is dan geen smerige applet!). En daar kun je rustig Javascript voor gebruiken.
Als je interesse hebt heb ik een heel mooie 'unobtrusive' methode die heel makkelijk te implenteren is. Daar heb je zelf geen Javascript kennis voor nodig... alleen maar HTML kennis (hoe maak ik een LI'tje met plaatjes) , en dit die ene met fade effect. Stuur anders ff een pb'tje en ik zal vanavond ofzo wel even kijken (thuis, want nu zit ik op me werk).
Maar ik hoef geen effecten verder hoor Het plaatje moet/mag alleen gewisseldworden als mensen de site opnieuw bezoeken of de pagina refreshen. En hier endaar kleine dingen aanpassen in PHP of Javascript krijg ik nog wel voor elkaar meteen paar aanwijzingen... zolang het maar niet te lastig wordt, hehe.
Als je dat zou weten te veranderen neem met ik alle plezier die code van je over, hehe.
Bedankt voor de moeite alvast
Hier is het voorbeeld: http://www.limv.nl/voorbeeld2/
Één vraagje nog: Ik snap waar ik de bestandsnamen e.d. moet neerzetten,en dat ik het stukje script language in de body moet plaatsen op de plekwaar ik de plaatjes wil hebben.Maar kan ik die plaatjes ook nog stylen met CSS? Bijvoorbeeld gewoon door 'tstukje in een Div of Class te zetten?