2010-01-01から1年間の記事一覧

scpで公開鍵認証

「ネットワーク越しにファイルのコピーがしたい」 さらには 「パスワードもいちいち入力せずに行ないたい」という場合は、公開鍵認証を使ってscp scp -i 秘密鍵 コピーしたいファイルパス 受取先パス例)example.netのdb.dumpのコピーを取得(example.com⇔ex…

登録ユーザの情報を確認

select * from pg_userdbname=# select * from pg_user; usename | usesysid | usecreatedb | usesuper | usecatupd | passwd | valuntil | useconfig ----------+----------+-------------+----------+-----------+----------+----------+----------- postg…

TcpWrapperによるアクセス制限

/etc/hosts.allow ...アクセスを許可 /etc/hosts.deny ...アクセスを拒否確認する順番としてはhosts.allowが先になる ①hosts.allowを確認 →記述あり … 許可 →記述なし … ②へ ②hosts.denyを確認 →記述あり … 拒否 →記述なし … 許可 hosts.allow あり あり な…

サイズ指定してファイルを作成

fsutil file createnew ファイル名 バイト数例)1024byteのtest.txt作成 C:\Documents and Settings\owner>fsutil file createnew test.txt 1024 ファイル C:\Documents and Settings\owner\text.txt が作成されました

symfonyのactionでログ出力

sfContext::getInstance()->getLogger()->debug("message");version 1.2.9

文字列の日時をdatetime型に変更する自作関数

function strtodatetime($date) { if (strlen($date) == 14) { list($year, $month, $day) = array(substr($date, 0, 4), substr($date, 4, 2), substr($date, 6, 2)); list($hour, $min, $sec) = array(substr($date, 8, 2), substr($date, 10, 2), substr(…

指定列の重複を確認

SQL

select hoge, count(*) from table group by hoge having count(hoge) > 1;重複している(2以上)項目とその数が表示 +------+----------+ | hoge | count(*) | +------+----------+ | 201 | 2 | | 1009 | 2 | | 1031 | 4 | | 1132 | 3 | | 1157 | 3 | | 120…

バイナリログの自動削除

レプリケーションなどで使用するmysqlのバイナリログは、保存の設定をすると、デフォルトでは削除しない為、ほおっておくとディスクを圧迫していきます。 /var/lib/mysql … mysql-bin.000064 mysql-bin.000065 …例)7日間保持して、以降は削除 my.cnfの設定…

Postgresのyum install時に認証キーで警告

postgreをyumインストールしようとして以下警告。インストールできずに困った。 [root@hoge ]# yum install postgresql-server Loaded plugins: rhnplugin, security Setting up Install Process Resolving Dependencies --> Running transaction check --->…

文字列と数値の相互変換

文字列から数値 int i = Integer.parseInt("123");数値から文字列 String s = Integer.toString(123);

5秒間隔で実行するコード

public class test { public static void main(String[] args) { long time = 0; while (true) { long utime = System.currentTimeMillis() / 1000; if (utime % 5 == 0 && utime != time){ // ココが5秒に一回処理される System.out.println(utime); time …

svn: Local, non-commit operations do not take a log message or revision properties

例)svn del xxxx -m 'コメント' svn ciでも無いのにコメントを残そうとしたら発生

コマンドラインから直接DBを操作

実機では(参照すら)できませんが、エミュレータのみ可能コマンドプロンプトを起動し、以下でDBにアクセスできます。 >adb shell #sqlite3 /data/data/パッケージ/databases/DBファイル例)com.hoge.packageパッケージのsample.dbにアクセス C:\Documents a…

プリファレンスにデータ保存

SharedPreferences sp = getPreferences(MODE_PRIVATE); // MODE_PRIVATE : アプリケーション内のみ有効 // MODE_WORLD_READABLE : 外部アプリケーションから読込み可能 // MODE_WORLD_WRITEABLE : 外部アプリケーションから書込み可能 Editor editor = sp.e…

androidで任意のログを吐かせる

まずは以下をインポート import android.util.Log;あとは任意の場所でログを記述 Log.d("タグ", "表示ログ");実行しつつ、LogCat(※)でウォッチすればログが見れます ※eclipseだと[ウィンドウ]-[ビューの表示]-[その他]-[Android]-[LogCat]選択で表示できる …

コマンドラインで直接アプリをインストール、アンインストール

adbコマンドを実行します。※パスが通っていない場合は直接.exeを叩くインストールはapkファイルのパスを指定します C:\android\android-sdk-windows\tools>adb.exe install "C:\Documents and Settings\owner\wor kspace\HelloMap\bin\HelloMap.apk" 629 KB/…

telnetでブラウズ

とりあえず接続すると、ここまでは表示されます [root@hoge]# telnet d.hatena.ne.jp 80 Trying 59.106.108.77... Connected to d.hatena.ne.jp (59.106.108.77). Escape character is '^]'.最低限のコマンドを入力 [root@hoge]# telnet d.hatena.ne.jp 80 T…

ブラウザを落とさずにプロセスだけ終了させる

ブラウザで重たい処理を実行してしまったとき、 ブラウザの読込み中止を押せば中止できますが、裏で実行はしている為、同じサーバのページを見る際には結局重たいまま待たされる事になります。ブラウザ自体を落とせば復活するのですが、タブの表示を取ってお…

SQL文が長すぎてエラー

SQLSTATE[08S01]: Communication link failure: 1153 Got a packet bigger than 'max_allowed_packet' bytes →サーバに送るパケットが最大サイズを超えているらしい。 SQL文が長すぎても発生するようなので、対象となるSQLの長さを確認*1したところ1.3Mあり…

クエリキャッシュを設定

my.cnfの設定を変更 [root@hoge ~]# vim /etc/my.cnf #query_cache_size = 0 query_cache_size = 32Mmysqlを再起動して変更内容を反映 [root@hoge ~]# service mysql restart Shutting down MySQL.... [ OK ] Starting MySQL. [ OK ]mysql> select * from ho…

インデント整形

vim

「Shift」 + 「-」 (つまり「=」)でインデント整形されます例)ファイル内全てを整形 ggで先頭に行って「=」「G」例)指定行だけ整形 ビジュアルモードで行選択し「=」

session_destroy()をしてもセッションデータが残る

PHP

session_destroyを行っても、その時点で$_SESSIONのデータが消えるわけではありません。以下、3ファイルで動作検証 test.php … セッションデータセット test1.pyp … session_destroy()コール test2.php … 遷移後の確認用ページ[test.php]

オブジェクトのシリアライズ

PHP

オブジェクトをシリアライズしてリクエストに渡してみました var = 3; $hoge = serialize($hoge); if (isset($_REQUEST['hoge'])) { $get_hoge = unserialize($_REQUEST['hoge']); echo $get_hoge->hello(); echo $get_hoge->var; } …

empty()について

PHP

!$varと判定結果は同じだが、宣言していないときのNoticeが出ない if (!$var) { echo '空です'; } // Notice: Undefined variable: var // 空です if (empty($var)){ echo '空です'; } // 空です判定結果のテスト $values = array('', ' ', '0', 0, 1, null,…

issetの判定結果いろいろ

PHP

isset($x);の結果がどうなるか? $x; // false $x = null // false $x = '' // true $x = array() // trueさらに $x = array() isset($x[0]) // falseさらに $x = 1; unset($x); isset($x) // falseまとめ: 宣言のみやnullの代入はfalseを返す 定義していな…

DBのエンコードを変換する

[user@system ~]$ psql -l List of databases Name | Owner | Encoding ---------------------+----------+---------- db_name | owner | UTF8例)S-JISに変換 pg_set_client_encoding($conn, 'sjis');→ブラウザで表示するとDBから取得した文字のエンコード…

POSTデータの数値判定

数値(小数は省く)かどうかを判定したい場合 ctype_digit()を使う。

メソッドチェーン

PHP

メソッドチェーン( こんなやつ → $xxx->xxx()->xxx() )が使ってみたかったので試しに作成してみた。 Class hoge { public function this() { return $this; } public function hello() { echo 'hello'; } } $hoge = new hoge(); $hoge->this()->hello(); /…

同じ名前のPOSTデータ

ボタンを押した箇所の値が上手く送れないケースNGな例: <form method="post" action="delete.php"> <input type="submit" value="削除" onClick="return confirm('この品物を削除しますか?')"> <input hidden name='item' value="1"> <input type="submit" value="削除" onClick="return confirm('この品物を削除しますか?')"> <input hidden name='item' value="2"> </form> 最…

クラスのオートロード

いちいちクラスを使う際に、require(クラス名.class.php)などをするのは面倒なので、autoloadを実装してみた。まずは.htaccess(apacheの *.confでもよい)に以下を記述して、autoloadファイル自体を自動で読込み [.htaccess] php_value auto_prepend_file "…