Allora:
file template.php :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN"
http://www.w3.org/TR/html4/strict.dtd>
<html lang="it">
<head>
<title><?php print $TEMPLATE['nome_pag']; ?></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
<meta http-equiv="content-script-type" content="text/javascript">
<meta http-equiv="content-style-type" content="text/css">
<link rel="stylesheet" type="text/css" href="layout2.css">
<link rel="stylesheet" type="text/css" href="page.css">
<script language=JavaScript src="mostraMenu.js"></script>
</head>
<body>
...
...
<div id="container">
<div id="header"><h1>NOME SITO</h1></div>
<div id="navigation">....</div>
<div id="extra">....</div>
<div id="content"> <?php print $TEMPLATE['contenuto']; ?> </div>
<div id="footer">....</div>
</div>
E questo vale per tutte le pagine del mio sito (in modo da alleggerirle, e, in caso di modifica o aggiunta di codice, lo devo fare solo qua e non in tutte). La parte evidenziata in rosso sarà quella variabile.
Le altre pagine, esempio index.php , saranno così:
Codice PHP:
<?php
$TEMPLATE['nome_pag'] = 'Home';
$contenuto = "[COLOR=red]...[/COLOR] "; // <-- al posto dei puntini devo inserire codice php
$TEMPLATE['contenuto'] = $contenuto;
include ('template.php');
?>
Il problema, ripeto, è nella variabile $contenuto che devo definire in ciascuna pagina: se, nel contenuto della index.php ho questo codice (l'ho tagliato)...
Codice PHP:
<?php
// verifico se è il primo accesso
if(!isset($_POST['utente']) && !isset($_SESSION['utente'])) {
// è il primo accesso
$sessione->creaForm();
}
elseif(isset($_POST['utente']) && !isset($_SESSION['utente'])) {
// è il secondo accesso
// validazione dei parametri tramite filtro per le stringhe
$user=strtolower(trim(filter_var($_POST['utente'], FILTER_SANITIZE_STRING)));
// memorizzo username inserito nel form
$pwd=trim(filter_var($_POST['password'], FILTER_SANITIZE_STRING));
// memorizzo password inserita nel form
require_once("\class\MysqlConnection.php");
// Connessione e selezione del database
$data = new MysqlConnection();
$data->connetti();
[...ecc ecc....]
...come faccio a metterlo al posto dei puntini?? Dovrei mettere la barra \ davanti ad ogni virgoletta " sennò la stringa s'interrompe, ma è un'operazione lunga e soprattutto compromette la leggibilità.
Vorrei sapere se c'è un altro modo..insomma, presumo che tutti quelli che creano siti si siano trovati di fronte a una situazione del genere, quindi non mi sembra sia un problema difficile da capire o da risolvere. Magari anche cambiando approccio..non so..
Vi prego, aiutatemi che sto andando fuori di senno...è da giorni che ci sbatto la testa senza uscirne!