পিএইচপি এবং মাইএসকিউএল: একটি ট্যাব ডিলিমিটেড ফাইলে একটি অনুসন্ধান রফতানি করুন

mysql পিএইচপি লোগো

এই সপ্তাহান্তে আমি এমন একটি পৃষ্ঠা তৈরি করতে চেয়েছিলাম যা কোনও প্রশ্ন বা টেবিলটিকে কেবল কোনও ট্যাব ডিলিমিটেড ফাইলে ব্যাকআপ করবে। নেটে প্রকাশিত বেশিরভাগ উদাহরণগুলিতে কলামগুলি হার্ড-কোডড রয়েছে।

আমার ক্ষেত্রে, আমি কলামগুলি গতিশীল হতে চেয়েছিলাম তাই কলামের নামগুলির সাথে শিরোনাম সারিটি তৈরি করতে আমাকে প্রথমে সমস্ত টেবিল ক্ষেত্রের নামগুলি লুপ করতে হবে এবং তারপরে অবশিষ্ট ডেটা সারিগুলির জন্য সমস্ত রেকর্ডের মধ্য দিয়ে লুপ করতে হবে। আমি শিরোনামটিও সেট করে রেখেছি যাতে ব্রাউজার ফাইলের তারিখ এবং টাইমস্ট্যাম্পের নাম সহ ফাইল টাইপ (txt) এ ফাইল ডাউনলোড শুরু করে।

আমি ডেটাবেস খোলা এবং বন্ধ করার সংযোগটি ছেড়ে দিয়েছি, তবে ফলাফলের কোডটি এখানে বেশ কার্যকর হয়েছে:

$ আজ = তারিখ ("YmdHi");
শিরোনাম ("বিষয়বস্তুর ধরণ: অ্যাপ্লিকেশন / অক্টেট-স্ট্রিম");
শিরোনাম ("বিষয়বস্তু-বিশৃঙ্খলা: সংযুক্তি; ফাইলের নাম =" ""। আজ "" _ ব্যাকআপ। টেক্সট \ "");
$ ক্যোয়ারী = "` মায়র্ডার` দ্বারা `মাইটিবেল` আদেশ" থেকে * নির্বাচন করুন;
$ ফলাফল = mysql_query ($ কোয়েরি);
$ গণনা = mysql_num_rows (rows ফলাফল);
$ ক্ষেত্রগুলি = mysql_num_fields ($ ফলাফল);
$ ডেটা = "";
($ i = 0; $ i> $ ক্ষেত্রসমূহ; $ i ++) for
$ ক্ষেত্র = mysql_fetch_field ($ ফলাফল, $ i);
$ ডেটা। = $ ক্ষেত্র-> নাম;
$ ডেটা। = "\ t";
}
$ ডেটা। = "\ n";
যখন ($ সারি = mysql_fetch_row ($ ফলাফল))
($ x = 0; $ x> $ ক্ষেত্রসমূহ; $ x ++) {
$ ক্ষেত্র-> নাম = $ সারি [$ x];
$ ডেটা। = $ ক্ষেত্র-> নাম = $ সারি [$ x];
$ ডেটা। = "\ t";
}
$ ডেটা। = "\ n";
}
প্রতিধ্বনি $ ডেটা;

কোডটি কমা দ্বারা পৃথক করা মানগুলির জন্যও সহজেই সংশোধন করা যায়।

14 মন্তব্য

  1. 1
    • 2

      আমি মনে করি আপনি পারতেন!

      এই ক্ষেত্রে, আমি আসলে একটি ওয়েব অ্যাপ্লিকেশনটিতে একটি 'ব্যাকআপ' লিঙ্ক তৈরি করছিলাম, সুতরাং পিএইচপি কার্যকারিতা আমার প্রয়োজন। তবে, আমি কখনই জানতাম না যে আপনি সরাসরি মাইএসকিউএল স্টেটমেন্ট থেকে কোনও ফাইলেও লিখতে পারেন। খুব ঠান্ডা!

      ধন্যবাদ!

      • 3

        মাইএসকিউএল সার্ভারটি যদি কোনও রিমোট মেশিনে থাকে তবে আপনার উপায়টি অবশ্যই সবচেয়ে ভাল উপায় হবে, কারণ সম্ভবত এইচএইচপি চলছে এমন মেশিনে এটি লিখতে সক্ষম হবে না 🙂

        যদিও অন্য দিক এবং নতুন জিনিসগুলি উল্লেখ করার জন্য খুশি 🙂

      • 4

        তবে আপনি কেবল একটি ফাইলটিতে ক্যোয়ারী চালাতে পারবেন, এবং উত্পন্ন ফাইলটিতে কেবল ব্রাউজারটি পুনর্নির্দেশ করতে পারেন, বা অন্য সব ব্যর্থ হলে পিএইচপি'র "রিডফিল" ব্যবহার করুন?

        মাইএসকিএল সার্ভারের অবশ্যই ফাইল সিস্টেমে অ্যাক্সেস না থাকলে আপনি তা করতে সক্ষম হবেন না ...

  2. 5

    দুর্দান্ত পোস্ট। আপনি কি কোনও টেবিল-বিস্মৃত ফাইলটি (যেমন আপনি স্রেফ তৈরি করেছেন) মাইএসকিএল ডিবিতে আমদানি / পুনরুদ্ধার করার একটি সহজ, ফ্রি / ওপেন সোর্স পদ্ধতি সম্পর্কে জানেন?

    • 6

      এরআর… মাইএসকিলিম্পোর্ট?

      mysqlimport database_name --local backup.txt

      অথবা এসকিউএল কমান্ড সহ:

      LOAD DATA LOCAL INFILE 'backup.txt' INTO TABLE `my_table` FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n'

      Mysqlimport সহ ফাইলের নামটি টেবিলের নামের সাথে মিলিয়ে যেতে হবে (কেবল কিছু দেখার জন্য)

    • 7
  3. 8

    ইন্টারনেট এক্সপ্লোরার 6/6 কেন ফাইল টাইপ 'এইচটিএমএল' প্রয়োগ করছে এবং শিরোনামে উল্লিখিত আমার কাস্টম ফাইলের নামগুলি স্বীকার করছে না এবং ফাইলগুলি সংরক্ষণ করার অনুমতি দিচ্ছে না তা চেষ্টা করার চেষ্টা করে আমি আমার জীবনের 7 ঘন্টােরও বেশি সময় হারিয়েছি when ব্যবহারকারীরা উপরের মতো একইভাবে তৈরি পাঠ্য ফাইলগুলি ডাউনলোড করার চেষ্টা করছে।

    আমি এইচটিটিপিএস ব্যবহার করছিলাম এবং আইই এই ফাইলগুলি ক্যাশে করে না।

    আমি ব্র্যান্ডন কে-এর একটি মন্তব্যে সমাধানটি পেয়েছি http://uk.php.net/header.

    তিনি বলেন:

    -
    ইন্টারনেট এক্সপ্লোরার 6 এ পিএইচপি এর মাধ্যমে পিডিএফ ফাইল প্রেরণের জন্য আমি নিম্নলিখিত পদ্ধতিটি ব্যবহার করার চেষ্টা করে আমার জীবনের ছয় ঘন্টা হারিয়েছি:

    এসএসএল ব্যবহার করার সময়, ইন্টারনেট এক্সপ্লোরার ওপেন / সেভ ডায়ালগের সাথে অনুরোধ জানাবে, তবে তারপরে বলেছে “ফাইলটি বর্তমানে অনুপলব্ধ রয়েছে বা এটি সন্ধান করতে পারে না। পরে আবার চেষ্টা করুন." অনেক অনুসন্ধানের পরে আমি নিম্নলিখিত এমএসকেবি নিবন্ধ সম্পর্কে সচেতন হয়েছি "শিরোনামে ইন্টারনেট এক্সপ্লোরার ফাইল ডাউনলোডগুলি ক্যাশে নিয়ন্ত্রণ শিরোনামগুলির সাথে কাজ করে না" (কেবিআইডি: 323308)

    পিএইচপি.আইএনআই ডিফল্টরূপে একটি সেটিং ব্যবহার করে: সেশন.কোচ_লিমিটার = নোকেচে যা "নোকেচে" বিকল্পগুলি অন্তর্ভুক্ত করতে সামগ্রী-ক্যাশে এবং প্রাগমা শিরোনামকে পরিবর্তন করে। আপনি পিএইচপি.আইএনআই-তে "নোকাচি" "পাবলিক" বা "প্রাইভেট" এ পরিবর্তন করে IE ত্রুটিটি দূর করতে পারেন - এটি কন্টেন্ট-ক্যাশে শিরোনামের পাশাপাশি প্রাগমা শিরোনামকে পুরোপুরি সরিয়ে ফেলবে। আপনি যদি সাইট-ওয়াইড ফিক্সের জন্য পিএইচপি.আইএনআই পরিবর্তন করতে না পারেন বা না চান, আপনি ডিফল্টগুলি ওভাররাইট করতে নিম্নলিখিত দুটি শিরোনাম পাঠাতে পারেন:

    এটি কাজ করার জন্য আপনাকে উপরে লিখিত হিসাবে কন্টেন্ট শিরোনামগুলি সেট করতে হবে। দয়া করে এই সমস্যাটি কেবলমাত্র ইন্টারনেট এক্সপ্লোরারকেই প্রভাবিত করে নোট করুন, যখন ফায়ারফক্স এই ত্রুটিযুক্ত আচরণ প্রদর্শন করে না।
    -

    আচ্ছা .. কমপক্ষে সে কেবল 6 ঘন্টা ...

  4. 9

    এটি ভাল কাজ করে। যাইহোক, আমি কেবল একটি লাইনে সবকিছু একটি স্পেস দ্বারা পৃথক করে পাই। আমি আলাদা আলাদা লাইনে সবকিছু মুদ্রণের জন্য এটি পরিবর্তন করার চেষ্টা করছি:

    কলাম 1_নাম
    ক্ষেত্র 1_ মূল্য
    কলাম 2_নাম
    ক্ষেত্র 1_ মূল্য
    কলাম 3_নাম
    ক্ষেত্র 1_ মূল্য

    কলাম 1_নাম
    ক্ষেত্র 2_ মূল্য
    কলাম 2_নাম
    ক্ষেত্র 2_ মূল্য
    কলাম 3_নাম
    ক্ষেত্র 2_ মূল্য

    উদাহরণ স্বরূপ:

    নাম
    মাইক
    অবস্থান
    হয়া যাই ?
    সংখ্যা
    1

    নাম
    আদালতে অভিযুক্ত করা
    অবস্থান
    হোম
    সংখ্যা
    2

    নাম
    জন
    অবস্থান
    ভ্রমণ
    সংখ্যা
    10

    ইত্যাদি। এটি করার জন্য কি এই স্ক্রিপ্টটি সংশোধন করা যেতে পারে?
    ধন্যবাদ!

    • 10

      অবশ্যই পারব.

      এরকম কিছু চেষ্টা করুন:

      MyTableName থেকে MyTableName নির্বাচন করুন 'MyTableName_MySQL-TAB-DELIMITED-29JUN08.txt' FIELDS TERMINATED BY 'দ্বারা \ n' লাইনগুলি নিয়ন্ত্রিত '\ n';

      আপনি যদি রেকর্ড গোষ্ঠীগুলির মধ্যে একটি দ্বিগুণ স্থান (দুটি খালি লাইন) চান তবে কেবল "লাইনগুলি '' n \ n 'এর মাধ্যমে সংযুক্ত করুন;" পরিবর্তে.

      "ফিল্ডস টার্মিনেটেড বাই '\ n'" অংশটি যা প্রতিটি রেকর্ডের পরে একটি ট্যাব পরিবর্তে একটি নতুন লাইন রাখে। পরিবর্তে একটি ট্যাব '\ t' হবে।

      মারানাথ!

  5. 11

    এটি অবশ্যই একটি দুর্দান্ত পোস্ট, আমি এটি চেষ্টা করেছি এবং দুর্দান্ত কাজ করেছি, কেবলমাত্র আমার টেক্সট ফাইলটির শিরোনাম শিরোনামের উপরে একটি অতিরিক্ত সারি রয়েছে এবং কিছু ফলাফল 2 টি সারিতে পৃথক করা হয়েছে, এটি আমার কাছে থাকা ডেটার কারণে হতে পারে আমার ডাটাবেসে কোনও ধারণা নেই, তবে এটি ফিডগুলি তৈরি করতে একটি দুর্দান্ত সহায়তা ...

  6. 12

    Douglas Karr আপনার কোড সত্যিই শিলা! এটি খুব দরকারী যদি বিশেষ করে আপনার কেবল এমন পাঠ্যপথের ফর্ম্যাটে থাকা একটি আউটপুট প্রয়োজন। অনেক ধন্যবাদ! ফিলিপিন্স থেকে দল!

  7. 13

    এই যে! এখান থেকে এমন কি এমন কেউ আছেন যে আমার পিএইচপিটিকে আমার সামনের প্রান্ত হিসাবে ব্যবহার করে আমার ডাটাবেস (phpmyAdmin) এ একটি পাঠ্য ফাইল আমদানি করার বিষয়ে আমাকে ইঙ্গিত দিতে পারে? একটি ফাইল ডাউনলোড এবং এটি খোলার বিষয়ে আমার ধারণা আছে, আমার সমস্যাটি হ'ল আমি কীভাবে সারি ফলাফল পেতে পারি এবং কীভাবে এটি আমার টেবিলগুলিতে সন্নিবেশ করব, ধন্যবাদ

  8. 14

    দয়া করে কেউ আমাকে শিরোনাম শিরোনামগুলির উপরে কীভাবে http শিরোনাম সারিটি সরিয়ে ফেলতে হবে তা আমাকে বলতে পারেন

আপনি কি মনে করেন?

এই সাইট স্প্যাম কমাতে Akismet ব্যবহার করে। আপনার ডেটা প্রক্রিয়া করা হয় তা জানুন.