PDA

View Full Version : یه مشکل در استفاده از یک متغییر در دو فایل php



tfh1368
سه شنبه 26 شهریور 1392, 23:21 عصر
در حالت کلی مشکل رو بگم

من با دستور get متغییر ftable رو ارسال کردم به فایل a.php و ازش استفاده کردم به صورت زیر

$Tablname=$_GET [ftable];

mysql_set_charset('utf8',$Link);
$Query="INSERT into $Tablname values ('$_GET[sname]','$_GET[sfamily]')";




الان نیاز دارم همین متغییر (ftable) رو تو فایل v.php در کد زیر مکان مشخص شده استفاده کنم



$result = mysql_query('select * from $ftable order by sfamily DESC');


ولی نمیتونم لطفا کمکم کنید

rezaonline.net
چهارشنبه 27 شهریور 1392, 00:23 صبح
اگر فایل v.php رو داخل فایل a.php اینکلود کنید مشکلی نیست .
اگرم نمیخواید خب دستورات رو توی خود a.php بنویسید دیگه .
چرا بیخودی میبریش یه فایل دیگه

tfh1368
چهارشنبه 27 شهریور 1392, 08:22 صبح
ممنون دوست عزیز شرمنده یه سوال دیگه داشتم

من ادرس یه عکسی رو از کاربر میگیرم با دستور get و در کد زیر استفاده میکنم


<html>
<body background=<?php '$GET[img]' ?> >
<html/>

ولی نمیشه تصویر زمینه رو عوض کنم

چیکار کنم؟

MMSHFE
چهارشنبه 27 شهریور 1392, 08:44 صبح
البته این روش مشکلات امنیتی وحشتناکی داره، برای مثال اگه توی آدرس جلوی =img? آدرس یک Shell یا ویروس و... رو بنویسن، به راحتی اجرا میشه ولی درهرحال، اگه میخواین این روش کار کنه باید توی متغیر background علاوه بر اسم فایل که کاربر وارد میکنه، مسیرش رو هم بنویسید. مثلاً:

<body background="images/<?php echo $_GET['img']; ?>">
اما باز هم تأکید میکنم با این کار، خودتون دروازه ورود به سایت رو به روی هکرهای محترم باز خواهید کرد.

tfh1368
چهارشنبه 27 شهریور 1392, 13:47 عصر
ممنون دوست عزیز ولی من میخواهم ادرس کامل عکس رو از کاربر بگیرم یعنی مثل این

http://gameo.riiz.ir/htdocs/f/tfh1.jpg

مشکل خاصی هم با هک شدن ندارم چون این یه سایت نیست بلکه یه کتابخانه برای ثبت رکوردهای بازی ها هست کاربر اصلی هم بازی سازها هستند نه بازی کنندگان بازی


برای اینکار چیکار کنم؟

tfh1368
چهارشنبه 27 شهریور 1392, 16:40 عصر
سلام ببخشید من دوتا رکورد رو با کد زیر در جدول مربوطه ثبت میکنم ولی وقتی دو مقدار sfamily یکسان میشه رکورد جدید رو وارد نمیکنه چرا ؟ چیکار کنم؟



mysql_query("INSERT INTO $Tablname ('sname', 'sfamily')VALUES ('$_GET[sname]', '$_GET[sfamily]')");

MMSHFE
پنج شنبه 28 شهریور 1392, 08:33 صبح
هرچند باید تاپیک جداگانه ایجاد میکردین، ولی بهرحال باید چک کنید بینید فیلد sfamily احیاناً Unique تعریف نشده باشه. بعد از این دستور، mysql_error رو echo کنید ببینیم خطای تولید شده چی بوده.

tfh1368
پنج شنبه 28 شهریور 1392, 08:49 صبح
ممنون دوست عزیز . شرمنده نمیدونستم باید تاپیک جدید بزنم خواستم زیاد شلوغش نکنم
Unique
بود با کد تعریفش کرده بودم درست شد.