PDA

View Full Version : کار با رفم



mosab_vb
پنج شنبه 20 دی 1386, 23:36 عصر
سلام دوستان.من با php ورژن 4.2 کار می کنم.فرمی طراحی کردم ومی خوام اطلاعات دریافتی از اون رو به بانک ارسال کنم.می خواستم بدونم که چه جوری توی php میشه به المانهای فرم طراحی شده دسترسی داشت و با آنها کار کرد.من برای این کار از$name استفاده کردم و داخل کد php قرار دادم اما به من اخطار می ده و می گه متغیرت تعریف نشده.فکر می کنید مشکل از کجاست.لطفا من رو راهنمایی کنید.ممنون.کد زیر رو یه نگاه بکنید.
form page:


<html>
<form method="post" action="process.php" >
name<input type="text" name="name">
<input type="submit" value="send">
</form>
</html>


php page process.php:


<?php
print "$name";
?>

تو این کدی که نوشتم باید مقدار name چاپ بشه ولی اخطار میده.می گه متغیرت تعریف نشده.لطفا راهنمایی کنید.

bigcowboy
جمعه 21 دی 1386, 01:29 صبح
اگه متد post باشه

echo $_POST["name"];
اگه get باشه

echo $_GET["name"];
اون چیزی که شما میگید مال قدیماست

zfarhad2000
جمعه 21 دی 1386, 01:35 صبح
شما بهتره با متغیرهای سراسری مثل GET_$ و POST_$ همونطور که دوستون گفتن کار کنید. اون روشی که شما می‌خواید به متغیرهای فرم دسترسی داشته باشید در حالتی هست که register_globals از تنظیمات php برروی on باشه. در اون حالت تمامی متغیرهای این چنین بدون استفاده از متغیر سراسری قابل دستیابی میشن که کار درستی نیست و ممکنه با سهل انگاری سبب ایجاد مشکلات امنیتی در برنامه بشه. از طرفی register_globals برروی اکثر سرورها دیگه off هستش و معمولا برنامه هایی که اینطوری نوشته میشن روی سرورها کار نمی‌کنن و نسخه php6 هم کلا register_globals حذف خواهد شد.

بهترین راه حل اینه که از همین اول به کار کردن با متغیرهای سراسری عادت کنید.

mosab_vb
جمعه 21 دی 1386, 18:22 عصر
من از دوستان خوبم تشکر می کنم.من با ورژن قدیمی کار می کردم.به ورژن 5 نقل مکان کردم.مشکلم حل شد.دستتون درد نکنه.