-
تعداد ارسالها
84 -
تاریخ عضویت
-
آخرین بازدید
نوشتهها ارسال شده توسط karbar98
-
-
دللی عدم ارسال به نظرم پایین بودن فاصله زمانی هستش. چون وضع اینترنت هم جالب نیست ، مدت زمان یک ثانیه برای ارسال ، دریافت و پردازش اطلاعات کمه. (هرچند که نمیدونم! چون مگه یه داده عددی مثل حجم فایل مگه چقدر می تونه باشه ) در هر حال اون مدت زمان یک ثانیه رو کمی افزایش بدید بعد با همون روش تست کنید ببینید جواب میده یا نه!
پویا جان اصلا ربطی به داده متنی نداره اتصال هم بین سروری هست
شما متن من رو دوباره با دقت بخوانید من نوشته که فایلی که با FTP آپلود می شه بر عکس آپلود از طریق وب یک دفعه در هاست ظاهر نمی شه و کم کم و بصورت قطعه قطعه در هاست بوجود می آید تا تکمیل بشه حالا همین کار ما رو خراب کرده مدت زمان هم فرقی نمی کنه میکرو باشه یا دقیقه باشه ممکنه آپلود یک فایل 3 الی 4 ساعت طول بکشد.
حالا مسئله سر این هست که ما چطور تشخیص بدیم فایل در حال آپلود شدنه یا اینکه بطور کامل آپلود شده است.
- 1
-
سلام. در زمینه FTP تجربه چندانی ندارم ، اما فک کنم با این روش می تونید مشکل رو حل کنید:
قبل از آپلود فایل (در هنگام شروع آپلود) حجم دقیق فایل رو برای سرور ارسال کنید. حالا کافیه با یه دستور IF تعیین کنید که تا زمانی حجم فایل به اون مقدار دریافتی از سیستم نرسیده ، فایل رو ارسال نکنه.
پویا جان تمام این روش ها تست شده است فایده ندارد چرا که سیستم فایل نصفه نیمه هم کامل تشخیص می دهد مگر اینکه نرم افزاری مثل filezilla یه سری اطلاعات رو برای سرور بفرسته مثلا حجم ، پسوند و ... که این کار رو انجام نمی دهد.
- 1
-
سلام
مثلا قصد داریم یک فایل 40 مگابایتی رو با FTP آپلود کنیم همانطور که می دانید همان اول کار فایل در هاست ایجاد می شه بعد کم کم حجمش زیاد می شود 1.5 ، 10 ، 20 ، 30 مگ و ... تا بالاخره فایل بطور کامل به هاست انتقال پیدا می کند.
من سیستمی دارم که یک فولدر خاص رو هر یک ثانیه یک بار چک می کنه و اگر فایلی اونجا باشه اون رو برای یک سرور دیگر ارسال می کنه حالا مشکلی که پیش اومده همین هست فایل آپلود شده با FTP وقتی هنوز کامل نشده مثلا حجمش 1.5 مگ هست ارسال می شه و این کار من رو خراب کرده است.
حال سوال اصلیم این است که آیا راهی وجود داره ما بفهمیم که آیا فایل کامل آپلود شده یا خیر ؟ که بگیم اگر فایل بطور 100 درصد آپلود شده بود اون رو انتقال بده
از دوستان خواهشم می کنم من رو در این رابطه راهنمایی کنند زیرا برای کار واجبی است و من واقعا سرش گیر کردم.
با تشکر
-
سلام
یکی از بهترین توابع برای اینکار curl هست.
-
با سلام
دو سوال داشتم
آیا می توان برای کد زیر پسوند مجاز تعریف کرد ؟ یعنی فقط فایل های مجاز دانلود و در سرور ذخیره شوند.
دوم سرعت انتقال در این روش معمولا چقدر است ؟ یعنی می شه انتظار داشت مثلا با پورت 80 مگابیت سرور های ایرانی فایل با مثلا بالای 10 مگ بین دو سرور منتقل شود ؟
<?php
$uploaddir = realpath('./') . '/';
$uploadfile = $uploaddir . basename($_FILES['file_contents']['name']);
echo '<pre>';
if (move_uploaded_file($_FILES['file_contents']['tmp_name'], $uploadfile)) {
echo "File is valid, and was successfully uploaded.\n";
} else {
echo "Possible file upload attack!\n";
}
echo 'Here is some more debugging info:';
print_r($_FILES);
echo "\n<hr />\n";
print_r($_POST);
print "</pr" . "e>\n";
?> -
با تشکر از همه دوستان
من بالاخره روشش رو پیدا کردم پس از انجام تست و آزمایشات مراحل کار را در این تاپیک قرار می دهم.
- 2
-
والا فایل منیجر که موجوده ولی برای فایل های بالا 4 گیگابایت کارایی زیادی نداره اون روشی هم که شما گفتید کاملا درسته و می شه اجراش کرد اما مثلا شاید طرف شل و ... آپلود کرد.
-
تشکر از پاسخ شما
اما من خودم شدیدا گیر کردم خیلی هم واجبه برام یعنی هیچ راهی وجود نداره که پس از آپلود با نرم افزار بفهمیم که چه فایلی آپلود شده تا اطلاعات اون رو مثلا به دیتابیس بفرستیم ؟
-
خوب حالا مورد اول رو می شه یک کاریش کرد مثلا هر ثانیه پوشه چک بشه تا فایل php آپلود شده اون رو حذفش کنه ولی دومی خیلی مهمه یعنی پس از آپلود صفحه php اجرا بشه یعنی کاریش نمی شه کرد ؟
-
تشکر فراوان
فقط من منظورم آپلود از FTP با نرم افزار هست مثلا کاربر نتونه فایل php رو در پوشه خودش با نرم افزاری مثل filezilla آپلود کند.
-
با سلام
در رابطه با ایجاد ftp با php دو سوال داشتم.
- 1 - آیا می شود برای بخش آپلود محدودیت گذاشت تا فقط فایل هایی با پسوند مجاز آپلود شوند ؟
- 2 - آیا می شود کار کرد که پس از آپلود و انتقال فایل به سرور یک صفحه php اتوماتیک لود شود ؟
-
کدهای شما چرا به این صورت است ؟
بصورت اتفاقی این مشکل بوجود آمد متاسفانه امکان ویرایش پست برای گروه کاربری من وجود ندارد در غیر این صورت مدت ها پیش آن را اصلاح می کردم.
پست خودتان را ویرایش کنید و سئوال را دقیق تر بپرسید
سوال من کاملا واضح است اما برای روشن شدن موضوع مجددا آن را ارسال می کنم.
فرض بفرمایید یک متغیر به نام $date موجود داریم وقتی آن را چاپ می کنیم عبارت زیر ظاهر می شود :
1390/06/16
1392/06/16همانطور که مشاهده می فرمایید دو تاریخ در صفحه چاپ شده یکی 1390/06/16 و دیگری 1392/06/16 هدف اصلی من این است که این دو تاریخ رو از هم جدا کنم و هر کدام را به یک متغیر دهم به کد زیر توجه کنید :
echo $date1; // 1390/06/16
echo $date2; // 1392/06/16در حالتی که تاریخ های مورد نظر ثابت باشند کار جدا سازی بسیار ساده است اما مشکل اصلی اینجاست که این دو ثابت نیستند و برای کاربر متفاوت است.
-
سلام دوستان
یک متغیر داریم که وقتی آن را چاپ می کنید اطلاعات آن بصورت زیر نمایش داده می شود :
[left]echo $date;[/left]
[left]1390/06/16[/left]
[indent=1][left]1392/06/16[/left]
[/indent]
سوال اصلی من اینجاست که چطور باید تاریخ اولی رو از تاریخ دومی جدا کنم در حالی که اعداد ثابت نیستند و برای هر کاربر کاملا متفاوت است ؟به عنوان مثال :[left]echo $date1; // 1390/06/16[/left]
[left]echo $date2; // 1392/06/16[/left]
پیشاپیش تشکر می کنم -
دوستان ایا این کار رو با base64 نمی توان انجام داد ؟
هدف کلی من تبدیل فایل به کد برای کاهش حجم آن است.
-
با تشکر از دوستان
همانطور که جناب lord_viper اشاره کردند هر فایلی قابل تبدیل به باینری رو داره و این کار در زبان هایی مانند c# به راحتی انجام می شود به عنوان مثال کد زیر فایل صورتی رو به باینری تبدیل می کنه ولی برای php من خیلی جستجو کردم اما چیزی پیدا نشد ولی مطمئن هستم امکانش هست.
int c = 0;//the counter
string bin = "";//result
byte[] bytes = System.IO.File.ReadAllBytes("filename");//get all bytes of file
foreach (byte b in bytes)
{
int n = b;
for (int i = 128; i >= 1; i /= 2)
{
bin+= (n / i).ToString();
n = n % i;
}
bin+= Environment.NewLine;
if (C++ % 100 == 0)//invoke DoEvent for each 100 bytes and report the perSentage
{
this.Text = ((100 * c) / bytes.Length).ToString() + "% completed...";//report the perSentage
Application.DoEvents();//keep application responcing
}
}
System.Media.SystemSounds.Exclamation.Play();//alarm completing
textBox1.Text = bin; -
سلام دوستان
ایا راهی وجود داره که ما بتوانیم چند نمونه فایل رو به کد باینری تبدیل کنیم ؟ به عنوان مثال پسوند هایی مانند jpeg , mp3 , avi , zip را به توان به کد باینری تبدیل کرد.
-
درسته گویا راه حلی وجود نداره
از دوستان برای وقتی که گذاشتند تشکر می کنم.
-
کار کمی سخت شده
تعداد کاراکترهای هگز شما ثابت هست؟
بله دقیقا کار خیلی سخت شده متاسفانه جستجو هایی هم که کردم کار ساز نبود.
تعداد کاراکتر ها هم متاسفانه مشخص نیست مثلا کد hex ممکنه 20 کاراکتری باشه یا ممکنه 100 کاراکتری باشد.
کلا برا شناسایی hex می تونی از این pattern استفاده کنی
ولی همونطور که مرتضی گفت باید تعداد رو مشخص کنی چون توی متن با کارکترای دیگه دچار مشکل در شناسایی میشی یا اینکه یه پشیوند قبل کد hex بزاری و یه pattern جدید تعریف کنی
ممنون اما مشکل اینجاست تعداد کاراکتر ها مشخص نیست.
-
من دقیقاً نمی دونم که این get از کجا وارد میشه. فرض کنیم از یه فرم با متد get گرفته بشه. خب؟
با تشکر ز شما
اما اطلاعات از url گرفته می شود بدین صورت :
http://site.com/posts.php?id=salam73616c616d
خب ظاهرا این مقدار هگز وسط یک جمله یا متن هست که با متد Get ارسال میشه معمولا ابتدای کدهای هگز $ یا # یا % داره که از اون طریق شناسایی میشه
در غیر این صورت بایید یک رجکس بنویسین که این کارو براتون انجام بده
یعنی کلماتی رو که از( 0-9 و a-f )تشکیل شدن درون متن رو به عنوان هگز در نظر بگیره
دقیقا مد نظرم همین روش دومی است که نام بردید.
آیا مثالی در این رابطه موجود است ؟
-
این رشته چه جور تولید میشه؟ بصورت دستی نوشته میشه یا بوسیله ی تابع ایجاد میشه؟
دقیقا دستی نوشته می شه و توسط get از آدرس گرفته می شود.
تا جایی که من می دونم باید به کد یک مشخصه بدید مثل % در اول و آخرش یا آکولاد و تعریف کنید که مقادیر داخل معرفه مورد نظر انکد بشند
درسته این هم امکان پذیره اما هیچ راهی نداره بتوان بدون در نظر گرفتن کارکتر خاصی کد hex رو تشخیص داد ؟
-
سلام دوستان
آیا روشی وجود دارد که ما بتوانیم چندین فایل php رو از سایتی به سایتی دیگر منقل کنیم ؟
مثال زیر رو در نظر بگیرید :
http://site.com/file.php
<?php
echo 'salam';
?>حالا ما بتوانیم کد بالا رو در سایت دیگری اینکلود کنیم :
<?php
include('http://site.com/file.php');
?>یعنی تمامی کد های صفحه file.php رو بتوانیم اینکلود کنیم و اگر امکان این کار وجود دارد روش هایی هم هست که بتوان امنیت این کار را بالا برد ؟
-
سلام دوستان
فرض کنیم عبارت زیر را داریم :
salam chetori ?73616c616d
یا
salam 73616c616d chetori ?
در دو عبارت بالا کد hex در میان جمله است و حالا من می خواهم کدی باشد که hex را در میان متن تشخیص داده و آن را دیکد کند مشکل در دیکد کردن نیست مشکل اینجاست که سیستم بتونه کد hex رو که در میان متن مخفی شده را پیدا کند.
ممنون می شوم دوستان راهنمایی کنند.
-
دوست عزیز بسیار متشکرم از راهنمایی شما
-
درسته کد رو دارم ولی همانطور که عرض کردم با این فقط می شود یک پنجره را ساخت و استفاده کرد من می خواهم چندین لینک در صفحه وجود داشته باشه که پس از کلیک روی آن ها دیالوگ باکس اختصاصی آن لینک باز شود به عنوان مثال :
لینکی برای ثبت نام قراره بگیره و پس از کلیک روی آن پنجره دیالوگ مربوط به ثبت نام باز شود
لینکی برای ورود کاربران قرار بگیره و پس از کلیک روی آن پنجره دیالوگ مربوط به ورود کاربران باز شود
اما با کد بالا فقط می شه یک دیالوگ باکس ساخت نه چند تا امیدوارم متوجه منظور من شده باشید.
تشخیص کامل شدن یک فایل آپلود شده
در برنامه نویسی داینامیک
ارسال شده در
باید پوشه ها هر ثانیه چک بشه علتش رو توضیح دادم
من کلا با cron jobs کار نمی کنم چون خطا زیاد داره یک سرور گذاشتم تو اتاق سرور که روش یک سری نرم افزار نصبه و کار های مختلفی رو انجام می دهد یکیش لود برخی اسکریپت ها است.
با تشکر از شما
من با استفاده از حجم متغیر فایل توانستم تشیص بدم فایل کامل آپلود شده یا هنوز در حال آپلود است.