login  Naam:   Wachtwoord: 
Registreer je!
 Forum

mutlviews: links gaan mee

Offline Legolas - 15/08/2005 08:22
Avatar van LegolasOnbekend Hey allemaal,

het is me net gelukt voor het eerst multiviews te maken ( voorbeeld ). Maar m'n probleem is nu dat alle src's van de afbeeldingen dit pad volgen.
als je op www.psarts.be/profiel/1/ zit zijn alle afbeeldingen nu: www.psarts.be/profiel/1/afbeeldingpath. dit moet dus niet. is hier iets aan te doen met htaccess?:)

Alvast Bedankt,
Legolas;-)

11 antwoorden

Gesponsorde links
Offline Piro - 15/08/2005 09:27 (laatste wijziging 15/08/2005 09:32)
Avatar van Piro Nieuw lid Euhm met htaccess weet ik het niet zo direct, maar als je gewoon niet relatief linkt, zal het wel lukken...

Dus http://www.psarts.be/afbeeldingpath/afbeelding.jpg ipv afbeeldingpath/afbeelding.jpg

Misschien zou het ook lukken een rewriterule te maken voor je afbeeldingenpath?

Offline Ontani - 15/08/2005 09:48
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
zet gewoon ./ voor je images path
Offline Legolas - 15/08/2005 11:11
Avatar van Legolas Onbekend @Piro: hoe moet ik zo'n RewriteRule maken? ik weet wel wat het is, maar weet niet hoe ik het doen moet..
@Ontani: dat heeft geen zin..
Offline Piro - 15/08/2005 14:13 (laatste wijziging 15/08/2005 14:13)
Avatar van Piro Nieuw lid Dat weet ik zelf niet juist, maar het zal wellicht wel mogelijk zijn... 

Zoiets?
  1. RewriteRule imagepath/(.*)$ /echteimagepath/$1
Offline Legolas - 15/08/2005 16:22
Avatar van Legolas Onbekend tis opgelost, ik heb gewoon overal een absolute url van gemaakt, dwz images/spacer.gif wordt bijvoorbeeld http://www.psarts.be/images/spacer.gif.

Wel met de hand:$ 
Offline nemesiskoen - 15/08/2005 17:16 (laatste wijziging 15/08/2005 17:16)
Avatar van nemesiskoen Gouden medaille

PHP expert
niet slim om absolute urls te gebruiken.
Je had beter een functie gemaakt die het images path bepaald.

Iets in de aard van:
  1. lees header
  2. zit niets in => gebruik path dat je nu gebruikt
  3. zit wel iets in => recursief maken en zien hoe diep
  4. aantal keer hoe diep in variabele steken
  5. ../ dit dan aantal keer voor het path zetten
Offline Legolas - 15/08/2005 17:23 (laatste wijziging 15/08/2005 17:24)
Avatar van Legolas Onbekend Heb ik geprobeerd maar m'n script werkte niet:(

en trouwens, dan gaan ook alle andere urls zoals afbeeldingen via de [img] tag zo. dus das niet zo handig.
Offline Piro - 15/08/2005 18:18
Avatar van Piro Nieuw lid Zou ik even mogen vragen waarom het niet slim is absolute url te gebruiken?
Offline nemesiskoen - 15/08/2005 18:23
Avatar van nemesiskoen Gouden medaille

PHP expert
Als je
a) ooit van url veranderd
b) hem eerst lokaal test en daarna pas online
c) hem op ip test en dan pas online
d) ooit van map veranderd
heb je problemen.
Ook oogt het minder.
Beter zou dan zijn je absolute urls zo te maken:

  1. <?php
  2. function zetAfbeelding($afbeelding,$alt=""){
  3. $pre = "http://www.psarts.be";
  4. return '<img src="'. $pre.$afbeelding .'" alt="'. $alt .'" />';
  5. }
  6. ?>
  7. <!-- html zever -->
  8. <?php echo zetAfbeelding("images/blaat.jpg"); ?>
Offline Legolas - 15/08/2005 18:24
Avatar van Legolas Onbekend Eigenlijk zat ik aan deze functie ook al te denken, maar: hoe doe je dit als de afbeeldingen geladen staan in templates?
Offline nemesiskoen - 15/08/2005 18:29 (laatste wijziging 15/08/2005 20:50)
Avatar van nemesiskoen Gouden medaille

PHP expert
  1. $tpl->assign("afb1",zetAfbeelding("images/afb1.jpg"));

of iets in die aard, tijdje geleden dat ik nog met templates heb gewerkt.

Je zou ze ook allemaal in een xml bestand kunnen zetten en via php dit bestand aanroepen en dan de juiste titel linken aan de juiste afbeelding via xslt. Maar dit is net iets te omslachtig voor wat jij wilt doen.

Voor die functie kan je ook een standaard extentie zetten voor nog minder schrijfwerk.

  1. <?php
  2. function zetAfbeelding($afbeelding,$alt=""){
  3. $pre = "http://www.psarts.be/";
  4. $mogelijkeExtenties = array("jpg","jpeg","gif","png",etc);
  5. $standaard = $mogelijkeExtenties[0]; //stel jpg als standaard extentie in
  6. $temp=explode(".",$afbeelding);
  7. if(!in_array($temp[count($temp)-1],$mogelijkeExtenties)){
  8. $afbeelding.=".".$standaard;
  9. }
  10. return '<img src="'. $pre.$afbeelding .'" alt="'. $alt .'" />';
  11. }
  12. ?>
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.207s