Gå til innhold

Bruke PHP i meny


Anbefalte innlegg

Hei.

 

Jeg lurer på om det er mulig å bruke php ometrent slik som med frames.

DVS at jeg har en side (index.php) som inneholder banner, meny, footer osv.

Og at jeg har innholds filer (innhold.html) som skal inn i hovedfeltet på index.php.

Hvordan skriver jeg en php streng som veksler mellom forskjellige innholds filer?

Og hvordan bruker jeg denne strengen i en meny i stedet for href

 

Er det noen plass jeg finner kontaktskjema i php (noe lignende som fp skjemaene) som sender direkte på mail.

Bør inneholde fra,firma,adresse,telefon,mobil,fax og melding.

 

Takker for all hjelp på forhånd :thumbup:

Lenke til kommentar
Videoannonse
Annonse

Hva mener du med:

Hvordan skriver jeg en php streng som veksler mellom forskjellige innholds filer?

Og hvordan bruker jeg denne strengen i en meny i stedet for href

 

Du kan ikke bruke PHP for å bytte ut <a href...

Da trenger du f.eks. JS, VB, Java eller Flash. Hvis du mener at du ønsker f.eks. en fast topp og bunn på siden, men ønsker å bytte ut innholdet kan du gjøre dette med include().

Lenke til kommentar

du kan bruke et vanlig include script, som går på dynamiske linker.

 

(Eksempel: (Veldig enkelt))

 

Index.php eller hva filen heter.

<?

$side = $_GET['side'];

if(!empty($side))
{
$include_streng = $side.".php";

if (file_exists($include_streng))
 {
  include($include_streng);
 }
else
{
echo "Siden finnes ikke";
}
}

 

I linkene skriver du:

<a href="<? print $_SERVER['PHP_SELF']; ?>?side=side1"> Side 1 </a>

eller:
<a href ="index.php?side=side1"> Side 1 </a>

Endret av robgar
Lenke til kommentar

Jeg tror det er akkurat det jeg er ute etter

 

menyen min i dag er slik

 

<area href="index.php" shape="rect" coords="19, 42, 86, 59">
<area href="om.php" shape="rect" coords="21, 77, 81, 92">
<area href="linker.php" shape="rect" coords="21, 111, 76, 129">
<area href="info.php" shape="rect" coords="19, 147, 73, 161">

 

index.php er slik

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">


<html>

<head>


<title>Min hjemmeside</title>

<link rel="stylesheet" type="text/css" href="side.css" />
<link rel="stylesheet" type="text/css" href="tekst.css" />

<head>

<body>


<div id="side">

<div id="top">
<?php include("side/topp.html"); ?>
</div>

<div id="meny">
<?php include("side/meny.html"); ?>
</div>

<div id="hovedfelt">
<?php include("innhold/hovedside.html"); ?>
</div>

<div id="bord">
</div>

<div id="nyheter">
<?php include("innhold/nyheter.html"); ?>
</div>

<div id="bord2">
</div>

<div id="bunn">
<?php include("side/bunn.html"); ?>
</div>

</div>


</body>

</html>

 

Det er i hovedfeltet jeg vil bytte innhold, resten skal være slik det er.

Lar det seg gjøre, prøvde med koden din, men fikk det ikke til :blush:

 

Trenger vel antageligvis teskje prinsippet :roll:

Lenke til kommentar

Det lar seg gjøre å bytte ut innholdet i hovedramma, men du må laste hele siden på nytt...

 

Du sender da en variabel gjennom linken som f.eks. index.php?side=hovedside, og bruker den til å inkludere en side.

 

Du kan f.eks. bytte ut koden din som ser sånn ut:

<?php include("innhold/hovedside.html"); ?>

 

Med denne:

<?php include("innhold/$_GET[side].html"); ?>

 

Du bør helst sjekke om $_GET['side'] bare inneholder bokstaver, eller at den er en fil i mappa di, men jeg vet ikke hvor mye du kan om dette, så jeg sier ikke noe mer om det nå ;)

Lenke til kommentar

Det er i hovedfeltet jeg vil bytte innhold, resten skal være slik det er.

Lar det seg gjøre, prøvde med koden din, men fikk det ikke til :blush:

 

Trenger vel antageligvis teskje prinsippet :roll:

Slik kanskje?

 

 

 

<area href="index.php?side=startside" shape="rect" coords="19, 42, 86, 59">
<area href="index.php?side=om" shape="rect" coords="21, 77, 81, 92">
<area href="index.php?side=linker" shape="rect" coords="21, 111, 76, 129">
<area href="index.php?side=info" shape="rect" coords="19, 147, 73, 161">

 

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">


<html>

<head>


<title>Min hjemmeside</title>

<link rel="stylesheet" type="text/css" href="side.css" />
<link rel="stylesheet" type="text/css" href="tekst.css" />

<head>

<body>


<div id="side">

<div id="top">
<?php include("side/topp.html"); ?>
</div>

<div id="meny">
<?php include("side/meny.html"); ?>
</div>

<div id="hovedfelt">

<?

$side = $_GET['side'];

if(!empty($side))
{
$include_streng = $side.".php";

if (file_exists($include_streng))
{
 include($include_streng);
}
else
{
echo "Siden finnes ikke";
}
}
?>

</div>

<div id="bord">
</div>

<div id="nyheter">
<?php include("innhold/nyheter.html"); ?>
</div>

<div id="bord2">
</div>

<div id="bunn">
<?php include("side/bunn.html"); ?>
</div>

</div>


</body>

</html>

Lenke til kommentar

takker robgar :thumbup:

 

Jeg får ikke prøvd koden før jeg kommer hjem.

 

Men kan det være at jeg skrev

 

<area href="index.php?side=innhold/om.php" shape="rect" coords="21, 77, 81, 92">

 

som gjorde at det ble feil i utgangspunktet.

 

kan jeg skrive

 

<area href="index.php?side=innhold/om" shape="rect" coords="21, 77, 81, 92">

 

eller må fila ligge i rota slik

 

<area href="index.php?side=om" shape="rect" coords="21, 77, 81, 92">

 

:hmm:

Får prøve senere i dag

Lenke til kommentar
takker robgar   :thumbup:

 

Jeg får ikke prøvd koden før jeg kommer hjem.

 

Men kan det være at jeg skrev

 

<area href="index.php?side=innhold/om.php" shape="rect" coords="21, 77, 81, 92">

 

som gjorde at det ble feil i utgangspunktet.

 

kan jeg skrive

 

<area href="index.php?side=innhold/om" shape="rect" coords="21, 77, 81, 92">

 

eller må fila ligge i rota slik

 

<area href="index.php?side=om" shape="rect" coords="21, 77, 81, 92">

 

:hmm:

Får prøve senere i dag

Du kan enten legge inn addressen til filen om.php i scriptet slik:

 

 

<?

 

$side = $_GET['side'];

 

if(!empty($side))

{

$include_streng = $side.".php";

 

if ($side == "om")

{

$include_streng = "innhold/".$side.".php";

}

 

if (file_exists($include_streng))

{

include($include_streng);

}

else

{

echo "Siden finnes ikke";

}

}

?>

 

 

 

Eller du kan gjøre slik som du sa ja :

 

<area href="index.php?side=innhold/om" shape="rect" coords="21, 77, 81, 92">

 

Men det skriptet jeg ga, legger til.php automatisk på alle filene.

Endret av robgar
Lenke til kommentar
robgar

 

Går det an å sette inn i scriptet at den laster en innholds side som default.

Nå er innholds feltet blank til en trykker på en meny knapp.  :hmm:

selfølgelig:

 

<?

 

$side = $_GET['side'];

 

if(!empty($side)) {

 

$include_streng = $side.".php";

 

if ($side == "om") {

$include_streng = "innhold/".$side.".php";

}

 

if (file_exists($include_streng)) {

include($include_streng);

}

else {

echo "Siden finnes ikke";

}

 

}

 

elseif (empty($side))

{

include ("default.php");

}

?>

Endret av robgar
Lenke til kommentar
  • 1 måned senere...

Hei. Eg er en totalt newbie innen php. Men eg har brukt dette include scriptet, men eg får en feilmelding:

 

"Notice: Undefined index: side in index.php on line 29"

 

Kan noen hjelpe meg? Alt ser ut til å fungere fint med menyen, men denne feilmeldingen går ikke vekk. Det må vær en enkel feil, men eg klarer ikke se den :blush:

 

Her er min index.php:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">

<html>

<head>

<link rel="stylesheet" type="text/css" href="side.css">

<link rel="stylesheet" type="text/css" href="cssmenus-messy.css">

<title>Min Hjemmeside</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

 

</head>

 

<body>

 

id="sectionone">

 

<div id="side">

 

<div id="banner">

<?php include("side/banner.php"); ?>

</div>

 

<div id="leftcontent">

<?php include("side/leftcontent.php"); ?>

</div>

 

<div id="centercontent">

<?

$side = $_GET['side'];

 

if(!empty($side))

{

$include_streng = $side.".php";

 

if (file_exists($include_streng))

{

include($include_streng);

}

else

{

echo "Siden finnes ikke";

}

}

elseif (empty($side))

{

include ("side/centercontent.php");

}

 

?>

</div>

 

<div id="rightcontent_ramme">

<?php include("side/rightcontent_ramme.php"); ?>

</div>

 

<div id="leftmenu">

<?php include("side/leftmenu.php"); ?>

</div>

 

<div id="rightcontent">

<?php include("side/rightcontent.php"); ?>

</div>

 

<div id="rightcontent_ads">

<?php include("side/rightcontent_ads.php"); ?>

</div>

 

<div id="rightcontent_bil">

<?php include("side/rightcontent_bil.php"); ?>

</div>

</div>

</body>

</html>

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...