Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di LuckySevenRoX
    Registrato dal
    Sep 2011
    residenza
    Foligno
    Messaggi
    361

    include che mi rovina l'impaginazione

    salve a tutti.. ho realizzato una classe php per la traduzione multilingua di un sito web.. di logica, inserisco il tag php con l'include del file di classe nell'head del documento.. il problema è che, pur contenendo solo la dichiarazione della classe, il file incluso mi crea una riga bianca all'interno della pagina (strutturata con div e css)..

    c'è un modo per evitare tutto questo?
    la mia soluzione è stata quella di fare l'include nel body, in un div nascosto.. solo che per cambiare il titolo alla pagina devo creare una funzione apposita mentre speravo di cavarmela diversamente.. idee su come evitare quella fastidiosa riga bianca? thanks!

  2. #2
    Ciao,

    Mi sembra uno strano comportamento,
    però se sei siciro che sia dovuto all'include della classe (ripeto che però forse il prob è altrove)
    puoi usare la funzione __autoload( ), così non devi fare l'include della classe per poterla usare

    http://php.net/manual/en/language.oop5.autoload.php

    PH

  3. #3
    Utente di HTML.it L'avatar di LuckySevenRoX
    Registrato dal
    Sep 2011
    residenza
    Foligno
    Messaggi
    361
    sono sicuro perchè ho fatto diverse prove, e se metto nell'head un qualunque codice php senza include va tutto bene.. quando invece faccio l'include esce quella riga.. comunque ora guardo il link che mi hai dato, grazie

  4. #4
    Utente di HTML.it L'avatar di LuckySevenRoX
    Registrato dal
    Sep 2011
    residenza
    Foligno
    Messaggi
    361
    niente da fare, ho ancora lo stesso problema.. tra l'altro ho notato che con internet explorer se metto l'include (non so perchè) non mi centra i div.. mentre se lo tolgo si! è assurdo!! perchè sto include adesso rompe tanto?

  5. #5
    Se con IE ha un comportamnto diverso allora non può essere un problema relativo a PHP...

    Nel file di include o in quello dove metti l'include hai del codice javascript o degli style css?
    Il problema molto prob sta lì.....

  6. #6
    Utente di HTML.it L'avatar di LuckySevenRoX
    Registrato dal
    Sep 2011
    residenza
    Foligno
    Messaggi
    361
    niente di niente.. il file php ha solo una classe all'interno.. tra l'altro ho anche eliminato gli invii di troppo che c'erano tanto per stare sicuro che non fosse colpa loro..

    però ho trovato una soluzione per quanto riguarda i div.. prima facevo
    codice:
    <div>
       <?php include 'pagina.php'; ?>
    </div>
    e mi lasciava quell'odioso spazio vuoto anche lì.. poi mettendo i div direttamente dentro la pagina.php e rifacendo l'include il problema era sistemato (per l'include sull'head però non ho risolto)..

    se inserisco un qualunque tag php non succede niente.. è solo l'include che rompe le scatole

    tra l'altro, con margin:auto; centro la pagina, ma se faccio l'include fuori dal body su explorer mi affianca tutto a sinistra (su firefox/chrome è ok)..

    le prove che ho fatto:
    inclusione di file php con una classe
    inclusione di file php con una classe vuota
    inclusione di file html con dei semplici tag head
    inclusione di file php con classe e codice html per l'head

    .. non so più dove sbattere la testa..

  7. #7
    se vuoi, posta un po' il codice dell'head va....
    e abche quello dell'include va...

    (cmq questa è una questione che non riguarda direttamente PHP)

  8. #8
    Utente di HTML.it L'avatar di LuckySevenRoX
    Registrato dal
    Sep 2011
    residenza
    Foligno
    Messaggi
    361
    si infatti ho creato un post simile nella sezione css.. qui speravo di trovare un modo per "nascondere" l'include.. ciò che non mi spiego è come, pur mettendolo tra i tag <head>, fa a modificare la visualizzazione della pagina "inserendo" una specie di paragrafo vuoto (chiamatelo come vi pare)

    il file php è inutile che lo posto, ho provato con una semplice classe vuota
    codice:
    <?php
    class Prova {
    }
    ?>
    mentre la struttura della pagina è questa

    codice:
    <?php
        		include('src/config/prova.php');
    ?>
    <!DOCTYPE html>
    <html lang="it" xmlns="http://www.w3.org/1999/xhtml">
    
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    
    <title>Bla bla bla</title>
    <link rel="stylesheet" type="text/css" href="style/base.css" />
    <script type="text/javascript" src="lib/jquery/jquery-1.7.js"></script>
    
    </head>
     
    <body>
    
        <div id="header">
    	
    
        </div>
        
        <div id="content">
        
            <div id="left">
    
            </div>
        
            <div id="center">
    
            </div>
        
            <div id="right">
    
            </div>
        </div>
        
        <div id="footer">
    		
        </div>
    
    </body>
    </html>
    i css "importanti"

    codice:
    body
    {
        margin:0px;
        font-family: Arial, verdana;
        font-size: 11px;
        background-image: url('img_style/rs_bar.png');
        background-repeat: repeat-x;
        padding:0px;
    
    }
    
    #content 
    {
    
        clear:both;
        width:1000px;
    	
        margin:auto;
        
    }
    (da notare il margin:auto; che su explorer funziona se non viene incluso il file php, mentre viene allineato tutto a sinistra una volta presente il tag (in qualsiasi posizione fuori dal body)



    EDIT: informazione importante.. facendo vari tentativi ho capito che il problema nasce se ci sono due o più include, anche su file diversi.. esempio

    include('ciao.php'); >>>> funziona senza problemi, ma se ciao.php contiene altri include si crea lo spazio

    include('a.php');
    include('b.php'); >>>> si crea lo spazio se accodo gli include così

  9. #9
    Niente mi spiace non ti so aiutare,
    dipende da una configurazione troppo particolare che senza avere sotto mano il codice non sono in grado neppure di immagunare cosa possa essere che non va...
    inoltre il tuo edit mi ha confuso ancora di più le idee

    ultimo suggerimento che posso darti è di provare a mettere il tuo include della classe non in testa al file ma nella riga subito prima di utilizzare poi la classe....

    per il resto mi arrendo

    Ciao
    PH

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.