Variabelen bestaan zogezegd niet
Ik krijg onderstaand lijstje errors, en die slaan op niets:
Quote:
Notice: Undefined variable: sTitleOTPage in C:\xampp\htdocs\dikowork\templates\beginning.tpl.php on line 6
Notice: Undefined variable: sStylesheet in C:\xampp\htdocs\dikowork\templates\beginning.tpl.php on line 7
Notice: Undefined variable: sExtraHeads in C:\xampp\htdocs\dikowork\templates\beginning.tpl.php on line 15
Notice: Undefined variable: sStylesheet in C:\xampp\htdocs\dikowork\templates\beginning.tpl.php on line 7
Notice: Undefined variable: sExtraHeads in C:\xampp\htdocs\dikowork\templates\beginning.tpl.php on line 15
Ze slaan op niets, vanwege deze code:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
session_start();
// Require the general configuration
require_once('../config/general.conf.php');
// Create beginning of the html file
$sTitleOTPage = "Administratie";
$sStylesheet = $baseurl."/styles/administratie";
include($baseurl."/scripts/admin/menus.inc.php");
include($baseurl."/templates/beginning.tpl.php");
?>
session_start();
// Require the general configuration
require_once('../config/general.conf.php');
// Create beginning of the html file
$sTitleOTPage = "Administratie";
$sStylesheet = $baseurl."/styles/administratie";
include($baseurl."/scripts/admin/menus.inc.php");
include($baseurl."/templates/beginning.tpl.php");
?>
De variabele $baseurl is gegenereerd in de general.conf.php; de $sExtraHeads is in de scripts/admin/menus.inc.php gezet.
Waarom werkt dit niet?
Ik hoor het graag, als er nog gegevens nodig zijn.
Alvast bedankt voor de hulp!
Groeten, Jordy.
Gewijzigd op 18/08/2017 21:36:52 door - Ariën -
En waar is de code waar het om draait? Dus het bestand dat genoemd wordt in de foutmelding? Op deze manier kan er nog niks zinnigs over gezegd worden.
Zo ja: dit is hem:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
echo "<!DOCTYPE html>\n
<html>\n
<head>\n
<meta charset=\"utf-8\" />\n
<title>".$sTitleOTPage." - Diko-work VZW Klantensysteem</title>\n
<link rel=\"stylesheet\" href=\"".$sStylesheet.".css\" />\n
<link rel=\"stylesheet\" href=\"http://code.jquery.com/ui/1.12.1/themes/ui-lightness/jquery-ui.css\" />\n
<!-- <script src=\"http://code.jquery.com/jquery-1.12.4.min.js\"
integrity=\"sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=\"
crossorigin=\"anonymous\"></script> -->
<script src=\"http://code.jquery.com/jquery-3.2.1.min.js\"></script>
<script src=\"http://code.jquery.com/ui/1.12.1/jquery-ui.min.js\"></script>\n".
$sExtraHeads."\n
</head>\n
<body>\n
<div id=\"container\">\n
<div id=\"header\">\n
<a href=\"https://www.dikowork.be\"><img src=\"https://www.dikowork.be/tevreden/uploads/2017/03/favicon.gif\" alt=\"Diko-work VZW\"></a>\n
</div>\n
<div id=\"main\">\n";
?>
echo "<!DOCTYPE html>\n
<html>\n
<head>\n
<meta charset=\"utf-8\" />\n
<title>".$sTitleOTPage." - Diko-work VZW Klantensysteem</title>\n
<link rel=\"stylesheet\" href=\"".$sStylesheet.".css\" />\n
<link rel=\"stylesheet\" href=\"http://code.jquery.com/ui/1.12.1/themes/ui-lightness/jquery-ui.css\" />\n
<!-- <script src=\"http://code.jquery.com/jquery-1.12.4.min.js\"
integrity=\"sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=\"
crossorigin=\"anonymous\"></script> -->
<script src=\"http://code.jquery.com/jquery-3.2.1.min.js\"></script>
<script src=\"http://code.jquery.com/ui/1.12.1/jquery-ui.min.js\"></script>\n".
$sExtraHeads."\n
</head>\n
<body>\n
<div id=\"container\">\n
<div id=\"header\">\n
<a href=\"https://www.dikowork.be\"><img src=\"https://www.dikowork.be/tevreden/uploads/2017/03/favicon.gif\" alt=\"Diko-work VZW\"></a>\n
</div>\n
<div id=\"main\">\n";
?>
Hopelijk helpt dat.
Waarom die gigantische lap echo? Dat is toch helemaal nergens voor nodig? Zo snel zie ik verder niet wat de oorzaak van je probleem is, tenzij je code die je hiervoor postte niet geheel natuurgetrouw is en de includes bijvoorbeeld in een functie gedaan worden.
en jawel, dat is de code zoals het echt moet zijn.
En wat doe je in die general.conf.php? Include je daar niet per ongeluk al je template?
Rob, nee, daar staat alleen de baseurl voorlopig.
Zet al je relevante code hier eens neer. Volgens mij zien missen we nog iets....
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title><?php echo $sTitleOTPage; ?> - Diko-work VZW Klantensysteem</title>
<link rel="stylesheet" href="<?php echo $sStylesheet; ?>.css" />
<link rel="stylesheet" href="http://code.jquery.com/ui/1.12.1/themes/ui-lightness/jquery-ui.css" />
<!-- <script src="http://code.jquery.com/jquery-1.12.4.min.js"
integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ="
crossorigin="anonymous"></script> -->
<script src="http://code.jquery.com/jquery-3.2.1.min.js"></script>
<script src="http://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script>
<?php echo $sExtraHeads ?>
</head>
<body>
<div id="container">
<div id="header">
<a href="https://www.dikowork.be"><img src="https://www.dikowork.be/tevreden/uploads/2017/03/favicon.gif" alt="Diko-work VZW"></a>
</div>
<div id="main">
<html>
<head>
<meta charset="utf-8" />
<title><?php echo $sTitleOTPage; ?> - Diko-work VZW Klantensysteem</title>
<link rel="stylesheet" href="<?php echo $sStylesheet; ?>.css" />
<link rel="stylesheet" href="http://code.jquery.com/ui/1.12.1/themes/ui-lightness/jquery-ui.css" />
<!-- <script src="http://code.jquery.com/jquery-1.12.4.min.js"
integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ="
crossorigin="anonymous"></script> -->
<script src="http://code.jquery.com/jquery-3.2.1.min.js"></script>
<script src="http://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script>
<?php echo $sExtraHeads ?>
</head>
<body>
<div id="container">
<div id="header">
<a href="https://www.dikowork.be"><img src="https://www.dikowork.be/tevreden/uploads/2017/03/favicon.gif" alt="Diko-work VZW"></a>
</div>
<div id="main">
Ariën: ik zou niet weten wat nog nodig is... alle bestanden die nodig zijn staan hier...
Dus ik heb een groot vermoeden dat je dus de template zelf opvraagt in plaats van de overkoepelende code die alles ophaalt.
Gewijzigd op 18/08/2017 21:39:39 door - Ariën -
De code die alles oproept is een index.
en die index.php worden eerst en aantal variabelen gezet en dan ook een extra bestand met gewoon nog één variabele geïncludeerd. (zie voor heel het script waar ik over spreek gewwon het oorspronkelijkbe bricht)
Alleen de general.conf.php en de menu.inc.php zijn niet toegevoegd. als je die erbij wil: dit zijn ze:
menu.inc.php:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
$sExtraHeads = "<script>
$(document).ready(function(){
$(\".menu-klanten\").click(function() {
$(\".submenuklanten\").toggle();
});
$(\".menu-finance\").click(function() {
$(\".submenufinance\").toggle();
});
$(\".menu-tech\").click(function() {
$(\".submenutech\").toggle();
});
});
</script>";
?>
$sExtraHeads = "<script>
$(document).ready(function(){
$(\".menu-klanten\").click(function() {
$(\".submenuklanten\").toggle();
});
$(\".menu-finance\").click(function() {
$(\".submenufinance\").toggle();
});
$(\".menu-tech\").click(function() {
$(\".submenutech\").toggle();
});
});
</script>";
?>
general.conf.php:
Als er nog code ontbreekt nu, stuur ik die nog even.
Met die $baseurl probeer je nu (oa) http://localhost/dikowork/templates/beginning.tpl.php te includen. Omdat je dit echter via een URL doet wordt het bestand/script eerst uitgevoerd door je server. Het resultaat van dit script is de foutmelding die je als eerste toonde (de direct aanroep waar - Ariën - het al over had). En ook weer direct als resultaat van je script zichtbaar wordt.
Je moet als $baseurl een lokaal pad instellen.
Gewijzigd op 18/08/2017 22:23:15 door Rob Doemaarwat
Rob, dat had ik nog niet eens gezien haha. Dat is het probleem inderdaad. Wat me direct op het punt brengt: waarom staat allow_url_include eigenlijk aan?
Doorgaans gebruik je nooit een URL in een include.
ik voeg nog een basepath toe en verander alle includes daarin...
allow_url_include staat aan omdat ik ervan uit ging dat dit nodig was om de scripts te includen via die url, maar blijkbaar is dat geen goed idee...
Ik probeer het uit en voeg wel toe of het gewerkt heeft of niet. Waarschijnlijk en hopelijk wel!
Toevoeging op 19/08/2017 10:43:59:
Het werkt nu volledig!
Toevoeging op 19/08/2017 10:44:22:
Hartelijk dank voor de hulp en de inspanningen!