2011年11月20日日曜日

PHP を入手する(Windows版)

PHP を入手するには、以下のサイトから
http://jp.php.net/downloads.php/

WindowsBinaries というところを選んで以下のサイトへ移動

http://windows.php.net/download/


VC9 x86 Non Thread Safe を選択する。(現時点の最新バージョンは、5.3.8)



2011年11月19日土曜日

Perl から MySQLを操作する

以下のサイトを参考に

http://www.7key.jp/software/mysql_perl2.html#a_02

http://adgjm.net/saas/sample.htm

PHP でXMLファイルを読み込む

PHP では、XML ファイルを読み込むことができる。以下はそのサンプル


<?php

$root = simplexml_load_file('sample.xml');
foreach($root->children() as $data)
    echo(mb_convert_encoding($data->name . "," . $data->mail . "," . $data->tel,'sjis','utf-8') . "\n");

?>

使った、sample.xmlファイルは以下のとおり
<?xml version="1.0" encoding="utf-8"?>
<datas>
    <data>
         <name>yamada</name>
 <mail>yamada.taro@gmail.com</mail>
 <tel>090-1111-1111</tel>
    </data>
    <data>
         <name>tsuyano</name>
 <mail>tuyano@mac.com</mail>
 <tel>090-1111-1111</tel>
    </data>
    <data>
 <name>hanako</name>
 <mail>hanako@flower</mail>
 <tel>080-7777-7777</tel>
    </data>
</datas>



PHPでxmlファイルを編集する

<?php
function addToXMLData($root,$name,$mail,$tel){ $obj=$root->addChild('data'); $obj->addChild('name',mb_convert_encoding($name,'utf-8','sjis')); $obj->addChild('mail',mb_convert_encoding($mail,'utf-8','sjis')); $obj->addChild('tel',mb_convert_encoding($tel,'utf-8','sjis')); } function saveXMLData($name,$mail,$tel){ $root = simplexml_load_file('sample.xml'); addToXMLData($root,$name,$mail,$tel); $root->asXML('sample.xml'); } echo "input name:"; $name = trim(fgets(STDIN)); echo "input mail:"; $mail = trim(fgets(STDIN)); echo "input tel:"; $tel = trim(fgets(STDIN)); saveXMLData($name,$mail,$tel); ?>

2011年11月17日木曜日

OpenOffice のマクロをコマンドラインから実行するには

例えばコマンドラインから以下のように入力するとOprnOfficeのマクロが実行される。

soffice.exe macro:///Standard.Module1.Main


以下のサイトなどを参考
http://hermione.s41.xrea.com/pukiwiki/index.php?OOobbs2%2F4


以下は、マクロのサンプル



Sub Main

msgbox "hello"

Dim DatabaseContext As Object
Dim DataSource As Object
Dim Connection As Object
Dim Statement As Object
Dim ResultSet As Object

DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
DataSource = DatabaseContext.getByName("kigyou")
Connection = DataSource.getConnection("", "")

Statement = Connection.createStatement()
ResultSet = Statement.executeQuery("select * from 連絡先")

If IsNull(ResultSet) Then
  MsgBox "検索されたレコード件数が0件"
Else
  While ResultSet.next
    sValue1 = ResultSet.getString(1)
 '  sValue2 = ResultSet.getLong(2)
   sValue2 = ResultSet.getString(2)


    msgbox sValue1
    msgbox sValue2
  Wend
End If

Statement.Close()
Connection.Close()
Connection.Dispose()

msgbox "end"



End Sub

2011年11月16日水曜日

Ubuntu11.10 で Apache と PHPを使えるようにする

Ubuntu11.10 でApacheサーバをインストールするには

次のサイトを参考にして
http://dqn.sakusakutto.jp/2008/08/ubuntu-804apache2.html

以下のように入力すればよい。
sudo apt-get install apache2

Webブラウザで、http://localhost/ を指定すると
/var/www/index.html  の内容が表示される。


なお、PHPが使用できるようにするためには以下のサイトを参考にすると
http://builder.japan.zdnet.com/os-admin/20384129/

以下のように入力すればよい。


sudo apt-get install php5 libapache2-mod-php5


なお、phpMyAdmin をダウンロードして、/var/www の配下に解凍することにより使用することができるようになった。

(2014.3.11追記)
phpmyadmin の設定方法については以下のページでも記述しています。

http://chaos-fractal.blogspot.jp/2013/02/ubuntu-1210-mysql.html


mysqlデータベースに接続するPHPのサンプルコードは以下のとおり

--------------------------------------------

<html>

<?php
$server    = '127.0.0.1';
$username  = 'root';
$password  = 'xxxx';

$link = mysql_connect($server, $username, $password);
if (!$link) {
    die('can not connect : ' . mysql_error());
}
echo 'successfully connected';

$db_selected = mysql_select_db('user',$link);
if (!$db_selected){
    die('fail to select database'.mysql_error());
}

$result = mysql_query('SELECT * FROM pass');
if (!$result) {
    die('query fail'.mysql_error());
}

    print("<br>");
while ($row = mysql_fetch_assoc($result)) {
    print($row['id']);
    print("\n");
    print($row['pass']);
    print("<br>");
}
mysql_close($link);
?>

</html>

2011年11月14日月曜日

PHPとUbuntuについて

●PHPについての本を図書館から借りてきました。
以下のサイトからダウンロードしてWindows上でPHPを使い始める方法が書いてありました。

http://jp.php.net/downloads.php



●一方、私の使用しているUbuntu11.10でコンソールから
php と入力してみると以下のように表示されました。

----------------------------
プログラム 'php' はまだインストールされていません。  次のように入力することでインストールできます:
sudo apt-get install php5-cli
----------------------------

言われるままに、コマンド入力するとPHPが使用できるようになったようです。


ファイル名を指定して、そのファイル読み込み画面に表示させるサンプル

<?php
echo "input file name:";
$a = trim(fgets(STDIN));
readfile($a);
?>


●なお、pear と入力すると以下のように表示されました。(phpのpearというのは何でしょう?perlでいうところのcpanのようなものでしょうか?)

-------------------------------------------

プログラム 'pear' はまだインストールされていません。  次のように入力することでインストールできます:
sudo apt-get install php-pear
-------------------------------------------





2011年11月9日水曜日

OpenOffice Baseを使ってみた。

Microsoft Accessの代わりになるかもしれないと思い、OpenOffice Baseを使ってみた。
テーブルをふたつ用意して、リレーションを設定することによりクエリーを作成。
その状態で、クエリーを実行できる。また、クエリーに対応したSQLを表示できる。
SQLを変更すると、それに対応してクエリーのデザインも変更されることを確認。
Accessほど使い勝手はよくないかもしれないが似たようなことができることを確認した。

Windows版の場合にはAccessのmdbファイルに接続してテーブルの中身を見ることができた。(Linux版の場合にはできない)

あとは、Acesss VBAのようなことができるかどうかである。
つまりBasicでプログラミングがどの程度までできるかどうかが気にかかる。
以下のサイトに情報が載っているようである。

http://homepage1.nifty.com/tabotabo/ooo/ooolinks.htm
http://itref.fc2web.com/openoffice/basic/index.html