afbeelding veranderen bij klikken ve link.
Johaninho - 09/09/2006 20:06 (laatste wijziging 09/09/2006 20:33)
Nieuw lid
Hoi,
Verder bouwend op mn includes van pagina's wil ik nu ook dat mn headerafbeelding veranderd bij het klikken van een link. Ik heb volgende code en bij de eerste <img src="<?php echo afbeeldingsbron?>" /> dient de headerafbeelding te komen staan... Echter met deze code wilt ie niet mee. Ook als ik refresh veranderd er niets.
Iemand raad hiermee. Ik zie het niet zitten om de afbeeldingen op iedere te includen page te zetten.
code is als volgt:
<?php //Gedeelte voor het declareren van variabelen en constanten.
//variabelen
$pagina = "";
$afbeeldingsbron = "webdesign/headers/h_home.jpg";
$afbeeldingHulp = "";
//constanten
$paginas = array("home","about","portfolio");
?>
<table width="100%">
<tr height="20">
<td background="webdesign/backgrounds/logon bg.jpg"> </td>
</tr>
<tr>
<td><img src="<?php echo $afbeeldingsbron; ?>" /></td>
</tr>
</table>
</br>
</br>
<table>
<tr>
<td>
<div id="navigatie">
<a href="?pagina=home">link1</a>
<br />
<a href="?pagina=about">link2</a>
<br />
<a href="?pagina=portfolio">link3</a>
<br />
<a href="?pagina=test3">home</a>
</div>
<div id="beschrijving">
<?php
if(in_array($_GET['pagina'],$paginas)) {
include($_GET['pagina'].".inc");
$afbeeldingHulp = "h_".$_GET['pagina'].".jpg";
$afbeeldingsbron = $afbeeldingsbron.$afbeeldingshulp;
}
elseif($pagina == 'test3') {
include("index.php");
$afbeeldingsbrong = "webdesign/headers/h_home.jpg";
}
?>
</div>
</td>
</tr>
</table>
</body>
</html>
<?php //Gedeelte voor het declareren van variabelen en constanten.
//variabelen
$pagina = "" ;
$afbeeldingsbron = "webdesign/headers/h_home.jpg" ;
$afbeeldingHulp = "" ;
//constanten
$paginas = array ( "home" , "about" , "portfolio" ) ; ?>
<table width="100%">
<tr height="20">
<td background="webdesign/backgrounds/logon bg.jpg"> </td>
</tr>
<tr>
<td><img src="
<?php echo $afbeeldingsbron ; ?> " /></td>
</tr>
</table>
</br>
</br>
<table>
<tr>
<td>
<div id="navigatie">
<a href="?pagina=home">link1</a>
<br />
<a href="?pagina=about">link2</a>
<br />
<a href="?pagina=portfolio">link3</a>
<br />
<a href="?pagina=test3">home</a>
</div>
<div id="beschrijving">
<?php
if ( in_array ( $_GET [ 'pagina' ] , $paginas ) ) { include ( $_GET [ 'pagina' ] . ".inc" ) ;
$afbeeldingHulp = "h_" . $_GET [ 'pagina' ] . ".jpg" ;
$afbeeldingsbron = $afbeeldingsbron . $afbeeldingshulp ;
}
elseif ( $pagina == 'test3' ) {
include ( "index.php" ) ;
$afbeeldingsbrong = "webdesign/headers/h_home.jpg" ;
}
?>
</div>
</td>
</tr>
</table>
</body>
</html>
alvast bedankt!
greetz.
J.
8 antwoorden
Gesponsorde links
Johaninho - 09/09/2006 20:37
Nieuw lid
Mja... dat is het niet... Ik had die fout wel over het hoofd gezien, maar daar zit het niet in.
Als ik een echo doe na het bepalen van de links en de bron dan geeft hij effectief de juiste bestandsurl weer.
Maar dat het in deze dingen niet zit, daar ben ik al uit...
Echter lijkt het me eerder een "procedureel" probleem, daar de code in volgorde geparsed wordt en dus de bron pas gekend is na het includen van de pagina. Langs de andere kant valt het dan weer niet te verklaren hoe het komt dat de afbeelding niet veranderd bij een refresh omdat op dat ogenblik de code wel is bepaald samen met de weer te geven afbeelding...
Iemand een verklaring of een oplossing?
Mvg,
J.
Dark_Paul - 09/09/2006 20:51
PHP ver gevorderde
Rensjuh heeft een punt, bosgroen heeft ook al een belangrijke fout. Maar dit gaat dus ook niet werken he
$afbeeldingsbron = "webdesign/headers/h_home.jpg";
$afbeeldingHulp = "h_".$_GET['pagina'].".jpg";
$afbeeldingsbron = $afbeeldingsbron.$afbeeldingshulp;
$afbeeldingsbron = "webdesign/headers/h_home.jpg" ;
$afbeeldingHulp = "h_" . $_GET [ 'pagina' ] . ".jpg" ;
$afbeeldingsbron = $afbeeldingsbron . $afbeeldingshulp ;
Als je dus als $afbeeldingHulp h_about.jpg krijgt, dan ziet $afbeeldingsbron er zo uit: "webdesign/headers/h_home.jpgh_about.jpg en dan gaat ie 'm niet openen vrees ik..
Johaninho - 09/09/2006 21:03 (laatste wijziging 09/09/2006 21:04)
Nieuw lid
ff aanpassing gedaan...
<?php //Gedeelte voor het declareren van variabelen en constanten.
//variabelen
$pagina = "";
$afbeeldingsbron = "webdesign/headers/";
$afbeeldingHulp = "";
$hPage = "index.php";
//constanten
$paginas = array("home","about","portfolio");
?>
<table width="100%">
<tr height="20">
<td background="webdesign/backgrounds/logon bg.jpg"> </td>
</tr>
<tr>
<td><img src="<?php echo $afbeeldingsbron; ?>" /></td>
</tr>
</table>
</br>
</br>
<table>
<tr>
<td>
<div id="navigatie">
<a href="?pagina=home">link1</a>
<br />
<a href="?pagina=about">link2</a>
<br />
<a href="?pagina=portfolio">link3</a>
<br />
<a href="?pagina=test3">home</a>
</div>
<div id="beschrijving">
<?php
if(in_array($_GET['pagina'],$paginas)) {
include($_GET['pagina'].".inc");
$afbeeldingHulp = "h_".$_GET['pagina'].".jpg";
$afbeeldingsbron = $afbeeldingsbron.$afbeeldingshulp;
echo $afbeeldingsbron;
}
elseif($pagina == 'test3') {
include($hPage);
$afbeeldingsbron = "webdesign/headers/h_home.jpg";
}
?>
</div>
</td>
</tr>
</table>
<?php //Gedeelte voor het declareren van variabelen en constanten.
//variabelen
$pagina = "" ;
$afbeeldingsbron = "webdesign/headers/" ;
$afbeeldingHulp = "" ;
$hPage = "index.php" ;
//constanten
$paginas = array ( "home" , "about" , "portfolio" ) ; ?>
<table width="100%">
<tr height="20">
<td background="webdesign/backgrounds/logon bg.jpg"> </td>
</tr>
<tr>
<td><img src="
<?php echo $afbeeldingsbron ; ?> " /></td>
</tr>
</table>
</br>
</br>
<table>
<tr>
<td>
<div id="navigatie">
<a href="?pagina=home">link1</a>
<br />
<a href="?pagina=about">link2</a>
<br />
<a href="?pagina=portfolio">link3</a>
<br />
<a href="?pagina=test3">home</a>
</div>
<div id="beschrijving">
<?php
if ( in_array ( $_GET [ 'pagina' ] , $paginas ) ) { include ( $_GET [ 'pagina' ] . ".inc" ) ;
$afbeeldingHulp = "h_" . $_GET [ 'pagina' ] . ".jpg" ;
$afbeeldingsbron = $afbeeldingsbron . $afbeeldingshulp ;
}
elseif ( $pagina == 'test3' ) {
include ( $hPage ) ;
$afbeeldingsbron = "webdesign/headers/h_home.jpg" ;
}
?>
</div>
</td>
</tr>
</table>
Ma goed hier zat dus niet direct iets in...
@ RENSJUH:
Denk je dat het mogelijk is om mijn controle van de includes te doen voordat mijn links "gecodeerd" zijn met html? en dat ik dus twee keer een lus kan plaatsen, een voor de afbeelding te tonen en de andere lus voor de include te bepalen op de plaats waardat geinclude moet worden?
Mvg,
J.
Dark_Paul - 09/09/2006 21:08
PHP ver gevorderde
zet je paginastuk bovenaan, ipv dat je include geef je bijvoorbeeld $pagina_include een waarde, dus dit:
<?php
$pagina = "";
$afbeeldingsbron = "bijberoep webdesign/headers/";
$afbeeldingHulp = "";
$hPage = "index.php";
//constanten
$paginas = array("home","about","portfolio");
if(in_array($_GET['pagina'],$paginas)) {
$pagina_include = $_GET['pagina'].".inc";
$afbeeldingHulp = "h_".$_GET['pagina'].".jpg";
$afbeeldingsbron = $afbeeldingsbron.$afbeeldingshulp;
echo $afbeeldingsbron;
}
else {
include($hPage);
$afbeeldingsbron = "webdesign/headers/h_home.jpg";
}
?>
// hier je html waar je de vars in gebruikt
<?php
$pagina = "" ;
$afbeeldingsbron = "bijberoep webdesign/headers/" ;
$afbeeldingHulp = "" ;
$hPage = "index.php" ;
//constanten
$paginas = array ( "home" , "about" , "portfolio" ) ;
if ( in_array ( $_GET [ 'pagina' ] , $paginas ) ) { $pagina_include = $_GET [ 'pagina' ] . ".inc" ;
$afbeeldingHulp = "h_" . $_GET [ 'pagina' ] . ".jpg" ;
$afbeeldingsbron = $afbeeldingsbron . $afbeeldingshulp ;
}
else {
include ( $hPage ) ;
$afbeeldingsbron = "webdesign/headers/h_home.jpg" ;
}
?>
// hier je html waar je de vars in gebruikt
Johaninho - 09/09/2006 21:29
Nieuw lid
bedankt, Dark_Paul!
Gesponsorde links
Dit onderwerp is gesloten .