タグ

PHPに関するTakahashiMasakiのブックマーク (30)

  • 書籍「気づけばプロ並みPHP」にリモートスクリプト実行の脆弱性

    書籍「気づけばプロ並みPHP」のサンプルスクリプトにリモートスクリプト実行の脆弱性があるので報告します。 はじめに Yahoo!知恵袋の質問を読んでいたら、以下の質問がありました。 気づけばプロ並みPHP (著)谷藤賢一 (発行)リックテレコムP112の画像をアップロードする機能でエラーがでます。 http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q11119835496 より引用 質問に対しては回答が既についてクローズされていましたが、引用されているソースを見て任意のファイルを任意のファイル名で、Web公開ディレクトリにアップロードできることに気づきました(下記)。 <?php // 略 $pro_gazou=$_FILES['gazou']; // 略 if($pro_gazou['size']>0) { if ($pro_

    TakahashiMasaki
    TakahashiMasaki 2014/01/27
    (プロ並み……
  • PHPでJPEG画像をアスキーアートに変換するサンプルプログラム:phpspot開発日誌

    JPG to ASCII Converter - Snippet PHPでJPEG画像をアスキーアートに変換するサンプルプログラムが公開されています。 サービスに使うのもありですし、使い方次第で面白いことができそうです。 関連エントリ PHPで画像を扱うサンプルコード色々 PHPでタグクラウド実装サンプル PHPでFTPファイル送信するサンプルコード

    TakahashiMasaki
    TakahashiMasaki 2008/12/11
    これ,画像のどっとと同じ色の"#"を置いてるだけか
  • PHP入門 - 配列

    配列はキーとその値を持った組み合わせの集まりです。 配列に値を代入する時、キーを省略すると配列の個数+1がキーとなります。 下の例の中の「print_r」は変数の情報を返す関数です。 print "<pre>"; $a1 = array("Sunday", "Monday", "Tuesday"); $a2[0] = "Sunday"; $a2[1] = "Monday"; $a2[2] = "Tuesday"; $a3 = array(0 => "Sunday", 1 => "Monday", 2 => "Tuesday"); print "--- \$a1 ---\n"; print_r($a1); print "--- \$a2 ---\n"; print_r($a2); print "--- \$a3 ---\n"; print_r($a3); pri

  • PHPのキャラクターはなぜ象なのか?:phpspot開発日誌

    おぎろぐはてな - 象のelephpantのぬいぐるみ PHPのキャラクターにぞうさんがいます。talks.php.netあたりで、動いているやつです。名前は "elephpant"。"elephant" でなく、 "elePHPant" なのです。 PHPのキャラクターはなぜ象なのか?と前々から思っていたところ、次の図がその理由だそうです。 これは納得&感動ですね。 PHP象のぬいぐるみもここで紹介されていて、買えるようになるということです。 PHPマニアな方は是非とも持っておきたいところですね。 関連エントリ PHPの隠し機能について

    TakahashiMasaki
    TakahashiMasaki 2007/07/02
    (これは知らなかったの(ぞうさn……
  • PHP: PHP マニュアル - Manual

    Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Enumerations Errors Exceptions Fibers Generators Attributes References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Predefined Attributes Context options and parameters Su

    TakahashiMasaki
    TakahashiMasaki 2007/06/27
    (やっぱオフィシャルが一番いい
  • PHP: include - Manual

    include (PHP 4, PHP 5, PHP 7, PHP 8) include 式は指定されたファイルを読み込み、評価します。 以下の記述内容は require にも当てはまります。 ファイルのインクルードは、指定されたパスから行います。パスを指定しない場合は、 include_path の設定を利用します。 ファイルが include_path に見つからないときは、include は呼び出し元スクリプトのディレクトリと現在の作業ディレクトリも探します。 include は、ファイルを見つけられない場合に E_WARNING を発行します。一方 require の場合は、同じ場合に E_ERROR を発行する点が異なります。 include と require は、 ファイルがアクセスできない場合、 最終的に E_WARNING や E_ERROR を発生させる前に、 追加の

    TakahashiMasaki
    TakahashiMasaki 2007/06/27
    include文の用法
  • えせSEの1日1Hack : 1サーバに、PHP5とPHP4の環境を構築する

    社内勉強会で、話した内容をまとめてみました。 PHP5で作ることが、ようやく出てきたので、各自のローカルの環境に、必要になったのと同時に、今までのメンテナンスをするためにも、PHP4は必須なので、今回は、1サーバにPHP4とPHP5を共存させる方法です。 PHP4と5を入れる以外にも、それぞれのPHPがアクセスするDBMySQL4.1とMySQL5.0という構成にしています。これは、社内の環境がこのようになっているためです。DBは1つでいいという場合は、ご自身で工夫してください。 環境は、Ubuntu7.04-jaを利用しています。 今回の構成 最終的には、上図のようになります。標準パッケージで、Apache2.2にPHP5、MySQL5.0をインストールします。そして、ソースから、Apache2.0とPHP4、MySQL4.1をインストールします。 この際に、Apache2.0はポート

  • PHP でグラフを作る (gd/JpGraph編)

    インストール手順 (スーパーユーザーで作業) # gzip -dc zlib-1.1.4.tar.gz | tar xf - # cd zlib-1.1.4 # ./configure (ダイナミックライブラリを作りたければコマンドラインオプション --shared を指定しておく) # make # make install # gzip -dc libpng-1.2.7.tar.gz | tar xf - # cd libpng-1.2.7 # cp scripts/makefile.OS Makefile (OS は、インストールする OS のタイプを指定:linux, solaris ...) # make # make install # gzip -dc jpegsrc.v6b.tar.gz | tar xf - # cd jpeg-6b # ./configure --ena

  • MOONGIFT: » PHPでグラフを作るなら「Image_Graph」:オープンソースを毎日紹介

    DB内に蓄えたデータは何のためにあるか。それは何らかの出力を行うためにある。HTMLなのか、メールなのか、CSVPDF…種類は様々だが、結果的にデータは出力されるために存在する。 出力形態の一つにはグラフも存在する。意外と面倒なプログラムからのグラフ出力、専用のライブラリを使って手軽に作成してみよう。 今回紹介するオープンソース・ソフトウェアはImage_Graph、PHPでグラフを作成するPEARライブラリだ。 Image_Graphは元々、GraPHPiteというライブラリで、PEARへの登録を行う上でImage_Graphに名前が変わったようだ。公式サイトには数多くのサンプルが掲載されているのでぜひ見てみて欲しい。 直線的なものや滑らかな曲線のもの、二軸のグラフや複数の種類のグラフを重ねることもできる。また、背景は単色だけでなく画像を指定してすかして表示する事も可能だ。尚、利用には

    MOONGIFT: » PHPでグラフを作るなら「Image_Graph」:オープンソースを毎日紹介
  • JavaScript++かも日記 - 1997年からの

    Testnetがアップデートされたのは知ってたけれど、libra-authのデモも動かなくなったのでちょっと調…

  • PHPエディタ

    PHPのプロ達が集まる日PHPユーザ会のメーリングリストで鍛え上げられた国内最強のPHPエディタ。コードはかなり正確な色分けで見やすく、迷子になってしまう関数やクラスをコードエクスプローラが管理しワンクリックでジャンプできる。また、文字コードの扱いにも配慮があり Shift-JIS,EUC-JP,JIS,UTF-8,Unicode(Bigendian),Unicode(LittleEndian) の変換が容易。もちろん、簡易プロジェクト管理機能でファイルを一元管理できたり、 条件検索など基的な機能もサポートされている。

    TakahashiMasaki
    TakahashiMasaki 2007/06/09
    (PHPエディタのサイトリンク集
  • http://neta.ywcafe.net/000743.html

    TakahashiMasaki
    TakahashiMasaki 2007/06/04
    (Cさえやってれば簡単に読めるのもな
  • 正規表現:メールアドレスかどうか調べる - phpspot

    下記、正規表現は当に簡単なチェックで、厳密なチェックをしたい場合は別途検索エンジンなどで調べた方がいいでしょう。参考として、PHPでメールアドレスかどうか調べる方法や、こちらのページで紹介されているようなメールアドレスの正規表現が存在します。 あくまで簡易なので、厳密な正規表現を書きたい方は、小飼弾さんのブログを参照するのが良いかもしれません→メールアドレスの正しい正規表現 <?php $text = "mail@mail.com"; if (preg_match("/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/", $text)) { echo "正しいメールアドレスかもしれません"; } else { echo "正しくないメールアドレスではないかもしれません"; } ?> <?php

    TakahashiMasaki
    TakahashiMasaki 2007/05/30
    (正解みてしんだ(こんなの書けん
  • 釣られてみる? - elf's blog

    っていうのはウラタロスだっけ.っていうかこれ当にdankogaiのエントリなんだろうか.って位納得できない根拠のインパクトが強いです. とか書けばいい。しかし、PHPでいろいろやるためには、実際にはさまざまなライブラリーをあらかじめインストールした上で、PHPをそれに合わせてconfigureしなおさなければならない。こうして作られたlibphp#.soは、どれも微妙に、しかしユーザーにとっては耐え難く異なる。 % sh configure --help の出力が390行(5.2.2現在)というところからして、もうシステム管理者の頭痛の種。なんでもかんでもぶちこめば、やたら重いApacheが出来上がるし、かといっていろいろ削ればあとでユーザーに「なんでXMLが扱えないの?」とか突っ込まれることになる。 PHP自体を構築しなおさなくてよいです. ライブラリの依存関係は共有ライブラリを使うな

    釣られてみる? - elf's blog
    TakahashiMasaki
    TakahashiMasaki 2007/05/22
    "例えばPHPでMySQLをバックエンドにしているウェブサービスは他言語ならMySQLを使用せずにその言語だけで同等のクオリティのサービスを同等の速度で開発・運用できるんでしょうか"
  • 「そろそろPHPに関して一言いっとくか」について - Do You PHP はてブロ

    「どっちの言語が優れている」とか「この言語はダメだ」っていうのは、言語の作者 or 熱狂的な信者しか関係ないんじゃないですかね?一般的なユーザー無視で。 404 Blog Not Found:そろそろPHPに関して一言いっとくか あちこちのblogやコメント欄では反対意見で盛り上がってますが、どうも「重箱の隅の突き合い」みたいな感じがしてます。まあ、PHPを普段から(それなりに)使ってる身からすると基的には上鍵さんの意見と同じです。以下、○:賛成、×:反対ということで。 使うは天国、インストールは地獄 × extensionは最初からsharedで作っておいて、いらなきゃextension書かないだけ Webアプリ以外作る気にならない △ 「<?php」ですね :-) エディタ側で何とでもなりそうだけど。確かに現時点では「Webに特化した言語」のイメージが強いですが、CLIで使ってみると

    「そろそろPHPに関して一言いっとくか」について - Do You PHP はてブロ
  • [ThinkIT] 第1回:今だからこその「PHPのすすめ」 (1/3)

    オープンソース、特に「LAMP(Linux、Apache、MySQLPHP)」が喧伝されてから久しいですが、それでも実際に現場に身を置いていると、まだまだPHP技術者不足を感じることがあります。 PHPだけがプログラミング言語ではありませんが、今後様々な意味においてPHPを使った開発をはじめとした技術が必要になるでしょう。そこで、連載では3回にわたり、PHP開発の「光」と「影」について解説します。 一般的に「PHPは習得しやすい」といわれています。これは、例えばJavaと比較して、新入社員が現場で実際にプログラミングできるようになるまでの育成時間に着目すれば、その差は明らかでしょう。 Javaが難しいといわれるのは、Javaが言語として難しいというよりもオブジェクト指向の考え方を理解することが容易でないからだと考えられます。同じプログラム言語というカテゴリ分けで、単純にJavaPHP

  • 愛と苦悩の日記: XAMPP上のPHP+MySQL文字化け解決

    70年代生まれの人々のためのWebサイト think or die の「愛と苦悩の日記」をブログ化 1997/12/13から現在まで、日常生活をテツガクするエッセー集 中国の歌やドラマ関係も。ジェイド・イン(Jade Yin)、alan「懐かしい未来」、『地下鉄の恋』など。 XAMPP for Windows Version 1.5.0-pl1をWindowsサーバに導入して、PHP(文字コードはシフトJIS)からMySQL5.0.15-nt内の日語データを検索・表示するかんたんなスクリプトを作成したのだが、日語部分が「????????」と文字化けしてしまう。同じPHPからOracle9iの日語データを検索・表示しても文字化けしないので、MySQLの設定に問題があることが分かった。 そこでmy.cnfで[mysqld]セクション(サーバ側)の文字セットをsjisに変更したの

    TakahashiMasaki
    TakahashiMasaki 2006/12/06
    (ある命令をMySQLに入れないと文字コードが変更されない?(←自分のかいしゃく
  • PHP入門

    PHP入門 この章では、PHPの作成を支援するために解説しています。PHPは、Webアプリケーションを開発するためのプラットフォームで、現在最も多く使用されているオープンソース・ソフトウエアの1つです。PerlJava言語などと比較すると、習得しやすさや柔軟性に優れ、短期間で開発できる利点があります。 各ページでは、まだまだ手を入れなければならない個所がありますが、いずれ時間をかけて充実させていきたいと考えています。ご了承ください。 なお、ここで掲げる PHPに関する記述に重大な誤りやミスがありましたら、メールにて、ご連絡いただけると大変助かります。 ■ PHP入門目次 PHPとは PHP作成の環境作り PHPプログラムの基構造 定数と変数 配列 演算子 文字列 ループ (繰り返し処理) 条件分岐 ユーザ定義関数 クラスとオブジェクト 日付と時間 画像処理 セッション管理 正規表

  • PHPエディタ - フリーのwindows用php統合開発環境 - phpspot

    4/22 バージョンUP バージョンアップの詳細→PHPエディタVerUpinfo プロジェクト管理やgrep機能などのついたPHP統合開発環境(IDE) vectorのものは古い(v1.40)ので最新版を手に入れてください(2004/02/17) 累計50万ダウンロード突破(2010/12/25) スクリーンショット (クリックすると大きく表示されます) 対応OS Windows98/Me/2000/XP (2000 or XP 推奨) PHPエディタの特徴 ( リンクをクリックすると詳しい説明を表示します。) ・フリーウェアですのでお手軽に利用いただけます。 ・ややこしい初期設定は不要。PHPに特化されているので初心者の方もすぐに使い始められます。 ・予約語、変数名、コメント等エディタの色分けが自由に可能。分かりやすい色分けでケアレスミスを 未然に防ぎます。(v1.35より予約語、予約

  • 離れPHP島

    No23.ねぇねぇ、これ、見て♪($_FILES変数) ----画像をアップロード 画像付きの掲示板や自分のPCにある画像を 自分のページにFTPソフトを使わないでアップロード って「なんか難しそう・・・・」だなぁって感じがしますね。 それが意外と簡単に思えるかも。(^_^) <INPUT NAME="img1" TYPE="file"> $img1 = $_FILES['img1']; $img1tmp = $_FILES['img1']['tmp_name']; $img1name = $_FILES['img1']['name']; $img1size = $_FILES['img1']['size']; $img1type = $_FILES['img1']['type'];