• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
مشکل با تابع ftp_login
#1
سلام
چند خط کد هستش در مورد ورود به ftp
در کد زیر بعد از اینکه عمل اتصال به 127.0.0.1 برقرار شد میاد یوزر و پسورد رو چک میکنه . من سرویس ftp رو هم رو ویندوزم نصب کردم از طریق سیدی ویندوز اما نمیدونم چرا این اسکریپت شرط دوم رو همیشه اجرا میکنه . به نظرتون باید تنظیماتی برای سرویس ftp باید در نظر گرفته بشه ؟ من تنها کاری که کردم سرویس ftp رو نصب کردم و بعد کد رو نوشتم و از طریق 127.0.0.1/test.php لود کردم و با این پیغام مواجه میشم .
Couldn't Connect as 127.0.0.1

کد:
<?php
$ftp_server="127.0.0.1" ;
$user="ftp";
$pass="password";
$ftp_connet=ftp_connect($ftp_server) or die("couldent connect to $ftp_server");
if (@ftp_login($conn_id , $user , $pass)) {
    echo "Connented as $ftp_server";
}else {
    echo "Couldn't Connect as $ftp_server";
}
  پاسخ
تشکر شده توسط :
#2
به یه نرم افزار دیگه چک کن ببین اصلا می تونی با این مشخصات به اف تی پی وصل بشی
  پاسخ
تشکر شده توسط : Padideh
#3
بسم الله الرحمن الرحیم
سلام
یه سوال => تو تابع ftp_login مقدار اولین پارامتر یعنی $conn_id از کجا می یاد؟
بجاش بزاری $ftp_connet باید درست شه
  پاسخ
تشکر شده توسط : admin Padideh oia
#4
این یوزر و پس رو تو سرویس ftp باید سیو کنم اخه این یوزر و پس رو من همینطوری گذاشتم و قاعدتا نباید login کنه من فکر میکردم وصل میشه و بعد ازت درخواست یوزر و پس میکنه مثل اینکه میخوای به ftp سایت خودت یا cpanel وارد بشی زمانی که آدرس رو میدی ازت درخواست یوزر و پس رو میکنه من فکر میکردم این برنامه اینطوری باشه
اتفاقا این سوال منم هستش این متغیر $conn_id واسه چی هستش ؟
به جای conn_id گذاشتم $ftp_connetct حالا وصل شد یعنی هر یوزر پس تو این کد بذاری وصل میشه ؟
  پاسخ
تشکر شده توسط :
#5
نقل قول:به جای conn_id گذاشتم $ftp_connetct حالا وصل شد یعنی هر یوزر پس تو این کد بذاری وصل میشه ؟
خوب این بستگی به تنظیمات سرورت داره / می تونی اجازه بدی هر کسی وارد سیستم بشه و یا فقط با اهراز هویت بتونه وارد شه
  پاسخ
تشکر شده توسط : Padideh
#6
کجا باید تغیرات رو انجام بدم که یه یوزر و پس رو بشناسه ؟
  پاسخ
تشکر شده توسط :
#7
خوب این دییگه مربوط به سیستم عاملی می شه که ازش استفاده میکنید /
شما کجا یوزر و پسورد ایجاد کردید؟ / همون قسمت ها باید باشه (یه چیزی به این اسم Anonymous هست) / که مثلا تیکش رو بزنید همه می تونن بدون یوزر پسورد وارد شن (که البته به سیستم عامل هم مربوط می شه و ممکنه کلمه و مدل دیگر ای داشته باشه)

----
تو ویندوز سرور 2003 => از start - administrate tools - IIS manager
لیست کشویی رو که باز کنی در قسمت ftp sites / یوزر/بخشی که ایجاد کردی روش راست کلیک کن و PROPERTIES و در صفحه باز شده از تب security accounts
همینجاست / که تیکشو بزنی همه می تونن وارد شن
----
  پاسخ
تشکر شده توسط : Padideh
#8
به این کد یه نگاه بنداز کل کد رو متوجه شدم اما یه جارو نتونستم درک کنم .

کد:
<html>
<body>
<pre>
<?php
$ftp_server="46.4.12.125" ;
$user="sssssi";
$pass="password";
$ftp_connet=ftp_connect($ftp_server) or die("couldent connect to $ftp_server");
if (@ftp_login($ftp_connet , $user , $pass)) {
    $showdir=ftp_pwd($ftp_connet);
    $showlist=ftp_nlist($ftp_connet,$showdir);
    foreach ($showlist as $value)
    {
echo $value ."<br>";
    }
} else {
    echo "couldent connet as $ftp_user\n";
}
?>
</body>
</html>

دو خط کد رو نگاه کنید .

کد:
    $showdir=ftp_pwd($ftp_connet);
    $showlist=ftp_nlist($ftp_connet,$showdir);
با تابع ftp_pwd امدیم اسن دایرکتوری رو پیدا کردیم و در خط بعدی امده لیست کرده میخوام بدونم در این خط $showlist=ftp_nlist($ftp_connet,$showdir); چرا دیگه متغیر $ftp_connet رو ما تو آرگومنت گذاشتیم
  پاسخ
تشکر شده توسط :
#9
خوب چون خودش خواسته دیگه:http://php.net/manual/en/function.ftp-nlist.php

شما فرض کن همزمان به چند تا سرور از طریق ftp کانکت شدی / خوب اگه این پارامتر نبود اسکریپت از کجا می خواست بدونه شما لیست فایل های کدوم سرور رو می خوای؟
  پاسخ
تشکر شده توسط : Padideh
#10
یه سوال دیگه در مورد ftp هستش دیگه گفتم تاپیک باز نکنم .

کد:
<html>
<body>
<pre>
<?php
$filesize="test.php";
$ftp_server ="46.4.12.125";
$ftp_user = "test";
$ftp_pass = "test";
$conn_id = ftp_connect($ftp_server) or die("Couldn't connect to $ftp_server");
$dir=ftp_nlist($conn_id,"/public_html/");
$directory_name =ftp_size($conn_id,$filesize);
if ($directory_name != -1) {
  echo "size of $filesize is $directory_name";
} else {
    echo "Couldn't Get The Size\n";
}
//close the connetion
ftp_close($conn_id);
?>
</body>
</html>
یه اتصال ftp برقرار کرده با یوزر پس که گذاشتم وارد شده سپس رفته تو این دایرکتوری /public_html/ اما نتونست سایز test.php رو برام پیدا کنه من احساس میکنم یه جای کد مشکل داره شرط دوم اجرا میشه . Couldn't Get The Size
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان