$_POST[key1]='word1';
$_POST[key2]='word2';
$_POST[key3]='word3';
$_POST[key4]='word4';
$_POST[key5]='word5';
تیتر سوال شما "فرستادن آرایه با متد پست هست"سپاسگزارم از شما.
من میخواستم اطلاعات فرم رو با استفاده از آرایه با مشخص کردن اندیس به وسیله متد پست بفرستم که به لطف خدا و تلاشم انجام شد!
روش من با این فرق میکنه!
شما توی کدتون به خود متد پست مقدار دادید؟! در حالی که من تا جایی که میدونم ما از مقدار موجود در متغیر پست استفاده میکنیم.
اگه اشتباه میکنم میشه بگین چه وقت ما به خود متغیر پست مستقیم مقدار میدیم؟
میشه توضیح بدین؟ مثلا فرم رو چجوری میفرستین ؟ یک فرم ساده مثل نام و نام خانوادگی؟ !
این جوری به نظر میرسه که یک صفحه بیشتر از یک بار باید به سرور بره درسته ؟
که من در صفحه مقصد به صورت زیر به اون دسترسی دارم :مثلا فرم رو چجوری میفرستین ؟ یک فرم ساده مثل نام و نام خانوادگی؟ !
$_POST['myForm']['name'];
$_POST['myForm']['family'];
مرسی ولی اینو که یه بچه دبستانی هم میدونه!برای ارسال یک فرم به روش post لازم هست که خصیصه method فرم را برابر با post بگذارید .
ولی نگفتید کجا ازش استفاده میکنید ؟مقدار دادن به متد پست مشکلی نداره و مشکلی پیش نمی یاره.
در مورد تیتر معذرت منظورم این بود "فرستادن اطلاعات فرم به صورت آرایه با متد post "
مثلا
که من در صفحه مقصد به صورت زیر به اون دسترسی دارم :
PHP:$_POST['myForm']['name']; $_POST['myForm']['family'];
که همونجور که گفتم، مسئله حل شده!
مرسی ولی اینو که یه بچه دبستانی هم میدونه!![]()
ولی نگفتید کجا ازش استفاده میکنید ؟
خوب از توجه شما عزیزان سپاسگزارم
have a nice day!
$_POST['name'];
$_POST['family'];
<input name="data[index1][index2]" type="text" />
پیشنهاد می کنم که اول کتابهای آموزشی رو بخونید، چون نکات بسیار زیاد دیگه ای هست که باید توی برنامه نویسی بکار ببرید.
فقط کافیه که اسم فیلدی که توی فرم بکار بردید رو به عنوان ایندکس آرایه بکار ببرید تا به مقدار اون دسترسی داشته باشید.
$myForm = array ('name', 'family');
echo "<form action=\"send.php\" method=\"post\" >";
foreach ($myForm as $key) {
echo "$key ";
echo "<input type=\"text\" name=\"myForm[$key]\" /></br>";
}
echo "<input type=\"submit\" value=\"send data\" />";
echo "</form>";
echo $_POST['myForm']['name'];
echo $_POST['myForm']['family'];
$arr_form = $_POST['myForm'];
echo $arr_form ['name'];
echo $arr_form ['family'];
خب اینکار چه نتیچه و فایده ای داره؟چشم! این سفارشی که برای همه ما صدق میکنه، وگرنه که نمی اومدیم این فروم. ولی انگاری زیاد به حرفم دقت نکردین؛ من هم میدونم این جوری فرم رو میفرسن و بهش دسترسی دارن؛ ولی من میخواستم از روش پیشرفته تری استفاده کنم که اون رو هم راهش رو پیدا کردم؛
خوب بریم سر آموزش :
توی صفحه پر کردن فرم :
من فرم رو با php بر اساس تعداد کلیدهای آرایه ایجاد کردم :
PHP:$myform = array ('name', 'family'); echo "<form action=\"send.php\" method=\"post\" >"; foreach ($myform as $key) { echo "$key "; echo "<input type=\"text\" name=\"myform[$key]\" /></br>"; } echo "<input type=\"submit\" value=\"send data\" />"; echo "</form>";
ولی میشه همونجور فرم معمولی رو با html هم ایجاد کرد ؛
خوب در صفحه send.php داریم :
PHP:echo $_post['myform']['name']; echo $_post['myform']['family'];
البته میشه توی این صفحه یک آرایه دیگه ایجاد کرد و به صورت زیر به اون دسترسی داشت :
PHP:$arr_form = $_post['myform']; echo $arr_form ['name']; echo $arr_form ['family'];
آلبته چون $_post ذاتا آرایه هست در مواردی هم که معمولی استفاده کنید بازهم نیازی نیست که تک تک چک کنید !دیگه لازم نیست تک تک متغیر های $_post رو داخل تابع بررسی تون ببرید ؛ کافیه یکبار آرایه رو داخل تابع بررسی ببرید ..
منم همین رو می خواستم بگم. وقتیکه post خودش یه آرایه هست، چه فایده ای داره که این آرایه تک بعدی رو به دو بعدی تبدیل کنیم، بعد دوباره توی یه متغیر دیگه قرار بدیم و بعد اون متغیر رو چک کنیم !آلبته چون $_post ذاتا آرایه هست در مواردی هم که معمولی استفاده کنید بازهم نیازی نیست که تک تک چک کنید !