sql >> データベース >  >> Database Tools >> phpMyAdmin

PhpMyAdminエクスポート手順の結果

    これは適切な解決策ではなく、回避策です。

    ブラウザの要素インスペクタを使用して、通常のクエリ結果から任意のエクスポートボタンの外部HTMLをコピーし、それをCALLコマンドの結果に貼り付けて結果をエクスポートできます。いくつかの変更が必要です。

    href="tbl_export.php"を使用してアンカータグをコピーする必要があります 通常のクエリエクスポートボタンから。 <a>に注意してください タグにはdata-postがあります 属性。URLエンコードされたフォームデータが含まれます。 data-postのすべてのフィールドの中で 文字列、sql_queryに関心があります およびtable 田畑。つまり、sql_queryを置き換えます。 table フィールドは空白ではありません。

    PhpMyAdminでCALLコマンドを実行するときは、ページ下部のフィールドセットで要素インスペクターを開き、コピーした外部HTMLをフィールドセットの最後の子として貼り付け、sql_queryを編集する必要があります。 sql_queryの値と一致する値 隣接するビューの作成 ボタン。

    次のGreasemonkeyスクリプトは、上記のすべてを自動的に実行し、可能な場合は[強制エクスポート]ボタンを作成します。

    // ==UserScript==
    // @name      Force export button in phpMyAdmin
    // @namespace https://<your phpmyadmin host>/*
    // @include   https://<your phpmyadmin host>/*
    // @version   1
    // @grant     none
    // ==/UserScript==
    
    setInterval(function() {
      // See https://stackoverflow.com/a/35385518/5254685
      /**
       * @param {String} HTML representing a single element
       * @return {Element}
       */
      function htmlToElement(html) {
          var template = document.createElement('template');
          html = html.trim(); // Never return a text node of whitespace as the result
          template.innerHTML = html;
          return template.content.firstChild;
      }
    
      let create_view_a = document.querySelector('span>a.create_view');
     
      if (create_view_a == null) {
        return;
      }
      
      if (document.querySelector('a[href="tbl_export.php"]') != null) {
        return;
      }
    
      let data_post = create_view_a.getAttribute('data-post');
    
      let fieldset = create_view_a.parentElement.parentElement;
      
      let form_data = Object.fromEntries(
        data_post.split('&').map(v => v.split('=', 2))
        );
    
    
      if (form_data['table']) {
        let forced_export_btn = htmlToElement(`
          <a href="tbl_export.php" data-post="${data_post}">
            <span class="nowrap"><img src="themes/dot.gif" title="Export" alt="Export" class="icon ic_b_tblexport">&nbsp;Forced Export</span>
          </a>
        `);
        fieldset.appendChild(forced_export_btn);
      }
    }, 2500);
    



    1. phpMyAdmin-#1267-操作'<'の照合の不正な組み合わせ

    2. 禁止:このサーバーにアクセスする権限がありません、WAMPエラー

    3. PHPでXMLファイルを作成/書き込みますか?

    4. sp_executesqlを使用してSSMS2012がSPのスクリプトを作成しないようにする方法