درخواست کمک

aliyaghobi

کاربر عضو
از یه اسکریپت کوتاه کننده لینک استفاده میکنم,لینک ها رو هم کوتاه میکنه ولی وقتی رو لینک ها کلیک میکنم صفخه ی باز میشه و این ارور رو میده

Warning: Cannot modify header information - headers already sent by (output started at /home/plinkir/public_html/includes/config.php:10) in /home/plinkir/public_html/goto.php on line 30

تا اونجای که متوجه شدم میگه خط 30 فایل goto.php مشکل داره !!!

فایل goto.php :


کد:
<?php

include 'includes/config.php';
include 'includes/UrlShortener.php';

$short = new UrlShortener();

$url = $short->getUrl($_GET['url']);
if(empty($url))
{
    echo '<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link href="css/site.css" rel="stylesheet">
</head>
<body>
  <center>
     <a href="http://plink.ir/">
      <img src="img/plink.png" title="سرویس کوتاه کننده لینک ایرانی">
     </a><br/>
      <h1>404 Error</h1><p>صفحه مورد نظر یافت نشد!</p><br/>
      <a href="'.SITEURL.'">بازگشت به صفحه اصلی</a>
  </center>

</body>
</html>';
}else
{
    $short->addCount($url);
    header('Location:'.$url);
}

?>
مشکل کار از کجاست؟! راستی همزمان تو هاستم فایلی به نام error_log ظاهر میشه که کدهای زیر توشه


کد:
[15-Mar-2013 16:33:56] PHP Warning:  Cannot modify header information - headers already sent by (output started at /home/plinkir/public_html/includes/config.php:10) in /home/plinkir/public_html/goto.php on line 30
[15-Mar-2013 16:34:00] PHP Warning:  Cannot modify header information - headers already sent by (output started at /home/plinkir/public_html/includes/config.php:10) in /home/plinkir/public_html/goto.php on line 30
[15-Mar-2013 16:36:17] PHP Warning:  Cannot modify header information - headers already sent by (output started at /home/plinkir/public_html/includes/config.php:10) in /home/plinkir/public_html/goto.php on line 30
با سپاس

 

homayon574

کاربر عضو
فایل کانفیگ رو هم قرار بدید،

قبل از توابع header و یه سری توابع دیگه نباید هیچ کاراکتر خروجی قرار بگیره در غیر این صورت یه همچین خطاهایی پیش میآد می تونه از اینکدینگ اشتباه هم باشه ولی کانفیگ رو شما اول درج کنید

 

aliyaghobi

کاربر عضو
کد:
<?php

define('DB_HOST','localhost');
define('DB_NAME','url_shortener');
define('DB_USERNAME','user');
define('DB_PASSWORD','mypass');
define('SITEURL','http://plink.ir/');
date_default_timezone_set('Asia/Tehran');    
?>
اینکدینگ رو هم چک کردم رو utf-8 بود ولی ارور میده.

 

homayon574

کاربر عضو
از فایل کانفیگ


کد:
[COLOR=#000000][COLOR=#0000BB]?>[/COLOR][/COLOR]
رو بردارید در خط نهم ببینید درست میشه؟

 

homayon574

کاربر عضو
خطا شما متنش عوض شده


کد:
[B]Warning[/B]:  Cannot modify header information - headers already sent by (output started at /home/plinkir/public_html/goto.php:1) in [B]/home/plinkir/public_html/goto.php[/B] on line [B]30[/B]
کدها رو خودتون ویرایش کردید؟

توی فایل های صرفاً کدهای پی اچ پی اجرا می شن بهتر تگ آخر رو نبندید چون ممکنه اشتباهاً موجب ایجاد خروجی توی مرورگر بشه مشکلی که فکر میکردم شما باهاش مواجه هستید درسته که متن خطا شما و به خط 30 اسکریپت هدایت میکنه ولی این خطا به این دلیل ایجاد شده که تابع header نمیتونه به درستی کار خودشو اجرا کنه که یکی از دلایل اصلی و معمولش اینه که قبل از این دستور یک خروجی به مرورگر ارسال شده باشه

 
بالا