Hoi mensen,
Ik zit een met een beetje een vaag probleem, dat waarschijnlijk te maken heeft met iets in php.
Ik heb na een beetje puzzelen en aanpassen van een scriptje via javascript een diashow gemaakt, waarbij de foto's en de beschrijvingen uit een MySQL database worden gehaald dmv PHP.
Bij elk album werkt dit perfect! Op een enkele na... De regels in een bepaalde beschrijving zijn behoorlijk lang en helaas ontstaat daardoor een nieuwe regel in het uiteindelijke HTML-bestand. Hierdoor werkt de javascript niet meer, aangezien een variabele alleen maar kan worden toegewezen op één regel.
Het PHP script:
Dit resulteert in bijvoorbeeld het volgende album:
Dit werkt dus perfect. Alleen bij hele lange regels of regels met enters gebeurt er dus dit:
Elke keer wanneer een nieuwe regel ontstaat (wat ik al heb laten vervangen door de HTML tag <br> via Str_replace("\n","<br>",$text);) staat er <br>. Maar helaas maakt in de html code php daar ook nieuwe regels van, zodat het allemaal niet meer werkt.
Als ik via kladblok/dreamweaver dit gegenereerde stuk bewerk door die nieuwe regel telkens weg te halen doet deze het wel. Hierdoor krijg je dus dit:
Deze doet het dus wel. Maar dit is handmatig aangepast. Is er niet een manier om gewoon door middel van php de regel in één keer door te laten lopen, zodat het niet fout gaat?
De link waarop de betreffende diashow te vinden is:
http://foto.pcmencia.nl/index.php?pageid=37&album=1
Zoals u misschien zult zien doen de andere diashows op de andere pagina's het wel, met hetzelfde scriptje.
Bij voorbaat reuze bedankt!
Ik zit een met een beetje een vaag probleem, dat waarschijnlijk te maken heeft met iets in php.
Ik heb na een beetje puzzelen en aanpassen van een scriptje via javascript een diashow gemaakt, waarbij de foto's en de beschrijvingen uit een MySQL database worden gehaald dmv PHP.
Bij elk album werkt dit perfect! Op een enkele na... De regels in een bepaalde beschrijving zijn behoorlijk lang en helaas ontstaat daardoor een nieuwe regel in het uiteindelijke HTML-bestand. Hierdoor werkt de javascript niet meer, aangezien een variabele alleen maar kan worden toegewezen op één regel.
Het PHP script:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| <?php echo '....... ............... var Picture = new Array(); var Caption = new Array(); var showHot = false;'; $i=1; do { printf(' Picture[%s] = "%s"; Caption[%s] = "<b>%s</b><br>%s";', $i, doresize($picwidth, $picheight, $myrow["adres"]), $i, str_replace('"', "'", $myrow["titel"]), str_replace('"', "'", str_replace("\n", "<br>", $myrow["beschrijving"])) ); $i++; } while ($myrow = mysql_fetch_array($result)); ?> var tss; var iss; var jss = 0; var pss = <?php echo "$last";?>; var stop = false; var preLoad = new Array(); |
Dit resulteert in bijvoorbeeld het volgende album:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| var Picture = new Array(); var Caption = new Array(); var showHot = false; Picture[1] = "weerfoto/2005_08_29/IMG_1983.jpg"; Caption[1] = "<b>Avond</b><br>Avondfoto markdal"; Picture[2] = "weerfoto/2005_08_29/IMG_1997.jpg"; Caption[2] = "<b>Vrouw studeert</b><br>In het park aan de Mark"; Picture[3] = "weerfoto/2005_08_29/IMG_2004.jpg"; Caption[3] = "<b>Warme omgeving.</b><br>Een warme omgeving (vanwege de kleuren)"; Picture[4] = "weerfoto/2005_08_29/IMG_2005.jpg"; Caption[4] = "<b>Het Markdal</b><br>Het Markdal op een mooie zomeravond als de zon al achter de bomen is verdwenen."; var tss; var iss; var jss = 0; var pss = 4; var stop = false; var preLoad = new Array(); |
Dit werkt dus perfect. Alleen bij hele lange regels of regels met enters gebeurt er dus dit:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| Picture[181] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1556.jpg"; Caption[181] = "<b>Golden Gate Bridge</b><br>We reden door. Toen we in de buurt van San Fransisco kwamen daalde de temperatuur in rap tempo. Vertrokken met 35graden en aangekomen in San Fransisco met 15graden (wat een verschil zeg!). <br>We zijn een beetje omgereden om als eerste de Golden Gate bridge te kunnen zien. De mooiste brug van San Fransisco. Vervolgens zijn we eroverheen gereden."; Picture[182] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1568.jpg"; Caption[182] = "<b>Lombard Street</b><br>Vervolgens reden we door San Fransisco in, op weg naar de volgende attractie: Lombard Street. <br>Deze straat wilden we afrijden, daarvoor moesten we wel eerst lang in de file staan, want het was zondag en dus waren we niet de enige. We moesten wachten in een straat die een stijlheid had van maar liefst 37%! Ik liep uit de auto om te kijken hoever het nog was. Terwijl ik naar boven liep, kon ik de uitlaatgassen ruiken en ineens zag ik rechts aan de kant een auto staan met ontplofte motor! Maar goed, onze Ford Explorer kon het allemaal makkelijk aan en we zijn de straat naar beneden gereden. Best leuk!"; Picture[183] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1573.jpg"; Caption[183] = "<b>Union square</b><br>Daarna doorgereden naar Union square"; Picture[184] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1577.jpg"; Caption[184] = "<b>Stijle straten</b><br>Goed, doorgereden naar hotel bij Union Square, 's avonds lekker gegeten in de Cheesecake factory (dat Amerikanen al dat voedsel naar binnen kunnen werken zeg! Ik had nog niet eens de helft op en dat is voor een Nederlander al veel!), 's nachts buikpijn en diarree :p (wtf?) en volgende ochtend op tijd opgestaan om de hele stad af te lopen. Na een halve kilometer lopen kwamen we in wijken met van dit soort Victoriaanse huizen en werkelijk héle schuine straten!"; Picture[185] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1578.jpg"; Caption[185] = "<b>Lafayette park famous church, naam????</b><br>We liepen door en kwamen bij een beroemde kerk uit, maar ik kan daarvan de naam nergens meer op internet vinden. Verscheidene films (met trouwerijen) zijn hier opgenomen. <br>Dit is de eerste kerk in de hele VS die ik gezien heb, die van binnen en buiten lijkt op een Europese kerk uit de 16e eeuw!"; Picture[186] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1582.jpg"; Caption[186] = "<b>Victoriaanse huizen</b><br>We liepen door in de Pacific Heights buurt en we bleven maar Victoriaanse huizen tegenkomen. Mooie huizen dus!"; Picture[187] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1583.jpg"; Caption[187] = "<b>The Needle in de mist</b><br>We liepen door richting Chinatown. Onderweg keken we tussen de Victoriaanse huizen door richting 'The Needle', waarvan het topje in de mist verscholen was (overigens was het die dag weer 15graden)"; Picture[188] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1587.jpg"; Caption[188] = "<b>Chinatown</b><br>We kwamen in Chinatown aan en ineens voelden we ons alsof we niet meer in Amerika waren. Alles was in het Chinees geschreven, we waren omgeven door Chinezen, over al was het markt, druk, druk, druk, het zat bomvol Chinezen! Wel erg vet :)."; Picture[189] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1592.jpg"; Caption[189] = "<b>No trespassing!</b><br>Violators will be shot! <br>(wat ze daar wel niet verzinnen...)"; Picture[190] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1594.jpg"; Caption[190] = "<b>Alcatraz</b><br>We liepen door naar Pier39, een pier met heel veel winkels. Daar hadden we een mooi zicht op Alcatraz, waar we overigens niet naartoe zijn gegaan, omdat men een half jaar van tevoren moet reserveren :@."; |
Elke keer wanneer een nieuwe regel ontstaat (wat ik al heb laten vervangen door de HTML tag <br> via Str_replace("\n","<br>",$text);) staat er <br>. Maar helaas maakt in de html code php daar ook nieuwe regels van, zodat het allemaal niet meer werkt.
Als ik via kladblok/dreamweaver dit gegenereerde stuk bewerk door die nieuwe regel telkens weg te halen doet deze het wel. Hierdoor krijg je dus dit:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| Picture[181] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1556.jpg"; Caption[181] = "<b>Golden Gate Bridge</b><br>We reden door. Toen we in de buurt van San Fransisco kwamen daalde de temperatuur in rap tempo. Vertrokken met 35graden en aangekomen in San Fransisco met 15graden (wat een verschil zeg!).<br>We zijn een beetje omgereden om als eerste de Golden Gate bridge te kunnen zien. De mooiste brug van San Fransisco. Vervolgens zijn we eroverheen gereden."; Picture[182] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1568.jpg"; Caption[182] = "<b>Lombard Street</b><br>Vervolgens reden we door San Fransisco in, op weg naar de volgende attractie: Lombard Street.<br>Deze straat wilden we afrijden, daarvoor moesten we wel eerst lang in de file staan, want het was zondag en dus waren we niet de enige. We moesten wachten in een straat die een stijlheid had van maar liefst 37%! Ik liep uit de auto om te kijken hoever het nog was. Terwijl ik naar boven liep, kon ik de uitlaatgassen ruiken en ineens zag ik rechts aan de kant een auto staan met ontplofte motor! Maar goed, onze Ford Explorer kon het allemaal makkelijk aan en we zijn de straat naar beneden gereden. Best leuk!"; Picture[183] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1573.jpg"; Caption[183] = "<b>Union square</b><br>Daarna doorgereden naar Union square"; Picture[184] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1577.jpg"; Caption[184] = "<b>Stijle straten</b><br>Goed, doorgereden naar hotel bij Union Square, 's avonds lekker gegeten in de Cheesecake factory (dat Amerikanen al dat voedsel naar binnen kunnen werken zeg! Ik had nog niet eens de helft op en dat is voor een Nederlander al veel!), 's nachts buikpijn en diarree :p (wtf?) en volgende ochtend op tijd opgestaan om de hele stad af te lopen. Na een halve kilometer lopen kwamen we in wijken met van dit soort Victoriaanse huizen en werkelijk héle schuine straten!"; Picture[185] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1578.jpg"; Caption[185] = "<b>Lafayette park famous church, naam????</b><br>We liepen door en kwamen bij een beroemde kerk uit, maar ik kan daarvan de naam nergens meer op internet vinden. Verscheidene films (met trouwerijen) zijn hier opgenomen.<br>Dit is de eerste kerk in de hele VS die ik gezien heb, die van binnen en buiten lijkt op een Europese kerk uit de 16e eeuw!"; Picture[186] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1582.jpg"; Caption[186] = "<b>Victoriaanse huizen</b><br>We liepen door in de Pacific Heights buurt en we bleven maar Victoriaanse huizen tegenkomen. Mooie huizen dus!"; Picture[187] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1583.jpg"; Caption[187] = "<b>The Needle in de mist</b><br>We liepen door richting Chinatown. Onderweg keken we tussen de Victoriaanse huizen door richting 'The Needle', waarvan het topje in de mist verscholen was (overigens was het die dag weer 15graden)"; Picture[188] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1587.jpg"; Caption[188] = "<b>Chinatown</b><br>We kwamen in Chinatown aan en ineens voelden we ons alsof we niet meer in Amerika waren. Alles was in het Chinees geschreven, we waren omgeven door Chinezen, over al was het markt, druk, druk, druk, het zat bomvol Chinezen! Wel erg vet :)."; Picture[189] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1592.jpg"; Caption[189] = "<b>No trespassing!</b><br>Violators will be shot!<br>(wat ze daar wel niet verzinnen...)"; Picture[190] = "fotoresize.php?X=944&Y=568&file=fotoMaarten/IMG_1594.jpg"; Caption[190] = "<b>Alcatraz</b><br>We liepen door naar Pier39, een pier met heel veel winkels. Daar hadden we een mooi zicht op Alcatraz, waar we overigens niet naartoe zijn gegaan, omdat men een half jaar van tevoren moet reserveren :@."; |
Deze doet het dus wel. Maar dit is handmatig aangepast. Is er niet een manier om gewoon door middel van php de regel in één keer door te laten lopen, zodat het niet fout gaat?
De link waarop de betreffende diashow te vinden is:
http://foto.pcmencia.nl/index.php?pageid=37&album=1
Zoals u misschien zult zien doen de andere diashows op de andere pagina's het wel, met hetzelfde scriptje.
Bij voorbaat reuze bedankt!