サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Pixel 9
piyopiyocs.blog115.fc2.com
風の噂で、PHPExcelを使って、Excelを元にPDFを作成できるとの話を聞きました。 マジで? PDFを作成するときってレイアウトの調整が大変なのですよね。 もしExcelをそのままPDF化できるならこの問題が一気に解決じゃないですかぁ(人´∀`) レイアウトは罫線で書いて、幅とかもセルのサイズを調整すれば良いんでしょ? と言う訳で期待に胸を膨らませながら早速試してみました。 手順としては 1.Excelテンプレートを用意 2.「1.」をベースにPHPExcel経由で値を設定してExcel出力 3.「1.」をベースにPHPExcel経由で値を設定してPDF出力 の順番で試してみました。 まずは元となるExcelのテンプレートを用意します。 適当にこんな中身のExcelファイルを用意しましたよっとφ(--) 次に、取りあえずExcelとして出力してみました。 こんなコードを書いてφ(-
ちょっくらLinuxの基礎を学び直そうと思いましてね。 気になったことを取りとめもなく調べていくことにしました。 次に調べたのが「/etc/anacrontab」。 アナクロなのかcronなのかハッキリせいや!と思ったので調べてみました。 ふむふむ(--) anacronさんの設定ファイルでした。 勉強不足で恐縮なのですが、anacronさんの存在を私は今回初めて知りました。 anacronさんはcronさんの親戚で、定期的にタスク実行するためのデーモンさんみたいです。 cronさんとの目立った違いは 1.遅延実行される タスクの実行指定時間になったときにコンピュータの電源が入っていなかった場合、 設定に従い、次に準備OKになったときに実行してくれる。 cronさんは指定時間にコンピュータの電源が入っていなかったら実行を諦める。 2.最短で1日周期の指定しかできない タスク実行の周期として
<a href="https://twitter.com/share" class="twitter-share-button" data-via="aaa" data-lang="ja">ツイート</a> <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.charset="UTF-8";js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script> にしろといった対処法です。 でも、私の場合、これじゃないっ
2.「1.」で用意したバッチファイルの引数として、本来起動したいバッチファイルを指定する で、やれるっちゃーやれます。 本来起動したいバッチファイルの指定を引数ではなくべた書きにすれば、 「1.」で作成したバッチファイルをダブルクリックして動かすこともできますよ。 なお、記載した内容は「powershell.exe」にパスが通っている前提です。 恐らく最初から通っていると思いますが、通っていない場合は何とかしてください。 それでは詳細を書いていきます。 VMWareを使っているのですが、プロセスが常駐するのが気に喰わなくてですね。 以下の2つのバッチファイルを作って、VMWareを動かすときだけサービスを動かすようにしていたのです。 ■vmwarestart.bat
とか実行してあげればOKです。 オプションは適当に付けてください。 それでは詳細を書いていきます。 元々phpMyAdminのエクスポート機能を使ってバックアップを取っていたのですが、 いちいち「phpMyAdmin」を起動するの面倒くさいなーと思っちゃったのが今回のきっかけです。 横着、バンザイ\(--)/ ほんで、あれやこれやと書いて、出来上がったのがこちらφ(--) <?php //DB情報 $id = "ユーザID"; $pwd = "パスワード"; $db = "データベース名"; //出力ファイル名 $fileName = dirname(__FILE__) . '/db_dump.sql'; //コマンド生成 //「/usr/bin/mysqldump -u $id -p$pwd $db > $fileName 」 $cmd = '/usr/bin/mysqldump'; $
をダブルクリック。 その時点でサービスが動いていたら「停止」をクリックして止める。 後は「スタートアップの種類」を「手動」にして適用でOKです。 「Windows Search」さん、さよーなら(--)/~ あれ?よく考えたら「Windows Search」のプロセスって 「SearchIndexer.exe」じゃなかったっけ? と思ったら、サービスを止めた瞬間 ・SearchFilterHost.exe ・SearchIndexer.exe も一緒に消えました。 なるほど。知らない間に ・SearchProtocolHost.exe ・SearchFilterHost.exe の2つが「Windows Search」にお仲間入りしていたのですね。 ちなみにウィルスはオリジナルのプロセスの場合もあれば 既存のプロセスに偽装している場合もあります。 偽装している場合の方が多いのかしら(--?
プログラミング言語や環境設定を中心としたパソコン関連の技術メモです。 主にシステム開発中に調べたことをメモしています。TIPS的な位置付けで、気が向いたときにちまちま更新していきます。
のような内容が出力されていましてね。 「こりゃ、何じゃ(--?」と疑問に思ったのが調べたきっかけです。 WordPressの「wp-login.php」を探しているのと似たような感じだと思ったのですよ。 どっかのCMSか何か付属のファイルで、アタックの前段階として存在チェックをかけてるのかな~と。 そしたら、全然違いました(^^ゞ Windows8.1(+IE11)環境で、サイトをスタート画面にピン留めすると 読み込み対象となるファイルらしいです。 役割的には、Faviconやapple-touch-iconに近いイメージですね。 ということは作っておいておいた方が良さ気かなぁ(--ゞ 早速作ってみることにしました。 ここから先は「browserconfig.xml」の作り方についてずらずらっと書いているので、 興味が無い人は一番下まで読み飛ばしてください。 一番下まで読み飛ばす、つまり、
ちょっくらLinuxの基礎を学び直そうと思いましてね。 気になったことを取りとめもなく調べていくことにしました。 まず調べたのが「/dev/pts」と「/dev/pts/0」。 よく見かけるけど、何じゃらほい?というのが調べたきっかけでした。 ふむふむ(--) 「/dev/pts」は接続しているユーザのデバイスファイルが置かれるディレクトリっぽいですね。 そして「/dev/pts/0」は、接続しているユーザのデバイスファイル名の一つ。 例えばSSHとかで接続すると「/dev/pts/」配下に 「0」という名前のデバイスファイルが勝手に作られます。 このデバイスファイルが「/dev/pts/0」とか呼ばれる奴です。 この状態で2人目が接続すると/dev/pts/配下に「1」という名前デバイスファイルが作られます。 同様に3人目が接続すると「2」が、4人目は「3」が、というように 接続する人が
「$_has_one」とか「$_has_many」とか「$_belongs_to」とか「$_many_many」とか 「よく分からんけど何かめんどくさそー」と敬遠していたのですが、 順を追って見ていったら簡単でした。 要するに「モデル同士をくっつける」ことができるだけなのですね。 もちっとカッコつけて言えば「テーブル(モデル)間の関連性を定義できる」でしょうか。 例えば2つのテーブル「tbl_test01」と「tbl_test02」があったとします。 ■tbl_test01 pk_id【プリマリキー】 column_varchar01 column_int02 column_varchar02 ■tbl_test02 pk_id2【プリマリキー】 test01_pk(tbl_test01.pk_idが入る) column_varchar21 column_int22 column_varc
viewで使用できる入力フィールドに関するメモ書きです。 テキストボックスとかラジオボタンとかそーゆーの。 ※自分用のメモなので随時追記していきます。 ■使うタグ ・テキストボックスは「text_field」を使用する <%= f.text_field :hoge %> ・モデルと関連付けないテキストボックスは 「text_field_tag」を使用する <%= text_field_tag :hoge %> ・チェックボックスは「check_box」を使用する <%= f.check_box :hoge %> ・ラジオボタンは「radio_button」を使用する <%= f.radio_button :hoge,'val1' %> <%= f.radio_button :hoge,'val2' %> ・パスワードは「password_field」を使用する <%= f.password
ちょっくらLinuxの基礎を学び直そうと思いましてね。 気になったことを取りとめもなく調べていくことにしました。 次に調べたのが「/etc/profile」。 「profile」っつーくらいだからプロフィールなんじゃないの? それでは調べてみましょうか。 ふむふむ(--) 全ユーザ共通の環境変数とか起動プログラムとかが書かれているそうです。 sh、bash、ksh、zshのいずれかでログインした際に読み込まれるのだそうな。 てことは、csh、tcshをログインシェルにしている人は関係無いのですね。 ポイントは「ログインした際に」読み込まれる点でしょうか。 例えばcshをログインシェルとしてログインした後で bash とか打ってシェルを切り替えた場合は読み込まれないってことです。 「/etc/profile」はあくまでログインしたときに読み込まれるファイル(--)b 似たような役割のファイル
public function action_test07() { print "■Input::json()<br>\n"; var_dump(Input::json()); print "\n<br><br>■Input::xml()<br>\n"; var_dump(Input::xml()); print "\n<br><br>■Input::uri()<br>\n"; var_dump(Input::uri()); print "\n<br><br>■Input::extension()<br>\n"; var_dump(Input::extension()); print "\n<br><br>■Input::ip()<br>\n"; var_dump(Input::ip()); print "\n<br><br>■Input::real_ip()<br>\n"; var_du
1.「ttfonts/」フォルダの中に.ttfファイルを置く 2.「config_fonts.php」の「$this->fontdata()」にてフォントを定義する 3.「config_fonts.php」の「$this->BMPonly」にもフォントを定義してやる 4.「config_cp.php」の「$unifonts」にてフォントを使いますよ宣言をする 5.呼び出し元(mPDFをnewするところ)でフォントを指定する の手順になります。 それでは詳細を書いていきます。 実際に例を挙げた方が分かりやすいと思うので、 「hoge_font.ttf」を追加すると仮定して説明していきますね。 1.「ttfonts/」の中に.ttfファイルを置く まず「ttfonts/」フォルダの中に「hoge_font.ttf」を置きます。 パスで書くと「ttfonts/hoge_font.ttf」になりま
ゆるい言語代表のPHP、良くも悪くもゆるゆるです。 配列の中身をファイルに保存しておくとかも余裕でできちゃいます。 と言う訳でやりかたφ(--) //配列の中身をファイルに保存 file_put_contents("hoge.dat", serialize($dataArray)); //配列をファイルから読み込み $dataArray = unserialize(file_get_contents("hoge.dat")); serialize/unserializeさん、ばんざーい\(--)/
ファイルへの直リンクやURL欄に直接入力しての参照を禁止する方法です。 「特定のページを経由しないと表示できないようにする」と言った方が正確ですけどね。 ちなみに「PHP」とか書いておいてなんですが、別にPHPである必要性はありません。 単純に直リンクを禁止するだけなら ファイルの直リンクを禁止する(リファラを見るやり方) で書いたようなやり方でも良いのですが、もう少し厳密にやりたくてですね。 Aというファイル(今回はPDFとCSVの二種類のファイル)をBというページから ダウンロードさせたいのですが、それ以外、例えばAへの直リンクや URLを直接入力してAを参照することを禁止したかったのです。 ついでに書くと、Bは利用規約の画面なので絶対見て欲しい。 それを見ない限りダウンロードさせねーぞ!というのが経緯です。 さて、それではやり方ですが、実際のコードを見た方が手っ取り早いと思うので サ
とか書けば大丈夫……だと思うんだけど、どうかなぁ。 「$.ajax()」を使って非同期通信で別のサイトと通信しようとしたのですが、 「No Transport」なるエラーが出てしまい上手く通信できなかったのです。 ってのが、調べたきっかけです。 ちなみに、いろいろ端折ってますが最初はこんな感じのコードを書きましたφ(--) //対象URL var url = "http://piyopiyocs.blog115.fc2.com/"; //非同期通信で取得 $.ajax({ type: "GET", url: url, timeout: 10000, success: function(msg) { alert("success"); }, error:function(XMLHttpRequest, textStatus, errorThrown){ alert(textStatus +
まぁPHPを使ったファイルのダウンロードなんていう奴は、 ヘッダをゴスっ!と書き出して中身をペッと吐き出せば良いので難しいところは無いのですが 「FuelPHPさん用の書き方があるの(--?」と疑問を覚えたので調べてみました。 そして調べてみた結果……普通にPHPで書くファイルダウンロード処理とほぼ同じでした(--ゞ 例えばこんなコードでOKφ(--) public function action_test01() { $downloadFileName = "text.txt"; $res = Response::forge(); $res->set_header('Content-Type', 'application/octet-stream'); $res->set_header('Content-Disposition', 'attachment; filename="' . $
あんま意識しないで使っていたのですが、 よく考えたらJavaScriptさんって「==」(イコール2つ)と 「===」(イコール3つ)があるんですよね。 何が違うの(--? と言う訳で調べてみました。 「==」(イコール2つ)を「等価演算子」、 「===」(イコール3つ)を「厳密等価演算子」と呼ぶそうです。 「厳密等価演算子」は型まで含めて比較するんだそーな。 つまり var num1 = 1; var num2 = "1"; if(num1 == num2){ alert("hoge"); } if(num1 === num2){ alert("hoge2"); } とか書くと"hoge"だけ出てくる訳ですな。 num1は数値でnum2は文字だから。 えっ?別に大した事無いって(--? いやいや、大したことありますよ。 等価演算子「==」(イコール2つ)ですと var num1 = 0;
この記事は「PHP、PHPExcelでExcel出力(ファイル保存)」の内容を 理解していることを前提に書いていますので、 よく分からん方はそちらからご参照下さいm(__)m さて、「PHP、PHPExcelでExcel出力(ファイル保存)」で PHPでのExcelファイル出力の方法を書いた訳ですが、 PHPってことは大部分がWebシステムじゃないですか。 ぶっちゃけどっかにファイル保存する機会より ダウンロードさせる方が圧倒的に多いですよね(--? と言う訳でExcel出力&ダウンロードのサンプルφ(--) <?php //ライブラリ読み込み require_once './Classes/PHPExcel.php'; require_once './Classes/PHPExcel/IOFactory.php'; // PHPExcelオブジェクトを生成する $book = new P
いろいろ便利な部品はあるようですが 取り合えず基本的なところは押さえておかないとね。 と言う訳でファイルのアップロード方法を調べてみましたよっと。 ふむふむ、なるほど(--) アップロード画面のビューは例えばこんなんφ(--) <%= form_tag("hoges/", {:multipart => true}) do |f| %> <input name="target_file" type="file" /> <%= submit_tag("送信", :data => {:disable_with => "Sending..."}) %> <% end %>
でコマンドプロンプトのウインドウを最小化した状態で起動できるので 「バッチファイルを最小化した状態で起動するバッチファイル」を別に用意すればOKです。 更に「バッチファイルを最小化した状態で起動するバッチファイル」を自バッチファイルに組み込んで 自バッチファイルを再帰的に呼び出すようにすれば、1つのバッチファイルでも実現可能です。 それでは順番に見ていきましょう。 まずはバッチファイルを2つ使うバージョンですが、例えばこんなんφ(--) ■C:\test.bat
次のページ
このページを最初にブックマークしてみませんか?
『マコトのおもちゃ箱 ~ぼへぼへ自営業者の技術メモ~』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く