رفتن به مطلب
jistili1

یک سوال مهم در مورد ajax

پست های پیشنهاد شده

سلام دوستان.

ببینید من یک فرم دارم که فقط دو input داره.یک اینپوت متن و یک اینپوت سابمیت.توی اینپوت متن ، کاربر کد imdb یک فیلم رو میده.بعد فرم من با ajax ارسال میشه.فرض بگیریم مقادیر برای صفحه check.php ارسال بشه.حالا من توی صفحه check.php همچین کدی رو دارم:

<?php
if(isset($_POST["btn"]))
{
echo file_get_contents("http://mydiba.club/".$_POST["link"]."/");

?>

<script src="jquery-3.4.1.js"></script>
<script>
$(document).ready(function(){
	$(".-dl .Block_dl").each(function(){
		var href=$(this).find(".dublboxa:first-of-type").attr("href");
		$.ajax({
			url:"check2.php",
			method:"POST",
			data:"link="+href
		});
	});
});

</script>
<?php }
?>

اگه به کد دقت کنید ، وقتی کاربر کد imdb یک فیلم رو وارد کرد ، در صفحه check کل محتویات اون فیلم که در یکی از سایت های دانلود فیلم هست echo میشه.بعد در این قسمت یک ajax دیگه هم داریم که خودش توی یک صفحه check هست.کار این قطعه کد ajax که در جی کوئری نوشته شده اینه که تمامی لینک های دانلود اون فیلم رو از سایت دانلود فیلم بگیره و ببره به یک صفحه check دیگر که در اینجا اسمش check2.php هست.خودتون میتونید کد رو ببینید.حالا اینکه توی صفحه check2.php چی هست دیگه مهم نیست.خلاصشو بگم : من اینکارو کردم ولی همونطور که فکرشو میکردم انجام نشد:D.شما چه راه حلی برای این کار دارید؟در واقع الان با دو تا ajax تو در تو روبرو هستیم.

یک قسمت از کد من اشکال داره یا در کل غیر استاندارد نوشتم؟اگه میشه یه راه حل بگید که اینکار رو بتونم انجام بدم.دقت کنید که اون قسمت از کد جی کوئری که از متد each استفاده کردم ، برای اینه که به ازای هر لینکی که در صفحه اون فیلم در سایت دانلود وجود دارد ، یک بار این ajax که خودش توی صفحه check یک ajax دیگست رو انجام بده.

خیلییی خیلییی ممنون میشم اگه کمکم کنید.

ضمنا از curl هم نمیخوام استفاده کنم:D

به اشتراک گذاری این ارسال


لینک به ارسال

کدهای jquery در مرورگر اجرا میشن نه در سرور به همین خاطر کد jquery شما در صفحه check2 اجرا نمیشه

شما باید از یک parser html مثل domdocument و xpath یا کتابخانه های جانبی مثل simple_dom_html استفاده کنید تا بتونید لینکها رو از صفحه مورد نظر بگیرین و با استفاده از curl اونها رو به صفحه check2 بفرستین

اگه به دلیلی اصرار دارین از curl استفاده نکنین میتونین از کد زیر استفاده کنین

$postdata = http_build_query(
    array(
        'var1' => 'some content',
        'var2' => 'doh'
    )
);

$opts = array('http' =>
    array(
        'method'  => 'POST',
        'header'  => 'Content-Type: application/x-www-form-urlencoded',
        'content' => $postdata
    )
);

$context  = stream_context_create($opts);

$result = file_get_contents('http://example.com/submit.php', false, $context);

 

به اشتراک گذاری این ارسال


لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.


  • مطالب مشابه

    • توسط miladmoqaddam823
      دوستان سلام. 
      چطوری میتونم به انتهای صفحات کتگوری و برچسب ها، متن و توضیحات اضافه کنم؟
      به خیلی از فروشنده های قالب های وردپرس پیام دادم، هیچ کدوم این قابلیت رو ندارن
      حالا الان میخوام با وودمارت کار کنم، اما نتونستم راه حلی پیدا کنم برای این موضوع.
      بعضی قالب ها این امکان رو دارن، اما بالای صفحه نمایش میده، در حالیکه من میخوام انتهای صفحه و زیر محصولات باشه این توضیحات.
    • توسط omid111ashrafi
      با سلام خدمت دوستان در زمینه ajax کردن یک مشکل داشتم که ممنون می شم اگه بتونید راهنمایم کنید.
      در حال ساخت یک قالب وردپرس هستم که یک دیتا تیبل با حجم بالا دارد که از یک پست تایپ کاستوم با حدود 80 فیلد تغذیه می شه و اطلاعات آن داخل یک حلقه وردپرس قرار دارد
      برخی از داده ها = متن، عکس، فیلدبا فرمت php ، استایل، تگ و.....
      و مشکل اصلی زمان لود داده است که تعداد 11 هزارتا ارسال و دریافت وجود داره که باعث میشه مرورگر هنگ کنه
      زمان لود برگه 10 تا دکمه وجود داره که یکیش اکتیو هست و میخوام 9 تا از این داده ها در برگه بارگذاری نشه و با کلیک بر روی دکمه و اشاره به id لود بشه 
      تمام ده تیبل و اطلاعات هر کدام رو به یک فایل PHP انتقال دادم و از سمت دیگر آنهارو اینکلود کردم 
       
      و در آخر میخوام که با کلیک روی هر دکمه اطلاعات داخل یک فایل PHP لود بشه و در لود اولیه سایت 9 فایل لود نشه
       
    • توسط kamalmajd
      با سلام و عرض ادب
      ارور زیر چه چیزی را بیان میکند و چگونه حل میشود؟
      Notice: Undefined offset: 0 in /home/…/wp-content/plugins/wp-parsidate/includes/fixes- permalinks.php on line
    • توسط hosseiny.mahdi
      از افرادی که به صورت تمام وقت تمایل به همکاری دارند دعوت میشود رزومه کاری خود را به شماره انتهای آگهی واتساپ نمایند تا پس از بررسی و مصاحبه با شرایط مناسب دعوت به همکاری شوند.
      ⁦⚙️⁩ موارد تخصصی مورد نیاز:
      ⚫طراح حرفه ای سایت
      ⚫متخصص وردپرس
      ⚫تسلط به پلاگین های وردپرس
      ⚫مسلط به امنیت وردپرس
      ⚫تسلط به css , html5,php , jQuery , JavaScript
      ⚫تسلط به سئو تکنیکال و محتوا
      ⚫تسلط به سفارشی سازی قالب ها و افزونه ها
      ⚫تسلط به اختصاصی سازی قالب وردپرس بصورت بهینه و استاندارد
      ⚫تسلط به AdWords , webmaster tools , analytics
      ⚫توانایی پیاده سازی سایت از روی طرح های psd
      ⚫تسلط به کنترل پنل های هاستینگ
      ⚫تسلط به طراحی ریسپانسیو
      ⚫تسلط به UI ,UX
      ⚫تسلط به عیب یابی و رفع مشکلات وردپرسی
      ⚫ مسلط به لینک سازی صحیح داخلی و خارجی
       
      ⁦⚙️⁩ موارد شخصیتی مورد نیاز :
      ⚫ تعهد کاری بالا و منظم
      ⚫ متخصص حرفه ای در کار خود
      ⚫ سابقه کار حداقل ۲ سال
      ⚫ نمونه کار قوی و متعدد
      ⚫توانایی تجزیه و تحلیل و حل مسئله
      ⚫ مستعد و خلاق
      ⚫ صفر تا صد مسلط به طراحی سایت
      ⚫ متعهد به زمان‌بندی
      ⚫ انجام وظایف محوله با نهایت دقت و ظرافت
      ⚫پایبند به اصول اخلاقی در تعاملات بین فردی و سازمانی
      ⚫ توانمندی کار تیمی
      ⚫ تمایل به ارتقاء و پیشرفت
      ⁦⚙️⁩ برخی ویژگی‌های مشمول:
      ⚫ حقوق ثابت عالی
      ⚫ ایاب و ذهاب
      ⚫ بیمه تامین اجتماعی
      ⚫ عیدی
      ⚫ پاداش
      ⚫ کارمزد مجزا برای هر پروژه
      ⚫ قابلیت ارتقاء جایگاه
      ⚫ نزدیک مترو
      ⚫از ۹ صبح تا ۱۸ و پنجشنبه ها تا ۱۴
      ⚫استخدام کارآموزان قوی(پس از یک ماه کارآموزی و رضایت)
       
    • توسط Reka
      برای نوشتن یک متن در فایل از تابع fwrite() در زبان PHP استفاده میشود.

      این تابع دو مقدار ورودی دریافت میکند، مقدار ورودی اول یک شی از نوع File handler (هندلر) بوده و مقدار دوم رشته ای (String) که میخواهیم درون فایل نوشته شود را مشخص میکند.
       
      $txt = "This is a test text!"; fwrite($file, $txt); نوشتن درون فایل با تابع fwrite

      میتوانیم تابع fwrite() را روی یک فایل باز شده چندین بار صدا بزنیم و در ادامه اطلاعات نوشته شده قبلی، اطلاعات دیگری بنویسیم. برای مثال قطعه کد زیر یک متن را در دو خط پشت سر هم درون فایل مینویسد.
      $txt = "This is a test text!"; fwrite($file, txt); fwrite($file, "\n"); fwrite($file, $txt); $txt = "This is a test text!"; fwrite($file, txt); fwrite($file, "\n"); fwrite($file, $txt); در پایان کار با فایل، می بایست فایل باز شده را ببندیم و مشخص کنیم که دیگر با این فایل کاری نداریم. در صورتی که عملیات بستن فایل انجام نشود، تغییرات انجام شده روی فایل اعمال نخواهد شد.

      برای بستن فایل باز شده از تابع fclose() استفاده میکنیم که به عنوان تنها ورودی، متغیر مربوط به File Handler را ورودی میگیرد.
      fclose($file); اکنون فایل options.ini ما محتوایی مشابه زیر خواهد داشت.
      This is a test text! This is a test text!  
×
×
  • اضافه کردن...