• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
دلیل فاصله افتادن محتوا از بالا بعد از وارد کردن یک فایل html در php چی میتونه باشه؟
#1
سلام،

دوستان می تونید راهنمایی کنید چرا بعد از وارد کردن یک فایل .html در بین کدهای php حالا به هر طریقی (کلاس پوسته یا اینکلود) محتوای اون فایل اضافه شده از بالا فاصله میافته؟

البته اگر اون فایل رو که میخوایم اضافه کنیم در قبل از تگ آغازین <?php قرار بدیم این مشکل حل خواهد شد اما این کارو نمی تونم انجام بدم چون من از کلاس پوسته ساده ای که خودم نوشتم و البته در زیر هم براتون قرار میدم استفاده می کنم. شاید دوستی پیدا بشه و بگه خب می تونی دو تا تگ آغازین <?php داشته باشی. بدین معنی که اون رو اول اینکلود کنی اما اون دوست خوبم بدونه که باز مشکل حل نمیشه.
براتون یک عکس هم گرفتم از صفحه که قسمتی که زرد رنگه ایراد داره.

کلاس پوسته من:
کد پی‌اچ‌پی:
<?php

class TempClass {
    
    public 
$tpl_ext '.tpl';
    public 
$dir_path 'skins/default/templates/';
    public 
$full_path;
    
    public function 
TempFile$file_name ) {
        
        
$this->full_path $this->dir_path $file_name $this->tpl_ext;
                
        
$select file_get_contents$this->full_path );
        
        echo( 
$select );
    }
}

$newTemp = new TempClass();

?>

[عکس: download.php?img=502324]


خیلی خیلی ممنونم از همه Heart
غایب
  پاسخ
تشکر شده توسط :
#2
بسم الله الرحمن الرحیم
سلام
کدهای html/css ات رو چک کن / فکر نکنم php خودش به تنهایی خروجی داشته باشه و این مورد هم که می گید نباید به php ربطی داشته باشه
  پاسخ
تشکر شده توسط :
#3
این محتوای اون فایل html هست:

کد:
<div id="topmenu"><img src="skins/default/images/great_logo.png" width="105" height="106" style="padding-right: 10px" title="پرشین لایریکس"/>
<div id="links"><div class="menu"><a href="suggest.html" target="_self">پیشنهاد یک شعر</a></div><div class="menu"><a href="register.php" target="_self">عضو شوید</a></div><div class="menu"><a href="login.php" target="_self">وارد حساب خود شوید</a></div></div></div>

بنظر من مشکلی از css و html نیست چون گفتم که ، خارج <?php درست کار می کنه!

این هم کد php که اون فایل html رو بوسیله کلاس پوسته داخلش قرار دادم:
کد پی‌اچ‌پی:
<?php

require_once( 'connector/mysql.php' );
require_once( 
'classes/template/temp_class.php' );

$newTemp->TempFile'topmenu' );

$conn->to_mysql();

if( isset( 
$_GET['id'] ) ){
    
$query mysql_query"SELECT * FROM content WHERE id = '".$_GET['id']."'" );
    echo( 
"<div id=\"content\">" );
    while( 
$show2 mysql_fetch_array$query ) ) {
        echo( 
$show2['lyrics'] );
    }
    echo( 
"</div>" );
}
else{
$data mysql_query"SELECT song, id, artist FROM content" );
echo( 
"<div id=\"content\">" );
while( 
$show mysql_fetch_array$data ) ) {
    echo( 
$show['artist'] . " - <a href=\"index.php?id={$show['id']}\" target=\"_blank\">" $show['song'] . "</a><br/>" );
}
echo( 
"</div>" );
}

?>

حق با شماست حسین جان. مشکل از css و html هست. الان دوباره از اول اون دو رو نوشتم مشکل چپ و راست فاصله دار بودنش برطرف شد. فاصله بالا هم درست می کنم... خواستم این تاپیک رو منتقل کنم به انجمن css اما دیدم بهتره اینجا باشه. چون حالا سوالم اینه که چرا وقتی خارج <?php قرار میگیره مشکلی نداره اما وقتی داخل اون میشه اون فاصله ها میافته؟
آپدیت: مشکل فاصله از بالا رو هم بر طرف کردم. اما همچنان پاسخ سوالم رو نمیدونم!
غایب
  پاسخ
تشکر شده توسط :
#4
(۱۳۸۹ اسفند ۲۷, ۱۲:۰۸ ب.ظ)cyletech نوشته: آپدیت: مشکل فاصله از بالا رو هم بر طرف کردم. اما همچنان پاسخ سوالم رو نمیدونم!
نوع encoding چی هست . ببینید وقتی با نوتپد ++ فایل رو باز می کنید کاراکتر اضافه قبل از <?php وجود نداره. در این صورت کاراکتر های اضافه رو پاک کنید و encoding رو utf-8 without bom بگذارید




  پاسخ
تشکر شده توسط : cyletech


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان