PDA

View Full Version : ارسال اطلاعات یک فرم به URL



امیر اردلان
شنبه 06 تیر 1388, 11:05 صبح
سلام ،

چطور می تونم پارامتر های یک فرم رو به جای ارسال به ای میل به یک "یو آر ال" ارسال کنم؟

مثلا در فرم نمونه زیر :


<form method="post" action="sendmail.php">
Email: <input name="email" type="text" /><br />
Message:<br />
<textarea name="message" rows="15" cols="40">
</textarea><br />
<input type="submit" />
</form>

<?php
$email = $_REQUEST['email'] ;
$message = $_REQUEST['message'] ;

mail( "yourname@example.com", "Feedback Form Results",
$message, "From: $email" );
header( "Location: http://www.example.com/thankyou.html" );
?>
همونطور که می بینید اطلاعات به یک آدرس ای میل ارسال میشه . حالا من نیاز دارم که این اطلاعات برای پردازش به جای ای میل به یک "یو آر ال" ارسال بشه

مثلا :


http://mywebsite.com/processorممنون میشم اگه کسی راهنمایی کنه.

ahmadbadpey
شنبه 06 تیر 1388, 11:37 صبح
خوب url مورد نظر رو تو action فرمت قرار بده :متعجب:

امیر اردلان
شنبه 06 تیر 1388, 11:43 صبح
خوب url مورد نظر رو تو action فرمت قرار بده :متعجب:

نه ، اونجوری نمیشه . اطلاعات باید حتما به واسطه sendmail.php ارسال بشه . کد هایی که در بالا قرار دادم کد نمونه هستند . اطلاعات فرم من در sendmail.php ساخته میشه و نه در خود فرم.

narsic
شنبه 06 تیر 1388, 13:01 عصر
با سلام


header("Location: http://www.example.com/?Email=".$email."&message=".$message);

موفق باشید

امیر اردلان
شنبه 06 تیر 1388, 13:18 عصر
با سلام


header("Location: http://www.example.com/?Email=".$email."&message=".$message);
موفق باشید




با تشکر از توجه شما و پاسخی که دادید ، آیا کدی که گذاشتید صحیح است؟

احساس می کنم یه اشکالی توش هست. میشه لطفا یک بار چک کنید؟

ممنون

امیر اردلان
شنبه 06 تیر 1388, 21:08 عصر
با سلام


header("Location: http://www.example.com/?Email=".$email."&message=".$message);
موفق باشید





من این کد رو با یک برنامه چک کردم و مطمئن شدم که اشکال داره . از دوستان کسی هست کد صحیح رو بده؟

Sajjad.Aghapour
شنبه 06 تیر 1388, 22:02 عصر
این کد هیچ مشکلی نداره.احتمالا شما header رو جایی استفاده کردی که برات مشکل ایجاد می کنه.مثلا داخل تگ body....

farshad_persia
یک شنبه 07 تیر 1388, 00:46 صبح
اروری که براتون میاد
اگر میگه که Header قبلا ارسال شده خطا از کد نیست از جایی هست که این کد رو گذاشتید

امیر اردلان
یک شنبه 07 تیر 1388, 06:36 صبح
سلام ،

باز هم ممنونم از توجه دوستان . اگه در فرم به طور مثال 4 تا اطلاعات قرار باشه دریافت بشه این کد چه تغییری می کنه؟ مثلاً علاوه بر email و message فیلدهای phone و address هم داشته باشیم.

میشه لطف کنید برای این 4تا فیلد کد رو بازنویسی کنید؟

ممنون

yaqubian
یک شنبه 07 تیر 1388, 12:02 عصر
دوست عزیز
شما قبل از استفاده از دستور header چیزی رو نباید به خروجی فرستاده باشید.
در مورد سئوالتون هم شما باید پارامتر ها رو با علامت & از هم جدا کنید و در مقصد با GET_$ اونا رو دریافت بفرمایید.
موفق باشید

h3llb0y
یک شنبه 07 تیر 1388, 17:47 عصر
برای جلوگیری از این مشکل از تابع ob_start(); استفاده کن .....

امیر اردلان
یک شنبه 07 تیر 1388, 21:17 عصر
من از روش قبلی صرف نظر کردم . الان فقط یک فایل دارم با کد زیر :


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>


<?php
require_once('sha256.inc.php');
$testmode = 0;
$currency = "USD";
$PSK="donation";


$md = Array();
$md['PSK'] = $PSK;
$md['storeID'] = $storeId;
$md['cartID'] = $cartId;
$md['amount'] = $_REQUEST['amount'];
$md['currency'] = $currency;
$md['test'] = $testmode;
$md['description'] = $description;
$json = new Services_JSON();
$checkHash=(sha256(implode(":", $md)));
print "checkHash: ".$checkHash;

$htmlBlock = <<< _EOF_

<form action="https://paymentprocessor.com/gateway/standard" method="post">
<input type="hidden" name="store_id" value="{$storeId}"/>
<input type="hidden" name="cart_id" value="{$cartId}"/>
<input type="text" name="amount" value="{$amount}" />
<input type="hidden" name="currency" value="{$currency}"/>
<input type="hidden" name="description" value="{$description}"/>
<input type="hidden" name="test" value="{$testmode}"/>
<input type="hidden" name="check" value={$checkHash}/>
<input type="submit" value="Donate here">
</form>

_EOF_;
print $htmlBlock;

?>

</head>
<body>


</body>
</html>
حالا سوال من اینجاست که آیا این کد صحیح است؟ اگر صحیح است چرا وقتی این فایل رو تست می کنم هیچ فرمی نمایش داده نمی شود؟

امیر اردلان
دوشنبه 08 تیر 1388, 06:21 صبح
یکی اینجا نیست که این کد رو چک کنه و به من بگه که چرا با این کد هیچ فرمی نمایش داده نمیشه و فقط صفحه سفید میاد؟!

امیر اردلان
دوشنبه 08 تیر 1388, 18:05 عصر
لطفاً یکی کمــــــــک کنه!!!!!!!!!!