phpに関するXIAORINGのブックマーク (64)

  • mysqlからmysqliへの変換

    PHP5をPHP7にバージョンアップすることはサーバー側で簡単にできるが、それにより一部ページが表示されなくなる事態が発生し、その原因がmysql()関数がPHP7だと削除されてしまったことであることが判明したため、解決のために調べた内容を書き留めておくことにした。 まず、エラーが分からないと対処が大変なので、php.iniファイルでdisplay_errorsをONにしておくといい。 手書き型 オヴジェクト指向に対応したのがPHP7みたいだけど、まずは接続ができないと話にならないので、手書き型を試す。 mysql命令として一番最初に記述いていたのが以下 <?php //mysql命令(set nameは非推奨みたい) mysql_connect('host_name', 'user_name', 'password') or die(mysql_error()); mysql_selec

  • MySQL関数からMySQLi関数への移行作業メモ - Qiita

    はじめに PHPMySQL関数を利用している場合、早急にMySQLi関数またはPDOへ移行を行う必要がある。 MySQLへの依存を取り除くためにもPDOへの移行が望ましいが、当面MySQLからの移行がないと言い切れる場合、MySQLi関数の手続き型表現を利用することにより、PDOへの乗り換えを行うよりも手間をかけずに移行することが出来る。 繰り返すが、可能ならばPDOへの移行が望ましいため、客先がPDOへの移行にコストがかかるという理由で渋っている場合にのみ参考とすること。 なお、参考コードは全てPHP 5.1系、5.2系、5.4系で動作確認をしている。 世の中には(イントラネット内とはいえ)未だにPHP 5.1系で稼動しているという恐ろしい現場があることを忘れてはならない...。 注意事項 関数の引数順序について MySQLi関数では全ての関数においてMySQLi接続オブジェクト、また

    MySQL関数からMySQLi関数への移行作業メモ - Qiita
  • mysqlからmysqliに移行する(手続き型編) | M+WORKS

    最近mysqlからmysqliに移行する機会があり、とりま自分用にメモ( ..)φ ※接続から切断までのシンプルな置き換え例 MySQLへの接続 //mysql $link = mysql_connect($host, $user, $pass); //mysqli $link = mysqli_connect($host, $user, $pass, $db); MySQLへの接続成否 if (!$link) { //mysql die('MySQL接続エラー'.mysql_error()); //mysqli die('MySQL接続エラー'.mysqli_connect_error($link)); } MySQLDBを選択 ※mysqliはmysqli_connectで指定しているので不要 ※mysqli_select_dbでは$dbと$linkの順番が逆なので注意 $db_se

  • 127.0.0.1では表示されるのにlocalhostだと403エラー! - レンタルサーバー比較メモ

  • XAMPPのPHPの時刻合わせ | mawatari.jp

    XAMPPインストール直後のPHPは、タイムゾーンがEurope/Berlinで登録されているため、日時間からマイナス8時間ずれた状態になっています。php.iniのdate.timezoneを編集し、時刻合わせを行いましょう。 環境環境は以下の通りです。 ソフトウェアバージョン

    XAMPPのPHPの時刻合わせ | mawatari.jp
    XIAORING
    XIAORING 2015/01/30
    xampp php.ini date.timezone
  • phpで画像ダウンロードボタンを作ってみる | 日記の間 | あかつきのお宿

    画像にカーソルを合わせて右クリックすると、コンテキストメニューの中に「名前をつけて画像を保存」みたいなのがありますよね。 まあ、それがあるのだから画像を自分のPCに落としたかったら右クリックで名前をつけて画像を保存すればいいわけなんですが、今回はそれをあえてプログラム組んでダウンロード用のボタンを作ってみましょうと、そんな企画です。 企画といっても、別に難しいことをするわけではないです。実際ソースで書いたら5,6行くらいなもんですからね。 ボタンの設置 とりあえずは、ダウンロードボタンを設置してみましょう。 <a href="/download.php">download</a> ボタンっつってもリンクですね。サイト内にdownload.phpというページがあるとここは仮定してください。 ダウンロード処理 で、そのdownload.phpの中はこんな感じ。 //画像のパスとファイル名 $f

    phpで画像ダウンロードボタンを作ってみる | 日記の間 | あかつきのお宿
    XIAORING
    XIAORING 2014/11/05
    download button content-type
  • PHPでユーザーにファイルをダウンロード「させる」方法 - 動かざることバグの如し

    最近でPDFとか動画もブラウザ内で表示されるのでファイルとして保存されることは少なくなったけど、 あえて任意のファイルをダウンロードさせたい場合はPHPで実現できる <?php //パス $fpath = './a.jpg'; //ファイル名 $fname = '画像名.jpg'; header('Content-Type: application/force-download'); header('Content-Length: '.filesize($fpath)); header('Content-disposition: attachment; filename="'.$fname.'"'); readfile($fpath); こうして例えばdownload.phpとかにしておくと、download.phpにアクセスするとa.jpgが「画像名.jpg」というファイル名でダウンロー

    PHPでユーザーにファイルをダウンロード「させる」方法 - 動かざることバグの如し
    XIAORING
    XIAORING 2014/11/05
    download button content-type
  • XAMPPの設定 | PHP Labo

    XAMPPのセキュリティ設定 XAMPPの初期状態はセキュリティが低く設定されています。不正なアクセスを防ぐため、まずはセキュリティの設定を行います。 XAMPPの管理画面で、左側のメニューから『セキュリティ』をクリックすると、以下のように現在のセキュリティが確認できます。ステータスに3つの『要注意』が表示されているのが確認できます。(クリックすると拡大表示されます。) まずはMySQLの管理者パスワードを設定します。画面に表示されている http://localhost/security/xamppsecurity.php のリンクをクリックします。 『新しいパスワード』と『新しいパスワード(確認)』欄に設定したいパスワードを入力し、『パスワードを変更しました。』ボタンを押します。(この解説ではパスワードを 1234 と設定したものとして進めますが、実際にはもっと複雑なパスワードを設定す

    XIAORING
    XIAORING 2014/09/04
    xampp php.ini 初期設定
  • PHPでクォーテーションが勝手にエスケープされてしまう時は | えすたくぶろぐ

    PHPでフォームから送信された文字列中にシングルクォーテーション( ' )やダブルクォーテーション( " )などの文字を含む時、サーバによって、バックスラッシュでエスケープされたりされなかったりします。 例えばフォームに「Let's note」とか入力してサブミットして、次の画面でその内容を表示しようとしたら、「Let\'s note」という感じでバックスラッシュ(または円記号)でエスケープされてしまうのです。 そして、その値がフォームに入ったまま送信してしまうと、「Let\\\'s note」みたいに今度はバックスラッシュ自体もエスケープされ、バックスラッシュが大増殖してしまうのです。 先日またひっかかりました…orz フォーム作るたびにハマってしまって、毎回「どうやるんだっけな」と調べてるような気がするのでメモしときます。 原因は magic_quotes_gpc = Onphp.in

    PHPでクォーテーションが勝手にエスケープされてしまう時は | えすたくぶろぐ
    XIAORING
    XIAORING 2014/09/04
    xampp php.ini .htaccess magic_quotes_gpc
  • PHP: マジッククオートを無効にする - Manual

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

    XIAORING
    XIAORING 2014/09/04
    xampp php.ini .htaccess magic_quotes_gpc
  • PHP | セッション名の取得と変更 - セッション管理

    セッションを開始した際にクライアントのクッキー名として利用されるのがデフォルトでは「PHPSESSID」となっています。この値をセッション名と言いますが、デフォルト値はphp.iniで設定されています。 上記のようにデフォルトの値はphp.iniで設定されています。もしデフォルト値を変更したいのであれば、php.iniを変更して下さい。 このようにセッション名は必ず固定されているものではないため、プログラム中では固定値の「PHPSESSID」を使って記述してしまうと問題となる場合があります。その為、セッション名を参照したい場合には現在使われているセッション名を取得できる「session_name」関数を使います。 session_name() は、カレントのセッション名を 返します。name を指定した場 合、カレントの セッション名は、その値に変更されます。 セッション名は、リクエストが

    XIAORING
    XIAORING 2014/09/04
    session session_name
  • PHPのエラー画面をリッチにしてくれるライブラリ「PHP Error」:phpspot開発日誌

    PHP Error | error reporting for PHP PHPのエラー画面をリッチにしてくれるライブラリ「PHP Error」。 エラーが発生した際に、何行目がエラーというだけではなく、コードのこの部分がおかしいというところを示してくれ、更にコードのシンタックスハイライト機能などがついている模様。 エラーの行だけではなく、スタックトレースしてくれてコードをさかのぼって閲覧が可能。 それにしてもPHPという言語は年々進化しているわけですが、こういったところも標準でも、もうちょっと進化してもよいのかもと思いました。 関連エントリ Twitter風にエラーや通知をページ上部に表示させるjQueryプラグイン 簡単に使えるクールなPHP用デバッグコンソールライブラリ「PHP Bug Lost」

  • Excelから出力したCSVファイルをphpMyAdminからインポートする - ITコンサルタント成長録

    大量のデータをMySQLデータベースに入れたいことはよくある。そういうとき、元データはExcelであることが多い。 ここでは、Excelから出力されたCSVを、phpMyAdminのインポート機能を使ってインポートする方法を紹介する。 ポイントは4つ。 CSVファイルの文字コードはUTF-8にする フィールド区切りは , (カンマ) にする フィールド囲み記号は " (ダブルクオート)にする カラム名は手動で指定した方が良い phpMyAdminのインポート画面は、テーブル編集画面の上部にあるメニューから、インポート を選ぶことで行ける。(↓) phpMyAdminのインポート画面の設定は次のようになる Excelで出力されるCSVファイルの文字コードはShift-Jisになっているので、何らかの方法でUTF-8にする必要がある。フィールドの囲み記号は " (ダブルクオート)にしよう。 ま

    XIAORING
    XIAORING 2012/10/11
    Excel CSV phpMyAdmin
  • PHP ファイル添付メールフォーム ・・・ファイルアップロード

    フォームに入力した内容を指定したメールアドレスに送信するスクリプトです。文字コードはutf-8。できるだけ汎用性のあるスクリプトを目指しました。このスクリプトの使用者が準備するのは次の3点です。 フォームの構成要素を規定するcsvファイルを作成する。これはエクセル等を使って行います。 実行スクリプトの冒頭で、メール送信先アドレスを設定します。また、二重投稿を禁止するかどうかも設定します。 好みに応じてスタイルシートを編集します。 フォームの構成要素 下図のようにエクセル等を使って設定します。 殆ど自明ですが、 適用欄(A列)がブランクの項目は反映されません。 type欄が select または radio の項目は、対応する配列が用意されています。 data size は許容する最大データサイズ(バイト)。 書式は、入力チェックの function 名に対応しています。ただし file の

  • パソコン雑記

  • 多彩なフレームワークに対応したPHP向け認証ライブラリ·Opauth MOONGIFT

    OpauthはPHP向けの認証ライブラリです。抽象化することで多様なプロバイダーに容易に対応できます。 Webサービスで認証を用意すると言っても今は多様な技術が存在します。単なるID/パスワードに限らず、OpenIDやOAuthもあります。サービスプロバイダーごとに実装も若干変わったりします。そうした認証技術を統合して使えるのがOpauthです。 デモです。 Facebook認証です。 問題なく認証できました。各種データも取得できているのが分かります。 こちらはGoogle認証です。 こちらもユーザプロフィール含めて取得できています。 最後はTwitterです。 はい、問題ありません! OpauthはRubyの認証ライブラリOmniauthにインスパイアされて作られており、認証部分を抽象化することでプロバイダーを切り替えて容易に様々なサービスに対応できるようになっています。技術的にはOpe

    XIAORING
    XIAORING 2012/06/04
    OpenID PAuth library
  • 味のりとこんにゃくゼリーのエンジニアブログ: phpを高速化する60の方法

    2012年3月15日木曜日 phpを高速化する60の方法 01. static にできるメソッドは static として宣言しよう。(4倍速い) 02. echo の方が print より速い。 03. echo ‘文’,'字’; (カンマ区切り)の方が、’文’.'字’ (ドット連結)より速い。 04. ループの最大値は、ループ「内」ではなく「前」にセットしておこう。 05. 大きい配列のような変数は unset() してメモリを解放しよう。 06. マジックメソッド(例: __get, __set, __autoload)は使用を避けよう。 07. require_once はハイコストなのです。 08. include や require でファイルはフルパスで指定しよう。 09. スクリプト開始時間は time() でなく $_SERVER['REQUEST_TIME

  • PEAR 標準コーディング規約

    注意 PEAR 標準コーディング規約は、 PEAR の公式ディストリビューションに含まれるコードに適用されます。 コーディング規約 (Coding standards) は、開発者たちの間ではよく CS と略されます。この規約の狙いは、コードの一貫性を保つことと PEAR の開発者たちがコードを保守しやすくすることにあります。 インデント 空白 4 つのインデントを使用します。タブは使いません。 これにより、diff や patch、CVS history や annotations の際に問題が発生するのを避けることができます。 Emacs を使用する場合、indent-tabs-mode を nil に設定する必要があります。 Emacs を設定するモードフックの例を次に示します (PHP ファイルを編集する際に これがコールされるようにする必要があります)。 (defun php-

    XIAORING
    XIAORING 2011/03/28
    PEAR coding standards
  • 過負荷に耐えるWEBサービス作成のための使えるPHPキャッシュテクニックまとめ:phpspot開発日誌

    過負荷に耐えるWEBサービス作成のための使えるPHPキャッシュテクニックまとめ。 サービス展開というとOSのチューニングや各種インフラソフトウェアのチューニング、更にはWEBアプリプログラム自体の効率化と、幅広い知識が必要になってきますが、PHPでWEBアプリを作る際によく効くキャッシュテクニックを用途・使いどころ別に説明します。 キャッシュをうまく効かせることで大幅に計算量を減らしてより多くのリクエストを少ないマシンで捌くことが出来、コストを下げたり、過負荷の悩みを減らせます。 個人レベルでのWEBサービス開発の場合、サーバ代がお財布を大きく圧迫しますが、最低のコストでサービスを賄うことに繋げられます、ということでPHPでサービス作ってやろうと思っている人は参考にしてみて下さい。 static変数でキャッシュ 特に何も入れなくてもそのまま使えるstatic変数。例えば、関数等で一定の計算

  • より良いPHPerになるための20Tips

    去年の話ですが、海外でこんな記事が上がっていました。 20 Tips you need to learn to become a better PHP Programmer 記事の内容は、かなりレベルが低いです。 しかし、初心者のうちに知っておけば、より早く成長出来るでしょう。 初心者PHPerのために、この記事の翻訳を載せます。 20 Tips you need to learn to become a better PHP Programmer PHPは、同じオブジェクトの扱い方でも複数の書き方を持っている、とても気まぐれなプログラミング言語だ。 詳しくは、私の書いた”The Art of Programming“を読むと良い。 これから書くTipsは、過去のプロジェクトから私が学んだコードの可読性、メンテナンス性を上げ、あなたを素晴らしい、より進んだPHPプログラマーにするもの