Rondom Picture
| Pagina 2
62 antwoorden
Gesponsorde links
smoos - 15/03/2006 13:48 (laatste wijziging 15/03/2006 13:49)
PHP gevorderde
Deze werkt ook als je minder dan 3 plaatjes hebt. en je plaatjes staan naast elkaar
<?php
// al je plaatjes :-)
$image[0] = "1.jpg";
$image[1] = "2.jpg";
$image[2] = "3.jpg";
$image[3] = "4.jpg";
$image[4] = "5.jpg";
$image[5] = "6.jpg";
$image[6] = "7.jpg";
$image[7] = "8.jpg";
$image[8] = "9.jpg";
$image[9] = "10.jpg";
$image[10] = "11.jpg";
$image[11] = "12.jpg";
$image[12] = "13.jpg";
$image[13] = "14.jpg";
$image[14] = "15.jpg";
$image[15] = "16.jpg";
$image[16] = "17.jpg";
$image[17] = "18.jpg";
$image[18] = "19.jpg";
$image[19] = "20.jpg";
// tellen hoeveel het er zijn - 1 (voor geval dat het er meer zijn dan 3)
$c = count($image) - 1;
if ($c <= 2)
{
// het zijn er 3 of minder dus alles weergeven
foreach($image as $a)
echo "<img align=\"left\" src=\"". $a . "\" />";
}
// Anders zijn het er meer dan 3
else
{
// Aantal die je wilt zien (3 dus)
$s[0] = "";
$s[1] = "";
$s[2] = "";
// Zolang ze alle 3 niet hetzelfde zijn
while ($s[0] == $s[1] || $s[0] == $s[2] || $s[1] == $s[2])
{
// random plaatjes
$s[0] = $image[(rand(0, $c))];
$s[1] = $image[(rand(0, $c))];
$s[2] = $image[(rand(0, $c))];
}
// laten zien.
foreach($s as $a)
echo "<img align=\"left\" src=\"". $a . "\" />";
}
?>
<?php
// al je plaatjes :-)
$image [ 0 ] = "1.jpg" ;
$image [ 1 ] = "2.jpg" ;
$image [ 2 ] = "3.jpg" ;
$image [ 3 ] = "4.jpg" ;
$image [ 4 ] = "5.jpg" ;
$image [ 5 ] = "6.jpg" ;
$image [ 6 ] = "7.jpg" ;
$image [ 7 ] = "8.jpg" ;
$image [ 8 ] = "9.jpg" ;
$image [ 9 ] = "10.jpg" ;
$image [ 10 ] = "11.jpg" ;
$image [ 11 ] = "12.jpg" ;
$image [ 12 ] = "13.jpg" ;
$image [ 13 ] = "14.jpg" ;
$image [ 14 ] = "15.jpg" ;
$image [ 15 ] = "16.jpg" ;
$image [ 16 ] = "17.jpg" ;
$image [ 17 ] = "18.jpg" ;
$image [ 18 ] = "19.jpg" ;
$image [ 19 ] = "20.jpg" ;
// tellen hoeveel het er zijn - 1 (voor geval dat het er meer zijn dan 3)
if ( $c <= 2 )
{
// het zijn er 3 of minder dus alles weergeven
foreach ( $image as $a )
echo "<img align=\" left\" src=\" " . $a . "\" />" ; }
// Anders zijn het er meer dan 3
else
{
// Aantal die je wilt zien (3 dus)
$s [ 0 ] = "" ;
$s [ 1 ] = "" ;
$s [ 2 ] = "" ;
// Zolang ze alle 3 niet hetzelfde zijn
while ( $s [ 0 ] == $s [ 1 ] || $s [ 0 ] == $s [ 2 ] || $s [ 1 ] == $s [ 2 ] )
{
// random plaatjes
$s [ 0 ] = $image [ ( rand ( 0 , $c ) ) ] ; $s [ 1 ] = $image [ ( rand ( 0 , $c ) ) ] ; $s [ 2 ] = $image [ ( rand ( 0 , $c ) ) ] ; }
// laten zien.
foreach ( $s as $a )
echo "<img align=\" left\" src=\" " . $a . "\" />" ; }
?>
Edit:
die van FangorN is inderdaad beter :-)
Thomas - 15/03/2006 13:56
Moderator
daarvoor moet je een tellertje mee laten lopen, die om de 2 tellen een line-break afdrukt.
DarziaC - 15/03/2006 14:00 (laatste wijziging 15/03/2006 14:16)
Nieuw lid
je bedoelt een timestamp ofzo..
heb het eigenlijk niet nodig. die van jou is perfect.
het enige wat het mist is dat ik ze naast elkaar wil hebben.
Picture1 - Picture2
Picture3 - Picture4
Picture5 - Picture6
zo dus. valt zoiets ook daarmee te maken dan?
Thomas - 15/03/2006 14:48
Moderator
// afdrukken
$teller = 0;
foreach($gehad as $v)
{
echo "<img src=\"".$image[$v]."\" />";
if(($teller++ % 2) == 0) echo "<br />";
}
// afdrukken
$teller = 0 ;
foreach ( $gehad as $v )
{
echo "<img src=\" " . $image [ $v ] . "\" />" ; if ( ( $teller ++ % 2 ) == 0 ) echo "<br />" ; }
Simon - 15/03/2006 14:48 (laatste wijziging 15/03/2006 14:49)
PHP expert
<?php
$image = array();
$image[] = "1.jpg";
$image[] = "2.jpg";
$image[] = "3.jpg";
$image[] = "4.jpg";
$image[] = "5.jpg";
$image[] = "6.jpg";
$image[] = "7.jpg";
$image[] = "8.jpg";
$image[] = "9.jpg";
$image[] = "10.jpg";
$image[] = "11.jpg";
$image[] = "12.jpg";
$image[] = "13.jpg";
$image[] = "14.jpg";
$image[] = "15.jpg";
$image[] = "16.jpg";
$image[] = "17.jpg";
$image[] = "18.jpg";
$image[] = "19.jpg";
$image[] = "20.jpg";
// hier kun je gewoon plaatjes aan toevoegen met $image[] = "whatever.jpg"
$gehad = array(); // de plaatjes die je al random hebt geselecteerd
$aantal = 5; // het aantal random plaatjes
// bouwen
while(sizeof($gehad) < min(sizeof($image), $aantal))
{
$rand = rand(0, sizeof($image)-1);
if(!in_array($rand, $gehad))
{
$gehad[] = $rand;
}
}
// afdrukken
$i = 0;
foreach($gehad as $v)
{
echo "<img src=\"".$image[$v]."\" />";
$i++;
if($i == 2) {
echo "<br />";
$i = 0;
}
}
?>
<?php
$image [ ] = "1.jpg" ;
$image [ ] = "2.jpg" ;
$image [ ] = "3.jpg" ;
$image [ ] = "4.jpg" ;
$image [ ] = "5.jpg" ;
$image [ ] = "6.jpg" ;
$image [ ] = "7.jpg" ;
$image [ ] = "8.jpg" ;
$image [ ] = "9.jpg" ;
$image [ ] = "10.jpg" ;
$image [ ] = "11.jpg" ;
$image [ ] = "12.jpg" ;
$image [ ] = "13.jpg" ;
$image [ ] = "14.jpg" ;
$image [ ] = "15.jpg" ;
$image [ ] = "16.jpg" ;
$image [ ] = "17.jpg" ;
$image [ ] = "18.jpg" ;
$image [ ] = "19.jpg" ;
$image [ ] = "20.jpg" ;
// hier kun je gewoon plaatjes aan toevoegen met $image[] = "whatever.jpg"
$gehad = array ( ) ; // de plaatjes die je al random hebt geselecteerd $aantal = 5 ; // het aantal random plaatjes
// bouwen
{
{
$gehad [ ] = $rand ;
}
}
// afdrukken
$i = 0 ;
foreach ( $gehad as $v )
{
echo "<img src=\" " . $image [ $v ] . "\" />" ; $i ++;
if ( $i == 2 ) {
$i = 0 ;
}
}
?>
die van Fangorn is mss wel korter, je kiest maar
DarziaC - 15/03/2006 14:52 (laatste wijziging 15/03/2006 14:59)
Nieuw lid
Hmmm..
www.kdssport.nl/noob/test.php
zo ziet die van jou eruit FangorN.
zie de fout (A).
Gerard - 15/03/2006 15:09
Ouwe rakker
nou, fix de fout dan....
niet wachten tot anderen het voor je doen
Thomas - 15/03/2006 15:18
Moderator
zo dan ...
// afdrukken
$teller = 0;
foreach($gehad as $v)
{
echo "<img src=\"".$image[$v]."\" />";
$teller++;
if(($teller % 2) == 0) echo "<br />";
}
// afdrukken
$teller = 0 ;
foreach ( $gehad as $v )
{
echo "<img src=\" " . $image [ $v ] . "\" />" ; $teller ++;
if ( ( $teller % 2 ) == 0 ) echo "<br />" ; }
DarziaC - 15/03/2006 15:22
Nieuw lid
Bedankt man!
mja, ik had nog 1 vraag.. maar dat word lastig denk?
kan ik per afbeelding ook een link maken?
Afbeelding 1 -> pagina 1
Afbeelding 16 -> pagina 16
Thomas - 15/03/2006 15:31
Moderator
Ja, waarom niet?
DarziaC - 15/03/2006 15:34 (laatste wijziging 15/03/2006 16:34)
Nieuw lid
is dat veel gedoe qua scripting?
want dat zou ik heeeeeeeeeeeel graag willen
je bent nu al top bezig.. maar dan helemaal!
$image[] = "<a href = 'link.html'><img src='1.jpg' alt='Afbeelding 1'></a>";
$image [ ] = "<a href = 'link.html'><img src='1.jpg' alt='Afbeelding 1'></a>" ;
dit werkt alleen niet :S
Simon - 15/03/2006 16:36 (laatste wijziging 15/03/2006 16:37)
PHP expert
<?php
$image = array();
$image[] = "1.jpg";
$image[] = "2.jpg";
$image[] = "3.jpg";
$image[] = "4.jpg";
$image[] = "5.jpg";
$image[] = "6.jpg";
$image[] = "7.jpg";
$image[] = "8.jpg";
$image[] = "9.jpg";
$image[] = "10.jpg";
$image[] = "11.jpg";
$image[] = "12.jpg";
$image[] = "13.jpg";
$image[] = "14.jpg";
$image[] = "15.jpg";
$image[] = "16.jpg";
$image[] = "17.jpg";
$image[] = "18.jpg";
$image[] = "19.jpg";
$image[] = "20.jpg";
// hier kun je gewoon plaatjes aan toevoegen met $image[] = "whatever.jpg"
$gehad = array(); // de plaatjes die je al random hebt geselecteerd
$aantal = 5; // het aantal random plaatjes
// bouwen
while(sizeof($gehad) < min(sizeof($image), $aantal))
{
$rand = rand(0, sizeof($image)-1);
if(!in_array($rand, $gehad))
{
$gehad[] = $rand;
}
}
// afdrukken
$i = 0;
foreach($gehad as $v)
{
echo "<a href=\"link.php?id=".$v."\"><img src=\"".$image[$v]."\" /></a>";
$i++;
if($i == 2) {
echo "<br />";
$i = 0;
}
}
?>
<?php
$image [ ] = "1.jpg" ;
$image [ ] = "2.jpg" ;
$image [ ] = "3.jpg" ;
$image [ ] = "4.jpg" ;
$image [ ] = "5.jpg" ;
$image [ ] = "6.jpg" ;
$image [ ] = "7.jpg" ;
$image [ ] = "8.jpg" ;
$image [ ] = "9.jpg" ;
$image [ ] = "10.jpg" ;
$image [ ] = "11.jpg" ;
$image [ ] = "12.jpg" ;
$image [ ] = "13.jpg" ;
$image [ ] = "14.jpg" ;
$image [ ] = "15.jpg" ;
$image [ ] = "16.jpg" ;
$image [ ] = "17.jpg" ;
$image [ ] = "18.jpg" ;
$image [ ] = "19.jpg" ;
$image [ ] = "20.jpg" ;
// hier kun je gewoon plaatjes aan toevoegen met $image[] = "whatever.jpg"
$gehad = array ( ) ; // de plaatjes die je al random hebt geselecteerd $aantal = 5 ; // het aantal random plaatjes
// bouwen
{
{
$gehad [ ] = $rand ;
}
}
// afdrukken
$i = 0 ;
foreach ( $gehad as $v )
{
echo "<a href=\" link.php?id=" . $v . "\" ><img src=\" " . $image [ $v ] . "\" /></a>" ; $i ++;
if ( $i == 2 ) {
$i = 0 ;
}
}
?>
Simon - 15/03/2006 16:58 (laatste wijziging 15/03/2006 17:00)
PHP expert
raar, $v zou toch hetzelfde moeten zijn
euhm mss ideetje:
$id = $v;
en dan verander je de $v door $id
zo dus:
<?php
// afdrukken
$i = 0;
foreach($gehad as $v)
{
$id = $v;
echo "<a href=\"link.php?id=".$id."\"><img src=\"".$image[$id]."\" /></a>";
$i++;
if($i == 2) {
echo "<br />";
$i = 0;
}
}
?>
<?php
// afdrukken
$i = 0 ;
foreach ( $gehad as $v )
{
$id = $v ;
echo "<a href=\" link.php?id=" . $id . "\" ><img src=\" " . $image [ $id ] . "\" /></a>" ; $i ++;
if ( $i == 2 ) {
$i = 0 ;
}
}
?>
Simon - 15/03/2006 17:13
PHP expert
heb je een online werkend voorbeeld?
DarziaC - 15/03/2006 17:15
Nieuw lid
Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ',' or ';' in /data/members/paid/k/d/kdssport.nl/htdocs/www/noob/test3.php on line 44
Simon - 15/03/2006 17:16
PHP expert
($id+1)
mss tussen haakjes
Simon - 15/03/2006 17:19 (laatste wijziging 15/03/2006 17:21)
PHP expert
<?php
foreach($gehad as $v)
{
$id = $v + 1;
echo "<a href=\"link.php?id=".$id."\"><img src=\"".$image[$v]."\" /></a>";
$i++;
if($i == 2) {
echo "<br />";
$i = 0;
}
}
?>
<?php
foreach ( $gehad as $v )
{
$id = $v + 1 ;
echo "<a href=\" link.php?id=" . $id . "\" ><img src=\" " . $image [ $v ] . "\" /></a>" ; $i ++;
if ( $i == 2 ) {
$i = 0 ;
}
}
?>
als het nu niet lukt word ik gek
EDIT: aan het voorbeeld te zien werkt het niet
de link is id=5+1
blijkbaar is die $v een string, want een int kan je optellen met een int, maar een string niet met een int
damn
DarziaC - 15/03/2006 17:22 (laatste wijziging 15/03/2006 17:29)
Nieuw lid
damn, wat raar? hij hoord m gewoon te kennen
Stijn - 15/03/2006 17:28
PHP expert
misschien omdat je de key van de array oproep? rofl
<?php
$i = 0;
foreach($gehad as $k => $v)
{
echo "<a href=\"link.php?id=".$v."\"><img src=\"".$image[$k]."\" /></a>";
if($i%2 == 0) {
echo "<br />";
}
$i++;
}
?>
<?php
$i = 0 ;
foreach ( $gehad as $k => $v )
{
echo "<a href=\" link.php?id=" . $v . "\" ><img src=\" " . $image [ $k ] . "\" /></a>" ; if ( $i % 2 == 0 ) {
}
$i ++;
}
?>
dit zou moeten werken
Simon - 15/03/2006 17:29
PHP expert
<?php
// afdrukken
$i = 0;
foreach($gehad as $v)
{
$id = $v+1;
echo "<a href=\"link.php?id=".$id."\"><img src=\"".$image[$v]."\" /></a>";
$i++;
if($i == 2) {
echo "<br />";
$i = 0;
}
}
?>
<?php
// afdrukken
$i = 0 ;
foreach ( $gehad as $v )
{
$id = $v + 1 ;
echo "<a href=\" link.php?id=" . $id . "\" ><img src=\" " . $image [ $v ] . "\" /></a>" ; $i ++;
if ( $i == 2 ) {
$i = 0 ;
}
}
?>
dit werkt bij mij lokaal
nouja, ik ken nie zoveel van arrays
DarziaC - 15/03/2006 17:31 (laatste wijziging 15/03/2006 17:32)
Nieuw lid
Hij werkt!
Gesponsorde links
Dit onderwerp is gesloten .