فرستادن متغیر به وسیله include صفحه

masima

Member
سلام
من یه جا تو برنامم نیاز دارم که با صدا زدن یک صفحه (include یا require) به اون صفحه یه چند تا متغیر به روش get بفرستم ؛ خوب خطا میگیره !؟
میخوام بدونم اصلا همچین چیزی امکان پذیره که بشه اینجوری متغیر فرستاد.
باید اینو هم بگم نمیخوام از فرم استفاده کنم و یا بذارم توی تگ a . ماجرا یکم پیچیده تر از این حرفاس !

کسی میدونه میشه براش کاری کرد؟
سپاسگزارم
 

Domanjiri

Well-Known Member
سلام

مثلن می خواین همچین آدرسی رو include کنید؟
PHP:
...sample.php?var1=xx&var2=yy...

خب چه کاریه، توی همین فایل اصلی متغیرر ها رو(var1 و var2 و..) رو مقدار دهی کنید و بعد در فایلی که include میشه(sample.php) از اونا استفاده!

بله این کار رو یه جورایی میشه انجام داد (نمی دونم شما هم همینجوراشو لازم دارید یا نه؟)

با اینکه کار ،کار درستی نیست ولی اگه واقعا نیاز هست یه راه خوبش اینه که از cURL استفاده کنید. یه این صورت عمل می کنه که کد شما مثل یه کلاینت در خواست خوندن فایل رو می کنه!

حدس میزنم یه استفاده ای می خواین بکنید که eval هم بکارتون میاد!!:shock:

موفق باشید
 
آخرین ویرایش:

masima

Member
خیلی ممنون
خب چه کاریه، ..
خب اینم یه کاره دیگه! :)
بله این کار رو یه جورایی میشه انجام داد (نمی دونم شما هم همینجوراشو لازم دارید یا نه؟)
چه جورای دیگه هم وجود داره؟

با اینکه کار ،کار درستی نیست ولی اگه واقعا نیاز هست یه راه خوبش اینه که از cURL استفاده کنید.
چرا درست نیست؟ و از این حرف معلومه که راه های دیگه ای هم هست. آره؟ چی مثلن؟
آره نیاز هست!

هنوز نمیدونم این راهنماییت همونی هست که میخوام یا نه ؛ آخه
توابع این curl نمیدونم چرا اجرا نمیشه؟ میگه تعریف نشده براش؟ چی کا کنم به نظرت؟
 

Domanjiri

Well-Known Member
خب اینم یه کاره دیگه!
آقا قضیه سری و ایناست؟؟:green: اگه بگین کجا میخواین استفاده کنین زودتر به نتیجه می رسیمااا..

چه جورای دیگه هم وجود داره؟
همین یه جور رو بلد هستم من (فکر نکنم روش دیگه ای باشه:?:...نمی دونم)

چرا درست نیست؟ و از این حرف معلومه که راه های دیگه ای هم هست. آره؟ چی مثلن؟
آره نیاز هست!
منظورم این نبود که cURL روش درستی نیست، من کلا کاری که میخواین انجام بدید رو گفتم.

آره نیاز هست!
کنجکاو می شویم:)

هنوز نمیدونم این راهنماییت همونی هست که میخوام یا نه ؛ آخه
خب بگید چی می خواین!

من تو ارسال قبلی گفتم که cURL چکار میکنه، ایرادی نداره بازم میگم. فرض کنید یه فایل داریم به اسم test.php با این محتویات:
PHP:
<?php
echo 'salam ' .$_GET["var1"];
حالا اگه که با cURL آدرس test.php?var1=masima رو باز کنیم (من خودم تا حالا اینکار رو انجام ندادم) چیزی که به ما میده «salam masima» هست (دقیقا مثل اینکه یه کلاینت فایل رو درخواست بده) حالا شما با eval می تونید این خروجی رو مثل کد PHP اجرا کنید.

می بینید چقدر دردسر داره! می دونم که چیزی که می خواین چنین چیزی نیست.درسته؟

توابع این curl نمیدونم چرا اجرا نمیشه؟ میگه تعریف نشده براش؟ چی کا کنم به نظرت؟
لینکی که گذاشتم رو دوباره واکاوی کنید(!) یه بخشی داره به اسم Installing/Configuring مطالعه بفرمایید (اگه می گفتید که واسه چکاری نیاز به این نوع آدرس دهی دارین، الان شاید راه دیگه ای پیدا کرده بودیم و مجبور نبودین این همه دردسر ...بگذریم!)


شاد و پیروز باشید
 

masima

Member
مرسی خیلی ماهی
منظورم این نبود که curl روش درستی نیست، من کلا کاری که میخواین انجام بدید رو گفتم.
خب منم منظورم همین بود .. اگه همچین امکانی رو پی اچ پی گذاشته ؛ پس باید یه کاربردی داشته باشه ! نه؟
کنجکاو می شویم
باید راه های خاصی رو آزمایش کنیم ..
می بینید چقدر دردسر داره! می دونم که چیزی که می خواین چنین چیزی نیست.درسته؟
هنوز مطمئن نیستم !
لینکی که گذاشتم رو دوباره واکاوی کنید(!) یه بخشی داره به اسم installing/configuring مطالعه بفرمایید
من دانلود هم کردم ولی فک کنم اشتباه کردم . نمیدونم کدوم باید دانلود کنم و نصبشو هم بلد نیستم . میشه راهنماییم کنی خیلی لازمه دوست. من ورژن پی اچ پی 5.3.0
 

Domanjiri

Well-Known Member
من دانلود هم کردم ولی فک کنم اشتباه کردم . نمیدونم کدوم باید دانلود کنم و نصبشو هم بلد نیستم . میشه راهنماییم کنی خیلی لازمه دوست. من ورژن پی اچ پی 5.3.0

اول اینکه اگه از IIS استفاده می کنید، همین حالا تنظیماتش رو لغو کنید و xamp رو دانلود و نصب کنید.آخرین نسخه xamp
PHP5.3.5 , Mysql5.1.5,Apache2.2

بعد برین به صفحه ی دانلود cURL میشه اینجا و اگه از ویندوز استفاده می کنید خب مسلما باید فایل مربوط به ویندوز رو دانلود کنید که الان میشه این فایل

بعد از 3 فایل dll رو در پوشه ی PHP > ext بریزید

فایل php.ini رو باز می کنید و دنبال extension=php_curl.dll بگردید و بعد ; رو از اولش بر می دارید و Apache رو ریستارت می کنید

حالا یه فایل به اسم main.php در پوشه htdocs ایجاد و کد زیر رو توش بریزید
PHP:
<?php
        $ch = curl_init("http://localhost/set.php?hi=salam");
        curl_setopt($ch, CURLOPT_HEADER, 0);
             curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        $output = curl_exec($ch);       
        curl_close($ch);
        echo $output;
و یه فایل هم به اسم set.php توی همون پوشه بسازید با این محتوا
PHP:
<?php

if (isset($_GET['hi'])){
echo $_GET['hi'];
}

حالا اگر به آدرس http://localhost/main.php برید باید عبارت salam رو ببینید.(من همین الان دارم می بینمش!)

دوست من، لطفا اگه کار کرد، یه متنی رو بصورت خوشگل(!) تایپ کنید و در بخش مقالات و آموزش ها قرار بدین تا دوستان دیگه هم اگه مشکل داشتن استفاده کنن.

شاد باشید.
 

masima

Member
اول اینکه اگه از IIS استفاده می کنید، همین حالا تنظیماتش رو لغو کنید و xamp رو دانلود و نصب کنید.آخرین نسخه xamp
PHP5.3.5 , Mysql5.1.5,Apache2.2
نه iis که نصب ندارم، مگه با php میشه از iis استفاده کرد به عنوان لوکال سرور؟ من که تا حالا نتونستم ! :)
xampp هم دانلود نکردم wamp دارم نسخش هم تازه است فک کنم!
فایلی که گفتید رو هم دیشب دانلود کردم همون مثالی هم که زدید رو دیشب هم اجرا کردم ولی چون درست نصب نکرده بودم اشکال داشت و اجرا نمیشد!
ولی میخوام یه خبر خوب بدم ؛ دست گلت درد نکنه ؛ آموزش نصبت عالی بود ؛ واقعا ممنون ؛ واقعاااااااااااااااااااا !:rose:
(من همین الان دارم می بینمش!)
خوب دیگه حالا منم دارم می بینمش !
دوست من، لطفا اگه کار کرد، یه متنی رو بصورت خوشگل(!) تایپ کنید و در بخش مقالات و آموزش ها قرار بدین تا دوستان دیگه هم اگه مشکل داشتن استفاده کنن.
میشه الان این کارو نکنم، آخه هنو سوال دارم ؛ باشه؟
خوب حالا سوالام :
نصب کردم ؛ اجرا هم شد ؛ درست هم هست ؛ ولی حالا اگه بخوام بذارم رو سرور : آیا همه سرور ها امکان curl روشون فعاله ؟
اگه فعال نباشه، باید چی کا کنم ؟
 

Domanjiri

Well-Known Member
ولی میخوام یه خبر خوب بدم ؛ دست گلت درد نکنه ؛ آموزش نصبت عالی بود ؛ واقعا ممنون ؛ واقعاااااااااااااااااااا !
خواهش می کنم، بسی خوشحالم الان:oops:

میشه الان این کارو نکنم، آخه هنو سوال دارم ؛ باشه؟
من این مورد رو بی خیال نمیشمااا.. ! باید آموزش نصب cURL رو بنویسید، دیگه زمانش با خودتون:)

نصب کردم ؛ اجرا هم شد ؛ درست هم هست ؛ ولی حالا اگه بخوام بذارم رو سرور : آیا همه سرور ها امکان curl روشون فعاله ؟
اگه فعال نباشه، باید چی کا کنم ؟

شما یه درخواست میدین بدین مضمون:(اِهِم!) مدیر محترم سرور _____ که به من دارید سرویس می دین، cURL هم اکنون از نون شب برام واجب تره!! امید است در ضل توجهات جنابتان(!)، منم به مرادم برسم،باشه مدیر؟!! امضا _&+_!


موفق باشید.
 

masima

Member
شما یه درخواست میدین بدین مضمون:(اِهِم!) مدیر محترم سرور _____ که به من دارید سرویس می دین، curl هم اکنون از نون شب برام واجب تره!! امید است در ضل توجهات جنابتان(!)، منم به مرادم برسم،باشه مدیر؟!! امضا _&+_!
اونوقت به نظرت مدیره قبول میکنه ؟ اگه نکنه چی ؟
چه امضای جالبی داری! :)

ولی هنو جواب یه سوالمو ندادی ااا ؟
منظورم این نبود که curl روش درستی نیست، من کلا کاری که میخواین انجام بدید رو گفتم.
چرا این کار به نظرت کار درستی نیس؟
 

Domanjiri

Well-Known Member
این روزا اونقدر سرویس دهنده هاست زیاد شده که مدیراشون برای جذب مشتری کارایی میکنن که نمیشه گفت(!!!) این که یه کار فنی و عادی هست.

cURL با هدف خوندن صفحات خارجی (سایت های دیگه) ساخته شده، اگه دقت کرده باشید متوجه شدین که وقتی مثلن توی مثال بالا فایل main رو فراخوانی می کنیم، سرور مجبوره به دوتا درخواست جواب بده ( و نتیجش ترافیک اضافی، محاسبات اضافی و...) در حالی که توی include کردن از این خبرا نیست.

امیدوارم متوجه شده باشید، شما کاری که با این نوع فراخوانی دارید رو بگید، من بهتون قول میدم روش دیگه ای واسش وجود داشته باشه!

البته موارد استثنا هم هست. مثلن توی سیستم وبلاگ دهی گاهی لازم میشه کاربر دموی قالبی که گذاشته رو ببینه و...

(راستی فقط امضام رو خوندین؟! پس جوابش چی؟؟)

شاد باشید
 

MMSHFE

Active Member
با سلام، میگم چرا اینقدر پیچیده اش میکنید؟ نمیشه توی Session بریزین و توی اون فایل، از سشن بخونیدش؟ اینطوری راحت میشه include یا require کرد. تا جایی که میشه بهتره از cURL استفاده نکنید. این ویژگی برای موارد خاصی که راه دیگری نیست، درنظر گرفته شده.
موفق باشید.
 

masima

Member
شاید برای بعضی موردا بشه ولی این یه مورد ...
تعریف شما رو میخوام از مورد خاص بدونم
اگه ممکنه
 

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

بالا