مشکل با سرور

DaDaDooDoo

کاربر VIP
سلام ، سایت من روی لوکال هاست به درستی کار می کنه اما وقتی اون رو آپلود می کنم با دو تا مشکل مواجه می شم :

PHP:
	setcookie("vote_saved", "1", time()+120);
	if(isset($_COOKIE['vote_saved'])
	{
		echo "ok";
	}
	else
	{
		echo "Not Ok";
	}
	header("location:index.php");
	exit();

روی لوکال هاست cookie به درستی ست می شه و صفحه به index.php منتقل میشه ، اما روی سرور وقتی وارد این پیج می شم هیچ چیزی اکو نمی شه ، نه ok و نه not ok و پیج هم redirect نمی شه .
باید بگم که قبل از این کدها یکسری کد دیگه هم هسا که مقادیری رو وارد دیتابیس می کنه که به درستی هم کار می کنه اما از این خط به بعد ظاهراً کدها اجرا نمی شن و اروری هم نمی ده .البته صفحات سایت روی root نیست و داخل یک فولدر هست .
ممنون می شم راهنمایی کنید .
 

D.A.V.O.O.D

Member
سلام ، سایت من روی لوکال هاست به درستی کار می کنه اما وقتی اون رو آپلود می کنم با دو تا مشکل مواجه می شم :

PHP:
    setcookie("vote_saved", "1", time()+120);
    if(isset($_COOKIE['vote_saved'])
    {
        echo "ok";
    }
    else
    {
        echo "Not Ok";
    }
    header("location:index.php");
    exit();
روی لوکال هاست cookie به درستی ست می شه و صفحه به index.php منتقل میشه ، اما روی سرور وقتی وارد این پیج می شم هیچ چیزی اکو نمی شه ، نه ok و نه not ok و پیج هم redirect نمی شه .
باید بگم که قبل از این کدها یکسری کد دیگه هم هسا که مقادیری رو وارد دیتابیس می کنه که به درستی هم کار می کنه اما از این خط به بعد ظاهراً کدها اجرا نمی شن و اروری هم نمی ده .البته صفحات سایت روی root نیست و داخل یک فولدر هست .
ممنون می شم راهنمایی کنید .

سلام ،
اين كه هيچ پيغامي نميده ، خيلي عجيبه ! قسمت هاي ديگه كدتون را چك كنيد ، احتمالا يه جايي يه مشكلي هست ( مثلا از يه تابعي استفاده كرديد كه ورژن php سرور پشتيباني نمي كنه ) فايل error_log را چك كنيد حتما !
 

DaDaDooDoo

کاربر VIP
اين كه هيچ پيغامي نميده ، خيلي عجيبه ! قسمت هاي ديگه كدتون را چك كنيد
آره حق با شما بود من یه پرانتز کم گذاشته بودم ، اما الان not ok رو اکو می کنه ، و مشکل اینه که header هم کار نمی کنه و redirect نمی شه
 

D.A.V.O.O.D

Member
آره حق با شما بود من یه پرانتز کم گذاشته بودم ، اما الان not ok رو اکو می کنه ، و مشکل اینه که header هم کار نمی کنه و redirect نمی شه

خب حالا دو تا نكته هستش ، يكي اينكه cookie توي صفحه زماني كه ست ميشه ، وقتي صفحه رفرش ميشه قابل شناسايي هست ، براي همين not ok را چاپ ميكنه ،

واسه redirect هم ، نبايد قبل كد header ، هيچ خروجي داشته باشي ، در اين صورت header از كار مي افته . اينو تست كنيد‌:

PHP:
flush();
header( 'location: index.php' );
 

farik

Well-Known Member
باسلام..
با این کد شما باید یک اررور بگیرین ..چون بعد از چاپ دارین هدر رو میفرستین...اما اینکه میگین هیچی چاپ نمیکنه واقعا عجیبه...100% اشکال از تنظیمات پی اچ رو سروره..
موفق باشید..
 

DaDaDooDoo

کاربر VIP
PHP:
واسه redirect هم ، نبايد قبل كد header ، هيچ خروجي داشته باشي

منظورت شما از خروجی echo هست ؟ خوب من شرط و echo رو برداشتم ( اون فقط واسه تست بود ) ، اما باز هم redirect نمی شه ... flush هم گذاشتم .
 

D.A.V.O.O.D

Member
PHP:
واسه redirect هم ، نبايد قبل كد header ، هيچ خروجي داشته باشي
منظورت شما از خروجی echo هست ؟ خوب من شرط و echo رو برداشتم ( اون فقط واسه تست بود ) ، اما باز هم redirect نمی شه ... flush هم گذاشتم .

بله ، echo و حتي اگه يكي از قسمت هاي ديگه كدتون خطايي بده .
احيانا باز كردن صفحه كه ajax نيست ؟ چون اينكه انتقال نميده ، مشكل عجيبيه ! بين : و آدرس يكم فاصله بگذاريد شايد مشكل از اين باشه !
 

DaDaDooDoo

کاربر VIP
انجام دادم ، باز هم نشد ، ممکنه مشکل از سرور باشه ؟ چون توی لوکال هاست هیچ مشکلی نداره ، هم کوکی ست می شه و هم redirect می شه ...
 

D.A.V.O.O.D

Member
انجام دادم ، باز هم نشد ، ممکنه مشکل از سرور باشه ؟ چون توی لوکال هاست هیچ مشکلی نداره ، هم کوکی ست می شه و هم redirect می شه ...

شايد از سرور باشه ،
واسه تست يه كاري كنيد ،
يه فايل توي سرور آپلود كنيد كه محتوياتش اين باشه :

PHP:
<?PHP
header( 'location: http://www.google.com' );
?>

اجراش كنيد ببينيد منتقل ميشه ؟
 

DaDaDooDoo

کاربر VIP
منتقل شد . اما وقتی همین رو توی صفحه خودم تست کردم بازم منتقل نمی شه ... نمی دونم والا ... آخه کدهای قبلی یه مقداری رو با متد get می گیره و وارد دیتا بیس می کنه ، درست هم کار می کنه ، اروری نمی ده ، خروجی هم نداره نمی دونم چشه
PHP:
<?php include("includes/db_config.php"); ?>
<?php
	$vote = $_POST['polling'];
	$vote_ip = $_GET['ip'];
	$register_vote = mysql_query("INSERT INTO polling(vote,ip) VALUES('{$vote}','{$vote_ip}')",$connection);
	confirm_query($register_vote);
	setcookie("vote_saved", "1", time()+120);
  	header( 'location: http://www.google.com' );
  		
?>

اینم کل کدها صفحه ...
 

DaDaDooDoo

کاربر VIP
PHP:
<?php
	function confirm_query($recive_query)
	{
		if(!$recive_query)
		{
			die("Error : " .mysql_error());
		}
	}
?>

function.php درون db_config.php ، اینکلود شده ، که تابع confirm_query درون function.php هست .
 

D.A.V.O.O.D

Member
اين كد را تست كنيد :

PHP:
<?php 
include("includes/db_config.php");

$vote = $_POST['polling'];
$vote_ip = $_GET['ip'];
$register_vote = mysql_query("INSERT INTO polling(vote,ip) VALUES('{$vote}','{$vote_ip}')",$connection);
setcookie("vote_saved", "1", time()+120);
header( 'location: http://www.google.com' );
?>


خبرشو بهم بديد . ( در ضمن چك كنيد ببينيد آيا ركوردي در ديتابيس ذخيره ميشه ؟ )
 

D.A.V.O.O.D

Member
اگه اشتباه نكنم اينو داريد از يه فايل فلش post مي كنيد ، درسته ؟

اين كاري كه ميگمو بكنيد تا مشخص بشه مشكل از فلشه يا php !

PHP:
<?php 
include("includes/db_config.php");

$vote = $_GET['polling'];
$vote_ip = $_GET['ip'];
$register_vote = mysql_query("INSERT INTO polling(vote,ip) VALUES('{$vote}','{$vote_ip}')",$connection);
setcookie("vote_saved", "1", time()+120);
header( 'location: http://www.google.com' );
?>

اينو يه جا آپلود كنيد ( مثلا test.php ) بعد توي browser آدرس زير را باز كنيد :

کد:
test.php?polling=1&ip=127.0.0.1

اگه ديديد كار نكرد ، header را خط به خط بالاتر ببريد و تست كنيد ، هر جا كه كار كرد ، مشخص ميشه مشكل از كدهاي پايين تر هست .
 

farik

Well-Known Member
باسلام..
اصلا شما قبلش به db کانکت میشین؟..احتمالا در قسمت ارسال کوئری به دیتا بیس یک ارور باعث توقف برنامه میشه..errolog رو چک کردین؟..
 

DaDaDooDoo

کاربر VIP
اصلا شما قبلش به db کانکت میشین؟..احتمالا در قسمت ارسال کوئری به دیتا بیس یک ارور باعث توقف برنامه میشه.

آخه دیتا وارد دیتا بیس می شه به درستی ...

errolog رو چک کردین؟.

می شه بگی از کجا باید چک کنم ؟

هر جا كه كار كرد ، مشخص ميشه مشكل از كدهاي پايين تر هست .

include رو که حذف کردم درست شد ...
 
آخرین ویرایش:

farik

Well-Known Member
باسلام..
اگه include رو حذف کردین که دیگه mysql_query کار نمیکنه..یوزر و پس کانکت به دیتا بیس رو چک کنین..
 

جدیدترین ارسال ها

بالا