PDA

View Full Version : ارسال پارامتر بصورت اتوماتیک به یک صفحه دیگه



toopak
پنج شنبه 15 اسفند 1392, 15:42 عصر
سلام
من از یک سامانه پیامکی سه متغیر رو با متد get میگیرم
صفحه ای که باهاش اطلاعات رو میگیرم اول ذخیره میکنم و بعد میخوام اگر شرایط خاصی داشت دوباره اون مقادیر رو بفرستم به یک صفحه دیگه ولی هر کاری کردم نشده
دستور header استفاده کردم حتی iframe هم گذاشتم ولی فقط به همون صفحه اول میاد فقط مقادیر و ارسال دوباره نمیشه
میشه راهنمایی کنید از چه متدی استفاده کنم

MMSHFE
پنج شنبه 15 اسفند 1392, 21:42 عصر
از AJAX یا اگه با خود PHP میخواین یک اسکریپت PHP دیگه رو صدا بزنید و پارامتر بفرستین، یا از cURL استفاده کنید و یا با کمک دستور shell_exec کاری که میخواین رو انجام بدین. البته با includeکردن هم اگه به درستی انجام بشه، میشه کار رو انجام داد ولی پیاده سازی اون صفحه که اطلاعات رو براش میخواین بفرستین، باید کمی تغییر کنه.

ahmadflasher
پنج شنبه 15 اسفند 1392, 23:09 عصر
اینکارو کردی جواب نداد؟؟!!!


<?php
$a=$_GET['a'];
$b=$_GET['b'];
$c=$_GET['c'];
$url="http://www.example.com/page2.php?a=".$a."&b=".$b."&c=".$c;
some code to save in DB ....;
if(condition is true ...)
header('Location: $url');
?>

کدتو بزاری بهتر میشه حلش کرد

toopak
جمعه 16 اسفند 1392, 09:16 صبح
بله با ajax و header و همونطور که گفتم حتی iframe هم فرستادم ولی اجرا نشد
احتمال داره چون یک بار خود این پارامترها با متد get برای صفحه من فرستاده میشه دیگه دوباره برای یک صفحه دیگه معتبر نباشه؟

ahmadflasher
جمعه 16 اسفند 1392, 10:13 صبح
بله با ajax و header و همونطور که گفتم حتی iframe هم فرستادم ولی اجرا نشد
احتمال داره چون یک بار خود این پارامترها با متد get برای صفحه من فرستاده میشه دیگه دوباره برای یک صفحه دیگه معتبر نباشه؟
نه احتمال داره مربوط به تنظمات هدر باشه واسه اینکار یه صفحه خالی بساز بعد با هدر ،ریدایرکت کن به یه صفحه دیگه ببین کار میکنه. احتمال میدم از output buffering باشه. اینجا رو ببین:
http://w3schools.invisionzone.com/index.php?showtopic=43373
حالا به جای header('Location: $url'); از کد زیر استفاده کن:



<?php

$a=$_GET['a'];

$b=$_GET['b'];

$c=$_GET['c'];

$url="http://www.example.com/page2.php?a=".$a."&b=".$b."&c=".$c;

some code to save in DB ....;

if(condition is true ...){
?>
<script>window.location("<?php echo $url; ?>");</script>
<?php } ?>
یا با خود html پاس بده:
<meta http-equiv="refresh" content="30; ,URL=<?php echo $url; ?>">