انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید


توزیع گنو/لینوکس اوبونتو ۲۰ ساله شد 🎉

نویسنده موضوع: چگونه یک file با قالب html را اعتبار سنجی کنیم؟  (دفعات بازدید: 1704 بار)

0 کاربر و 2 مهمان درحال مشاهده موضوع.

آفلاین rahmani

  • Sr. Member
  • *
  • ارسال: 291
سلام
یک برنامه php دارم که اطلاعات چندتا file با قالب html را پردازش میکند. برای نمونه یک  file کوچک ( در حد کیلو بایت) را امتحان کردم. درست کار میکند اما فایلهای اصلی با همان format که حجمشان حدود ۲ تا ۳ مگا بایت هست را پردازش نمی کند.

از آنجا که حجم اصلی file های اصلی خیلی زیاد هست توان و فرصت این کار را ندارم که همه آنها را بررسی کنم. ممکن است خطا بخاطر حجم بالای file باشد?????
$html = file_get_html('file.html');

foreach ( $html->find('line') as $value ) {
}
وقتی می خواهد file اصلی را پردازش کند خطای زیر را می دهد.
Fatal error: Call to a member function find() on a non-object...این نمونه از متن فایل است:

<line><isbn>072160241X</isbn><isbn>9780721602417</isbn></line>
<line><isbn>1859962505</isbn><isbn>9781859962503</isbn><isbn>9780585400693</isbn></line>
<line><isbn>0470848723</isbn><isbn>9780470848722</isbn><isbn>9780470094099</isbn></line>
<line><isbn>9780060765316</isbn><isbn>0060765313</isbn></line>
« آخرین ویرایش: 21 امرداد 1392، 10:25 ق‌ظ توسط rahmani »
اگر در صحنه حق و باطل زمان خويش نيستي، هر جا كه خواهي باش....
 دكتر علي شزيعتي مزيناني

آفلاین MrGee

  • Full Member
  • *
  • ارسال: 110
  • جنسیت : پسر
من حدس می زنم مشکل از فایل اصلی باشه و تگهای htmlش یه جا مشکل داره.
با برنامه ها یا سرویس های html validator چک کنید ببینید فایل اصلی سالمه یا نه.

آفلاین Matrix.1372

  • High Hero Member
  • *
  • ارسال: 1966
  • جنسیت : پسر
  • Ma3x
    • Ma3x
همچنین مقدار memory_limit رو تو فایل تنظیمات php افزایش بدید مثلا ۵۱۲ مگابایت که میشه 512M
برای ویرایش:
sudo nano /etc/php5/apache2/php.iniفایل رو با ctrl+o ذخیره کنید و:
sudo service apache2 restart

آفلاین rahmani

  • Sr. Member
  • *
  • ارسال: 291
من حدس می زنم مشکل از فایل اصلی باشه و تگهای htmlش یه جا مشکل داره.
با برنامه ها یا سرویس های html validator چک کنید ببینید فایل اصلی سالمه یا نه.

ممنون

ممکن هست یک نمونه کوچک و ساده مثال بزنید؟

توی لینوکس چه برنامه هایی برای این کار هست؟ توی چند سایت html validator  تلاش کردم جواب نگرفتم

ممنون
اگر در صحنه حق و باطل زمان خويش نيستي، هر جا كه خواهي باش....
 دكتر علي شزيعتي مزيناني

آفلاین MrGee

  • Full Member
  • *
  • ارسال: 110
  • جنسیت : پسر
تو لینوکس نمی دونم چه برنامه هایی هست ولی با php باید بشه این کارو کرد کافیه تابع مورد نظر رو سرچ کنید.
البته فکر کنم با خود مرورگر هم میشه این کارو کرد کافیه بعد لود کردن فایل تو قسمت developer tools دنبال console یا همچین چیزی بگردید، اونجا اصولا باید خطای های فایل رو نوشته باشه. در کل اگه با همین developer tools ور برید فکر کنم به نتیجه برسید. اگه نشد هم حتما افزونه ای برای این کار هست.

آفلاین nixoeen

  • ناظر انجمن
  • *
  • ارسال: 4872
  • جنسیت : پسر
  • masoft قدیم
توی تنظیمات PHP بزنید که تمامی Errorها و Warningها رو نشون بده و بهتون نشون می‌ده چرا درست کار نمی‌کنه.

آفلاین rahmani

  • Sr. Member
  • *
  • ارسال: 291
پاسخ : چگونه یک file با قالب html را پردازش کنیم
« پاسخ #6 : 21 امرداد 1392، 10:24 ق‌ظ »
سلام

خب من هم این خط ها
display_errors = On
error_reporting = E_ALL
را فعال کردم یعنی semicolon را در php.ini برداشتم. که اخطارهای زیادی هم نمایش داد. اما اکنون وقتی این دستورها را مینویسم که file را می گیرد و میخواهد آن را پردازش کند
$path = 'isbn.html';
$html = file_get_html($path);

foreach ( $html->find('line') as $value ) {
....}
فقط میگوید:
Fatal error: Call to a member function find() on a non-object
« آخرین ویرایش: 21 امرداد 1392، 10:26 ق‌ظ توسط rahmani »
اگر در صحنه حق و باطل زمان خويش نيستي، هر جا كه خواهي باش....
 دكتر علي شزيعتي مزيناني

آفلاین nixoeen

  • ناظر انجمن
  • *
  • ارسال: 4872
  • جنسیت : پسر
  • masoft قدیم
پاسخ : چگونه یک file با قالب html را اعتبار سنجی کنیم؟
« پاسخ #7 : 27 امرداد 1392، 04:36 ق‌ظ »
فایلی که دارید رو یک جایی آپلود کنید و من می‌تونم تستش کنم ببینم مشکل چیه.