Pagina 5 di 5

Re: Alla ricerca delle funzioni perdute

Inviato: gio 21 feb 2008, 0:57
da samiel
Con IE nella sezione "progetti - usa" le foto si vedono tutte bene,
e cliccando sulle miniature si aprono correttamente le foto grandi.
Invece l'immagine della home e i loghi nello header non compaiono.
Eppure ho usato questa del tutto normale sintassi:
<img id="logoleft" src="pics/loghi/logo.gif" alt="Logo Franchetti" title="Logo Franchetti"/>
Non ne capisco il motivo... forse mi sto perdendo in un bicchier d'acqua...
Nota che se vai sopra col mouse, viene fuori la didascalia, per cui
una traccia dell'immagine in effetti c'è
(invece con IE 7 le immagini si vedono: è un bel mistero...).

Peraltro, almeno sul mio pc, con IE 6 ho anche altri problemi
di visualizzazione, confermati se eseguo la renderizzazione con
http://ipinfo.info/netrenderer/index.php
Il menu di sinistra è spostato troppo a destra, al punto che interferisce
con la sezione centrale sovrapponendosi parzialmente a essa,
e poi nel menu orizzontale il riquadro che racchiude le voci selezionate
(activelink) diventa più piccolo degli altri (forse IE ci aggiunge un bordo,
devo verificare). Ma questi sono problemi a cui, smanettando,
credo di poter rimediare da solo.

Con Firefox in Windows invece nessun problema.
È proprio una bella porcheria questo IE!

Mi basterebbe far sparire il menu destro nella home,
poi possiamo discutere dei tuoi onorari... :-)

M.

Re: Alla ricerca delle funzioni perdute

Inviato: gio 21 feb 2008, 7:19
da aschenaz
Per quanto riguarda l'editor, perché non usi Quanta+? E' lo strumento più indicato e vedrai che ti dà più di una mano...

Per le directory differenziate, se guardi bene, la soluzione è vicina (basta richiamare la chiave degli array). Oggi, comunque, ci ritorno.
Spero che la situazione in ufficio si sia risolta, così da poter provare con IE. Per prima cosa, prova a togliere il title dall'immagine e mettilo nel link (ma non credo dipenda da questo). Prova anche a impostare un line-height nel blocco (anche se serviva per risolvere il noto bug del testo sparito, non delle immagini).
Beh, devo mandarti una cassa di vini tipici?
O preferisci una fornitura vita natural durante di Baicoli?
Basta e avanza S4D! :D

Re: Alla ricerca delle funzioni perdute

Inviato: gio 21 feb 2008, 16:01
da aschenaz
Per quanto riguarda IE, fai questa piccola modifica nel css (ho tolto, nel blocco container il position:relative, che, almeno dalle mie esperienze, dà sempre problemi ed ho aggiunto il line-height, altrimenti IE ti fa sparire l'intestazione):

Codice: Seleziona tutto

div#container{background-color:white; color:#1E247C;line-height:1.4em} 
Per le directory differenziate, nella index ho, di fatto, solo spostato l'assegnazione del rightmenu in testa alla pagina ed ho aggiunto la variabile $folder corrispondente alla chiave dell'array (di default è la home); naturalmente, ora devi creare le varie sotto-directory e spostare i relativi file.
Ecco la nuova index:

Codice: Seleziona tutto

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Liceo Ginnasio Franchetti - Mestre (VE)</title>
<meta name="GENERATOR" content="Quanta Plus" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="description" content="Liceo Ginnasio Franchetti" />
<meta name="keywords" content="Liceo Ginnasio Franchetti" />
<link rel="stylesheet" type="text/css" href="stylesheets/layout.css" />
</head>
<body>
<div id="container">
<div id="header">
<img id="logoleft" src="pics/logo.gif" alt="Logo Franchetti" title="Logo Franchetti"/>
<img id="logoright" src="pics/logo.gif" alt="Logo Franchetti" title="Logo Franchetti"/>
<h3 class="header">Liceo Ginnasio Statale &#171;Raimondo Franchetti&#187;<br />
Corso del Popolo 82 - 30172 MESTRE VENEZIA<br />
Tel. 041 5315531 - Fax 041 5328524</h3>

<div id="navbarwrapper">
<div id="navbar">
<ul><?php
isset($_GET["pagina"]) ? $pagina=$_GET["pagina"] : $pagina="home";
$rightmenu=array("home"=>array("home","scuolanet","newsletter","circolari","biblioteca","studenti","sitiutili"),
	"chisiamo"=>array("storia","inizi","intitolazione","inaugurazione","autonomia","guerra","territorio","risposte","utenza","organigramma"),
	"pof"=>array("commissione","testopof","servizi","regolamento","statuto","applicativo","gite"),
	"progetti"=>array("ecdl","usa","australia")
);
$activemenu=0;
$folder="home";
foreach($rightmenu as $kmenu=>$vmenu) {
	if(in_array($pagina,$vmenu) | $pagina==$kmenu) {
		$activemenu=$rightmenu[$kmenu];
		$folder=$kmenu;
	}
}
$vocimenu=array("home","chisiamo","contatti","news","pof","progetti","agenda","segreteria");
foreach($vocimenu as $voce) {
echo "
<li>";
if($pagina!=$voce) echo '<a href="index.php?pagina='.$voce.'">';
echo $voce;
if($pagina!=$voce) echo "</a>";
echo "</li>";
}
echo "\n";
?>
</ul>
</div>
</div>
</div>

<?php include("$folder/$pagina.php") ?>

<div id="leftmenu">
<ul><?php
$vocimenu2=array("home","scuolanet","newsletter","circolari","biblioteca","studenti","sitiutili");
foreach($vocimenu2 as $voce2) {
echo "
<li>";
if($pagina!=$voce2) echo '<a href="index.php?pagina='.$voce2.'">';
echo $voce2;
if($pagina!=$voce2) echo "</a>";
echo "</li>";
}
echo "\n";
?>
</ul>
</div>

<div id="rightmenu">
<?php

if($activemenu) {
	echo "
<ul>";
	foreach($activemenu as $voce3) {
	echo "
<li>";
	if($pagina!=$voce3) echo '<a href="index.php?pagina='.$voce3.'">';
	echo $voce3;
	if($pagina!=$voce3) echo "</a>";
	echo "</li>";
	}
	echo "
</ul>\n";
} else echo "&nbsp;";
?>
</div>

<div id="footer">© Liceo Ginnasio Statale &#171;Raimondo Franchetti&#187; - 2008</div>
</div>
</body>
</html>
Ora dovrebbe andare bene. :)

Inoltre..., cose che farei io:
  • Non userei il layout proporzionale; se è gradevole per basse risoluzioni, prova a visualizzarlo con un monitor wide...;
  • Non userei (di conseguenza) il position:absolute, ma opterei per un uso abbondante del float (e relativi blocchi clear);
  • Alleggerirei il css; ad esempio, non c'è bisogno di definire gli id rigidi: se metti div#content e #content è la stessa cosa; anzi, nel secondo caso, puoi usarlo anche per gli altri blocchi.
Tutto questo, naturalmente IMHO e se hai tempo e voglia di modificare tutto. Altrimenti, lascia pure così...
Ciao,
nino

Re: Alla ricerca delle funzioni perdute

Inviato: gio 21 feb 2008, 22:08
da samiel
Ho fatto le modifiche al CSS che mi hai consigliato. Adesso il codice è questo:

Codice: Seleziona tutto

/*stili per il layout fluido*/
html{margin:0; padding:0}
html{background-color:#1E247C}
body{font-family:verdana,tahoma,arial,sans-serif; font-size:76%}
div#container{background-color:white; color:#1E247C; line-height:1.4em}

/*stili specifici per il layout*/
#leftmenu{float:left; width:140px;\width:150px;w\idth:140px; padding:40px 20px 0; font:0.85em/25px verdana,tahoma,arial,sans-serif}
#rightmenu{float:right; width:140px;\width:150px;w\idth:140px; padding:40px 20px 0}
#content{margin:0 200px; padding:50px 15px 40px; background-color:#F0F0F0; border-right:double #1E247C; border-left:double #1E247C}
Inoltre ho messo in un caso (forse mi servirà anche altrove) un foglio di stile in linea,
riposizionandolo dunque in maniera corretta. Infatti prima il validatore W3C
mi segnalava l'errore, adesso è felice pure lui perché tutto è a posto.

Mi pare che la resa su IE 6 sia buona. Devo solo abbassare un po' di più la scritta
dello header fra i due loghi, ma ci penso domani (adesso mi sa che vado a nanna...)
C'è solo quel dettaglio che nel menu orizzontale la voce selezionata (tipo activelink)
appare più stretta delle altre. Forse dipende dalla mortale combinazione in IE
di margin e padding. Domani penso anche a quello.

Ho modificato index.php per far sparire l'inutile menu di destra nella home,
e stupefacentemente funziona!!

Un ultima cosa (la vita è tutta un problem solving...): adesso non funziona più il menu
di sinistra, che non apre i file. Infatti, anche in questo menu dovrebbero essere previste
delle sezioni. Ad es., la voce "biblioteca" dovrebbe aprire la pagina biblioteca.php
(presente in /biblioteca), ma qui ci sarà un nuovo menu di sezione (biblioteca,
regolamento ecc). Domani vedo di capirci qualcosa, anche se per apportare
una correzione io (ammesso che ci riesca) ci metto un bel po'...

Fatto questo, manuale alla mano, mi studio per bene il tuo lavoro. Certo, se tu
potessi arricchire il tuo how-to analizzando anche la creazione di pagine più complesse,
sarebbe una cosa preziosa e davvero rara, rispetto alla genericità di molte trattazione
anche ampie presenti sulla carta stampata...

Grazie ancora
M.

PS
Ma i Baicoli li conosci?

Re: Alla ricerca delle funzioni perdute

Inviato: ven 22 feb 2008, 7:23
da aschenaz
Certo, se tu
potessi arricchire il tuo how-to analizzando anche la creazione di pagine più complesse,
sarebbe una cosa preziosa e davvero rara, rispetto alla genericità di molte trattazione
anche ampie presenti sulla carta stampata...
Appena finisco di lavorare per quel sito di cui parlavo (è un'importante associazione culturale e voglio che venga un bel lavoro), mi metto sotto col tutorial.

No, che sono i Baicoli? Google parla di dolcetti... :p

Re: Alla ricerca delle funzioni perdute

Inviato: ven 22 feb 2008, 9:49
da samiel
Per cominciare con le cose fondamentali, i Baicoli sono un tipico biscotto veneziano.
Si tratta di un biscotto secco, dal sapore delicato, ottimo per il caffelatte oppure
da mangiare con cremecaramel e simili. Ci hanno dedicato pure una poesia:
"No ghe a sto mondo, no, più bel biscoto,
più fin, più dolse, più lisiero
par mogiar nela cicara e nel goto
del Baicolo nostro venexian."
Quando ho conosciuto mia moglie (che è lucana anche se all'epoca viveva in Puglia)
le portai questi Baicoli, che sono piaciuti anche alla sua famiglia.
Come dire, l'ho presa per la gola!

Per l'how-to, ci contiamo molto.

Vedi poi se riesci a trovare un po' di tempo per quell'ultima cosa da sistemare
a proposito del menu sinistro. Stasera vedo se ci capisco qualcosa.

Infine: hai dei siti (a cominciare da quelli da te creati) da segnalarmi,
così mi studio un po' i codici?

Grazie mille
M.

Re: Alla ricerca delle funzioni perdute

Inviato: ven 22 feb 2008, 14:26
da aschenaz
Per il discorso del menu destro che in home non deve apparire, basta inserire if($pagina!="home") prima dell'assegnazione dell'$activemenu, senza toccare il resto; così:

Codice: Seleziona tutto

foreach($rightmenu as $kmenu=>$vmenu) {
	if(in_array($pagina,$vmenu) | $pagina==$kmenu) {
		if($pagina!="home") $activemenu=$rightmenu[$kmenu];
		$folder=$kmenu;
	}
}
Per le differenze con IE per i box del menu, pensavo l'avessi fatto apposta... :) Si, devi rinunciare al padding per avere una buona compatibilità con quel fo...to browser. Usa, magari, dei blocchi annidati col margin (anche se avrai sempre e comunque delle piccole differenze, a meno che non usi delle immagini per i pulsanti); ad esempio, così:

Codice: Seleziona tutto

<html>
<head>
<style>
<!--
div {width:70px;height:25px;background:#008;float:left;margin:10px;padding:0}
p {width:30px;height:15px;color:#fff;margin:5px 20px;text-align:center;padding:0;}
.clear {clear:both}
-->
</style>
</head>
<body>
<div>
	<p>voce</p>
</div>
<div>
	<p>voce</p>
</div>
<p class="clear"></p>
</body>
</html>
Come segnalazioni..., beh, se ti serve studiare il php è inutile che ti segnali i link (a meno che non intendi l'xhtml-css...).
Il sito che sto facendo, lo sto strutturando in forma di cms, proprio per poterlo riutilizzare. Ora sto lavorando ad un pannello di controllo nuovo di zecca, che dev'essere leggerissimo ed a prova di neonato. Appena finito, se vuoi, ti mando tutto il pacchetto.

Per quanto riguarda dolci & affini, dovresti provare i nostri dolci al bergamotto: quantomeno è un sapore unico al mondo! :D

Re: Alla ricerca delle funzioni perdute

Inviato: ven 22 feb 2008, 17:23
da samiel
Io lo avevo tolto rimuovendo il primo array...

Per quanto riguarda IE, sto sistemando alcune cose.
In effetti il (piccolo) problema del menu orizzontale
derivava dalla combinazione margin + padding.
Ho già modificato in locale. Ma in questo cose
più o meno me la cavo.

Come ti segnalavo, resta solo il problema
del menu di destra, che non apre i file
e che dovrebbe aprire le sezioni (come "Biblioteca")
e da lì i rispettivi sotto menu (se ci sono).

Dolci al bergamotto... in effetti non li conosco;
ma tu di che zona sei?

M.

Re: Alla ricerca delle funzioni perdute

Inviato: ven 22 feb 2008, 21:07
da aschenaz
samiel ha scritto:...resta solo il problema
del menu di destra, che non apre i file
e che dovrebbe aprire le sezioni (come "Biblioteca")
e da lì i rispettivi sotto menu (se ci sono).
Nella copia che ho replicato in locale funziona. Ma hai cambiato qualcosa nel codice?
Ma i sottomenu dovrebbero aprire altri sottomenu? Insomma, delle scatole cinesi... Non sei molto per le cose semplici, eh? :lol:
A parte gli scherzi, se le cose stanno così, comincio a pensare che sia meglio includere i sottomenu nelle pagine interne, altrimenti si rischia di ingarbugliarsi un po' con array di array di array...
ma tu di che zona sei?
Lo so che insegni filosofia, però un po' di greco (visto dove insegni)...!
Rhegion Megalê Hellas = Reggio Magna Grecia.

Re: Alla ricerca delle funzioni perdute

Inviato: ven 22 feb 2008, 21:35
da samiel
Io ho creato nelle altre dir, appunto come /biblioteca.
Lì creo biblioteca.php (che c'è già) e creerò regolamento.php.
Insomma, come il menu di destra apre una pagina "home"
di settore col suo sottomenu (è quello che già vedi), così,
esattamente così dovrebbe accadere col menu di sinistra.
Attualmente, se clicco su biblioteca mi esce:

Codice: Seleziona tutto

Warning: include(home/biblioteca.php) [function.include]: failed to open stream: No such file or directory in /home/samiel/public_html/prove/index.php on line 89
Warning: include() [function.include]: Failed opening 'home/biblioteca.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /home/samiel/public_html/prove/index.php on line 89
Questo è il codice attuale (ho solo postposto l'include
perché col CSS adottato altrimenti sconvolgeva la pagina):

Codice: Seleziona tutto

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Liceo Ginnasio Franchetti - Mestre (VE)</title>
<meta name="GENERATOR" content="Quanta Plus" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="description" content="Liceo Ginnasio Franchetti" />
<meta name="keywords" content="Liceo Ginnasio Franchetti" />
<link rel="stylesheet" type="text/css" href="stylesheets/layout.css" />
</head>
<body>
<div id="container">
<div id="header">
<img id="logoleft" src="pics/loghi/logo.gif" alt="Logo Franchetti" title="Logo Franchetti"/>
<img id="logoright" src="pics/loghi/logo.gif" alt="Logo Franchetti" title="Logo Franchetti"/>
<h3 class="header">Liceo Ginnasio Statale &#171;Raimondo Franchetti&#187;<br />
Corso del Popolo 82 - 30172 MESTRE VENEZIA<br />
Tel. 041 5315531 - Fax 041 5328524</h3>

<div id="navbarwrapper">
<div id="navbar">
<ul><?php
isset($_GET["pagina"]) ? $pagina=$_GET["pagina"] : $pagina="home";
$rightmenu=array("home"=>array("home","scuolanet","newsletter","circolari","biblioteca","studenti","sitiutili"),
   "chisiamo"=>array("storia","inizi","intitolazione","inaugurazione","autonomia","guerra","territorio","risposte","utenza","organigramma"),
   "pof"=>array("commissione","testopof","servizi","regolamento","statuto","applicativo","gite"),
   "progetti"=>array("ecdl","usa","australia")
);
$activemenu=0;
$folder="home";
foreach($rightmenu as $kmenu=>$vmenu) {
   if(in_array($pagina,$vmenu) | $pagina==$kmenu) {
      $activemenu=$rightmenu[$kmenu];
      $folder=$kmenu;
   }
}
$vocimenu=array("home","chisiamo","contatti","news","pof","progetti","agenda","segreteria");
foreach($vocimenu as $voce) {
echo "
<li>";
if($pagina!=$voce) echo '<a href="index.php?pagina='.$voce.'">';
echo $voce;
if($pagina!=$voce) echo "</a>";
echo "</li>";
}
echo "\n";
?>
</ul>
</div>
</div>
</div>

<div id="leftmenu">
<ul><?php
$vocimenu2=array("home","scuolanet","newsletter","circolari","biblioteca","studenti","sitiutili");
foreach($vocimenu2 as $voce2) {
echo "
<li>";
if($pagina!=$voce2) echo '<a href="index.php?pagina='.$voce2.'">';
echo $voce2;
if($pagina!=$voce2) echo "</a>";
echo "</li>";
}
echo "\n";
?>
</ul>
</div>

<div id="rightmenu">
<?php

if($activemenu) {
   echo "
<ul>";
   foreach($activemenu as $voce3) {
   echo "
<li>";
   if($pagina!=$voce3) echo '<a href="index.php?pagina='.$voce3.'">';
   echo $voce3;
   if($pagina!=$voce3) echo "</a>";
   echo "</li>";
   }
   echo "
</ul>\n";
} else echo "&nbsp;";
?>
</div>

<?php include("$folder/$pagina.php") ?>

<div id="footer">© Liceo Ginnasio Statale &#171;Raimondo Franchetti&#187; - 2008</div>
</div>
</body>
</html>
Che ne dici? Ho infilato qualche errore?
M.

PS
Ah già, sei più sudista di mia moglie, allora!

Re: Alla ricerca delle funzioni perdute

Inviato: ven 22 feb 2008, 22:19
da aschenaz
Il fatto è che l'array biblioteca non c'è. Ho tolto quello della home (che non vuoi che appaia) e l'ho sostituito con biblioteca (che, per ora, ha solo due voci: biblioteca e biblioteca_regolamento - aggiungine quante ne vuoi...). Per ogni sottomenu, devi aggiungere un rispettivo array in $rightmenu. Considera, però, che per mantenere la semplicità di questo sistema, non devi avere pagine con nome ripetuto: ad esempio, regolamento c'è già in pof; quindi, a quello della biblioteca dei dare un altro nome...

Codice: Seleziona tutto

$rightmenu=array("biblioteca"=>array("biblioteca","biblioteca_regolamento"),
       "chisiamo"=>array("storia","inizi","intitolazione","inaugurazione","autonomia","guerra","territorio","risposte","utenza","organigramma"),
       "pof"=>array("commissione","testopof","servizi","regolamento","statuto","applicativo","gite"),
       "progetti"=>array("ecdl","usa","australia")
    );

Re: Alla ricerca delle funzioni perdute

Inviato: sab 23 feb 2008, 17:29
da samiel
Caspita, è perfetto!

Ma una confezione gigante di Baicoli in omaggio
proprio non la vuoi? Guarda che non sto scherzando,
mi farebbe piacere poter contraccambiare
la tua cortesia...

M.

Re: Alla ricerca delle funzioni perdute

Inviato: sab 23 feb 2008, 17:59
da aschenaz
Grazie lo stesso. :D
Il fatto che il mio aiuto possa esserti utile è la migliore ricompensa.
E poi sono (o almeno dovrei esserlo) anche in dieta. :lol:

Ciao,
nino

Re: Alla ricerca delle funzioni perdute

Inviato: dom 24 feb 2008, 2:35
da samiel
Ahi, le diete... Io, che sono tappo, non riesco più a scendere
sotto i 70. Ma già la vita è dura, anche senza troppi sacrifici...

Beh, non mi sei stato utile, ma indispensabile. Innanzitutto
grazie a te e alla tua pazienza mi trovo un lavoro impostato
come si deve (adesso sto aggiungendo le varie pagine), ma
soprattutto ho un ottimo esempio su come muovermi. Sto
vedendo attentamente il codice, con "PHP5 subito e facile"
(che per i niubbi non è male) alla mano. La strada è ancora
largamente in salita, ma prima o poi comincerò a capirci
davvero qualcosa...

Ancora mille grazie
Mauro