Kheb scriptje nodig, deel zelf gemaakt ;)

Status
Niet open voor verdere reacties.

tanaxis

Gebruiker
Lid geworden
6 okt 2009
Berichten
6
hello,
Ik ga hier ff een code geven dat ik gemaakt heb door php en javascript door elkaar te smijten, maar natuurlijk werkt dit niet (nogal logisch):


Code:

Code:
if(isset($_GET['page'])) {
switch(strtolower($_GET['page']))
{
case (url='?page=home'): myMenu.expandMenu(myMenu.submenus[0]); document.title='Lazysoldiers - Home'; break;
case (url='?page=Joining'): myMenu.expandMenu(myMenu.submenus[0]); document.title='Lazysoldiers - joining'; break;
case (url='?page=rules'): myMenu.expandMenu(myMenu.submenus[1]); document.title='Lazysoldiers - rules'; break;
case (url='?page=members'): myMenu.expandMenu(myMenu.submenus[1]); document.title='Lazysoldiers -members; break;
case (url='?page=servers'): myMenu.expandMenu(myMenu.submenus[1]); document.title='Lazysoldiers - Home'; break;
case (url='?page=etc'): myMenu.expandMenu(myMenu.submenus[etc]); document.title='Lazysoldiers - etc'; break;
default: myMenu.expandMenu(myMenu.submenus[0]); document.title='Lazysoldiers - Error'; break;
        }
        }
else 
{
myMenu.expandMenu(myMenu.submenus[0]); document.title='Lazysoldiers - Error'; break;
}

Dus ff uitleggen, als de url van website gelijk is aan http://mijndomein.info/?page=home dan moet
Mymenu submenu 0 openen en document titel veranderen naar "Lazysoldiers - Home"
als de url van website gelijk is aan http://mijndomein.info/?page=members dan moet
Mymenu submenu 1 openen en document titel veranderen naar "Lazysoldiers - Members"
enz voor de rest van pagina's.

Grtz Tanaxis
 
Laatst bewerkt:
Welkom op Helpmij.:)

zoals aangegeven de topic schoongemaakt.
 
Wat betreft de titel van de pagina:
PHP:
<?php
	$paginas = array ("home","joining","rules","members","home","etc","error");
	if (isset($_GET["page"]) && in_array(strtolower($_GET["page"]),$paginas)) {
		echo "<title>Lazysoldiers - ".$_GET["page"]."</title>";
	} else {
		echo "<title>Lazysoldiers</title>";
	}
?>
Wat betreft de javascript voor het menu... post het eens zonder php er doorheen.
 
Laatst bewerkt:
Wat betreft de titel van de pagina:
PHP:
<?php
	$paginas = array ("home","joining","rules","members","home","etc","error");
	if (isset($_GET["page"]) && in_array(strtolower($_GET["page"]),$paginas)) {
		echo "<title>Lazysoldiers - ".$_GET["page"]."</title>";
	} else {
		echo "<title>Lazysoldiers</title>";
	}
?>
Wat betreft de javascript voor het menu... post het eens zonder php er doorheen.

oh Dank u!!! kga dat direct doen ;)

EDIT:

ff mijn website posten e ;)
http://lazysoldiers.info
dus je ziet mijn navbar die achter pagina is geladen sluit hij alle submenus behalve de submenu 0
maar als je verander en bv naar http://lazysoldiers.info?page=members gaat, waar door je eerst submenu 1 en dan op members moet voor klikken, achter dat de pagina geladen is sluit hij weer alle submenu, behalve submenu 0 ik zou nu willen als je bv naar http://lazysoldiers.ino/?page=members gaat dat alle submenu sluiten behalve submenu 1

ff int kort
als pagina op home/joining/(voor alle links in submenu 0) staat moet submenu 0 van navigatie openen
als pagina op members/rules/contact/servers(voor alle links in submenu 1) staat moet submenu 1 van navigatie openen
enz.

kheb juist ook onder vonden dat er een class is die collapsed noemt die zorgt dat het submenu gesloten is....
en btw als je me website code nodig hebt vraag het ;)

Hier zijn de codes voor menu is int het engels de uitleg er bij, maar ik denk wel dat je dat snapt :p
=>
Code:
var myMenu = new SDMenu("main_menu"); // ID of the menu element
// Default values...
myMenu.speed = 3;                     // Menu sliding speed (1 - 5 recomended)
myMenu.remember = true;               // Store menu states (expanded or collapsed) in cookie and restore later
myMenu.oneSmOnly = false;             // One expanded submenu at a time
myMenu.markCurrent = true;            // Mark current link / page (link.href == location.href)

myMenu.init();

// Additional methods...
var firstSubmenu = myMenu.submenus[0];
myMenu.expandMenu(firstSubmenu);      // Expand a submenu
myMenu.collapseMenu(firstSubmenu);    // Collapse a menu
myMenu.toggleMenu(firstSubmenu);      // Expand if collapsed and collapse if expanded

myMenu.expandAll();                   // Expand all submenus
myMenu.collapseAll();                 // Collapse all submenus
Als je het hele script wilt bekijken: http://www.dynamicdrive.com/dynamicindex1/slashdot.htm

en ng eens danku e kga nu ff kyken of het vorige script werkt :p
bye Tanaxis
 
Laatst bewerkt:
De broncode is nogal een rommeltje, maar ik zal een poging wagen: nu staat er
HTML:
<title>Lazysoldiers - Home</title>
	<script type="text/javascript" src="sdmenu/sdmenu.js">
		/***********************************************
		* Slashdot Menu script- By DimX
		* Submitted to Dynamic Drive DHTML code library: http://www.dynamicdrive.com
		* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
		***********************************************/
	</script>
	<script type="text/javascript">
	// <![CDATA[
	var myMenu;

	
	window.onload = function() {
		myMenu = new SDMenu("my_menu");
		myMenu.init();
		myMenu.expandMenu(myMenu.submenus[0])
	};
	// ]]>
	</script>
Als je dat eens vervangt door:
PHP:
<?php
$paginas = array (
	"home"=>0,
	"joining"=>0,
	"rules"=>1,
	"members"=>1,
	"home"=>1,
	"etc"=>2,
	"error"=>0
);
if (isset($_GET["page"]) && array_key_exists(strtolower($_GET["page"]),$paginas)) {
	echo "<title>Lazysoldiers - ".$_GET["page"]."</title>\n";
	$submenu = $paginas[strtolower($_GET["page"])];
} else {
	echo "<title>Lazysoldiers</title>\n";
	$submenu = 0;
}
echo <<<END
	<script type="text/javascript" src="sdmenu/sdmenu.js" />
	<script type="text/javascript">
		var myMenu;
		window.onload = function() {
			myMenu = new SDMenu("my_menu");
			myMenu.init();
			myMenu.expandMenu(myMenu.submenus[$submenu])
		};
	</script>
END;
?>
 
uh het werkt niet :s
en in dreamweaver zegt hij niet meer dat het script sdmenu/sdmenu.js gebruikt moet worden... want in cs4 zie je welke paginas en externe scripts er gebruikt/geincluded worden zo je snel kan overschakelen...

dit is mijn hele code dus ;)

Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head>

<link rel="stylesheet" type="text/css" href="sdmenu/sdmenu.css" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<?php
$paginas = array (
    "home"=>0,
    "joining"=>0,
    "rules"=>1,
    "members"=>1,
    "contact"=>1,
	"servers"=>1,
    "etc"=>2,
    "error"=>0
);
if (isset($_GET["page"]) && array_key_exists(strtolower($_GET["page"]),$paginas)) {
    echo "<title>Lazysoldiers - ".$_GET["page"]."</title>\n";
    $submenu = $paginas[strtolower($_GET["page"])];
} else {
    echo "<title>Lazysoldiers</title>\n";
    $submenu = 0;
}
echo <<<END
    <script type="text/javascript" src="sdmenu/sdmenu.js" />
    <script type="text/javascript">
        var myMenu;
        window.onload = function() {
            myMenu = new SDMenu("my_menu");
            myMenu.init();
            myMenu.expandMenu(myMenu.submenus[$submenu])
        };
    </script>
END;
?>


<style type="text/css">
body { 
	margin : 0; 
	padding : 0; 
	height : 100%; 
	background : #000000; 
	background-image : url(images/background.png); 
	background-repeat : repeat-x; 
} 
p.center { 
	color : #ff0000; 
} 
p.buttom { 
	color : #f00; 
} 
#logo { 
	position : absolute; 
	top : 0; 
	left : 0; 
	margin : 0; 
	padding : 0; 
	border : 0; 
	background : url(images/logo2.png); 
	background-repeat : no-repeat; 
	width : 150px; 
	voice-family : "\"}\""; 
	voice-family : inherit; 
	width : 150px; 
	visibility : inherit; 
	height : 100px; 
} 
h1 { 
	color : #f00; 
} 
h2.center { 
	text-align : center; 
	border-bottom : dotted; 
	text-decoration : none; 
} 
A:link { 
	text-decoration : none; 
	color : #000; 
} 
A:visited { 
	text-decoration : none; 
	color : #000; 
} 
A:active { 
	text-decoration : none; 
	color : #000; 
} 
A:hover { 
	text-decoration : underline overline; 
	color : #666; 
} 
A.buttomlink:link { 
	text-decoration : none; 
	color : #f00; 
} 
A.buttomlink:visited { 
	text-decoration : none; 
	color : #f00; 
} 
A.buttomlink:active { 
	text-decoration : none; 
	color : #c90; 
} 
A.buttomlink:hover { 
	text-decoration : none; 
	color : #fc6; 
} 
#left { 
	position : absolute; 
	top : 200px; 
	left : 0; 
	margin : 0; 
	padding : 10px; 
	border : 0;  
	width : 100px; 
	voice-family : "\"}\""; 
	voice-family : inherit; 
	width : 200px; 
	visibility : inherit;  
} 
#center {
	position : absolute;
	margin : 0;
	left: 250px;
	padding : 20px;
	border : 0;
	width : 500px;
	voice-family : "\"}\"";
	voice-family : inherit;
	width : 500px;
	top : 190px;
	height : 700px;
} 
#navtop { 
	position : absolute; 
	left : 0; 
	margin : 0; 
	padding : 10px; 
	border : 0; 
	width : 100px; 
	voice-family : "\"}\""; 
	voice-family : inherit; 
	width : 200px; 
	background : url(images/navtop.png); 
	background-repeat : no-repeat; 
	top : 170px; 
} 
html > body #left { 
	width : 200px; 
} 
#right {
	position : absolute;
	top : 190px;
	right : 10px;
	margin : 0;
	padding : 0px;
	border : 0;
	background : #666;
	width : 200px;
	voice-family : "\"}\"";
	voice-family : inherit;
	width : 200px;
} 
html > body #right { 
	width : 200px; 
	margin : 0; 
}
table {
	height: 900px;
	}
</style>

</head>
<body>
<h2 class="center">- Lazysoldiers.info -</h2>

<div id="logo">&nbsp;</div>

<div id="right">

<!-- Begin ShoutMix - http://www.shoutmix.com -->
<iframe title="tanaxis" src="http://www4.shoutmix.com/?tanaxis" width="200" height="800" frameborder="0" scrolling="auto">
<a href="http://www4.shoutmix.com/?tanaxis">View shoutbox</a>
</iframe>
<!-- End ShoutMix -->
</div>









<div id="left">

<?php
include 'pages/navbar2.html';
?>

</div>



<div id="center">
<table width="100%" border="0">
  <tr>
    <td align="left" valign="top">
    


<?php
if(isset($_GET['page'])) {
    switch(strtolower($_GET['page'])){
        case "home": include "pages/home.php"; break;
        case "members": include "pages/members.php"; break;
		case "claninfo": include "pages/claninfo.php"; break;
		case "servers": include "pages/servers.php"; break;
		case "more": include "pages/more.php"; break;
		case "contact": include "pages/contact.php"; break;
    	default: include "pages/error.php" ; break;
		}
        }  
        else {
            include "pages/home.php";
            }
?>
</td>
  </tr>
  <tr>
  
    <td height="20">
    <div style="text-align: center">
<p>
<a class="buttomlink" href="#">Home</a>
 • 
 <a class="buttomlink" href="#">Forum</a> 
 • 
 <a class="buttomlink" href="#">The Team</a> 
 • 
 <a class="buttomlink" href="#">Servers</a> 
 • 
 <a class="buttomlink" href="#">Contact</a>
 </p>
<p class="center" style="font-size: 0.7em;">lazysoldiers.info© 2009-2010, designed and coded by <a class="buttomlink" href="mailto:tanaxis@lazysoldiers.info"> Tanaxis</a></p>
</div>
</td>
  </tr>
</table>

</div>

</body>
</html>
 
Ik was iets te snel met het wissen van overbodige tekst:
PHP:
<script type="text/javascript" src="sdmenu/sdmenu.js" />
mag je vervangen door
PHP:
<script type="text/javascript" src="sdmenu/sdmenu.js"></script>
 
Ik was iets te snel met het wissen van overbodige tekst:
PHP:
<script type="text/javascript" src="sdmenu/sdmenu.js" />
mag je vervangen door
PHP:
<script type="text/javascript" src="sdmenu/sdmenu.js"></script>

No problemo want nu werkt het tenminste!!!
Zit er hier een rang systeem voor mensen punten te geven op hun hulp? want je zou er een heleboel krijgen van me!! :)

merci e ;)

ng 1 vraagje(nu dak toch bezig ben :o) is er een manier om het woord van de pagina een hoofdletter te geven, zonder de namen van de paginas te veranderen...

grtz Tanaxis
 
Laatst bewerkt:
Ja, als je de namen in de $paginas array een hoofdletter geeft en de strtolower() weghaalt is dat geen probleem.
 
Ja, als je de namen in de $paginas array een hoofdletter geeft en de strtolower() weghaalt is dat geen probleem.

achter die strtolower() weg te doen werkt de script nog, maar als ik de namen in $paginas array een hoofdletter geef werkt het niet meer :s

grtz Tanaxis
 
Heb je de links in het menu ook aangepast? Ik gebruikte strtolower om de ingevoerde waarde altijd om te zetten naar kleine letters. Als je dat weghaalt wordt er dus gekeken of $_GET["page"] precies hetzelfde is als een woord in de array. Stel dat in de array een waarde "Rules" staat, dan werkt dit:

?page=Rules

maar dit niet:

?page=rules

Als je wel kleine letters in de link wilt gebruiken, maar alléén in de titel het woord van een hoofdletter wilt voorzien zou je van
PHP:
echo "<title>Lazysoldiers - ".$_GET["page"]."</title>\n";
dit kunnen maken:
PHP:
echo "<title>Lazysoldiers - ".ucfirst($_GET["page"])."</title>\n";
 
Heb je de links in het menu ook aangepast? Ik gebruikte strtolower om de ingevoerde waarde altijd om te zetten naar kleine letters. Als je dat weghaalt wordt er dus gekeken of $_GET["page"] precies hetzelfde is als een woord in de array. Stel dat in de array een waarde "Rules" staat, dan werkt dit:

?page=Rules

maar dit niet:

?page=rules

Als je wel kleine letters in de link wilt gebruiken, maar alléén in de titel het woord van een hoofdletter wilt voorzien zou je van
PHP:
echo "<title>Lazysoldiers - ".$_GET["page"]."</title>\n";
dit kunnen maken:
PHP:
echo "<title>Lazysoldiers - ".ucfirst($_GET["page"])."</title>\n";




misschien domem vraag maar hoe heb jij php geleert? via tutorials of het bekyken van andere scripts? want kheb nu al veel bij geleert door dit :)
tyvm

grtz Tanaxis
 
Een jaar of 7 terug had ik een website die bestond uit losse .htm bestanden. Door toenemende interesse voor de site heb ik toen een makkelijkere domeinnaam aangevraagd en bij het hosting pakket zat php en mysql ondersteuning.

Toen ben ik voor het eerst gaan kijken hoe ik op een makkelijke manier mijn site kon gaan beheren. Stap voor stap heb ik met gerichte google opdrachten en de php manual de basiskennis aangeleerd. Hoewel het domein nog steeds op mijn naam staat, is de site al een aantal jaren niet meer in de lucht. Maar de kennis die ik destijds heb opgedaan gebruik ik nog steeds.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan