検索結果
PHP
- 全てのカテゴリ
- 全ての質問
- 仮想ドライブにあるソースをrequireするには?
WindowsでのPHPプログラミングに関する質問です。 コマンドプロンプトで、substを利用して仮想フォルダを作成しました。 ところが、phpプログラムからrequire_once()を使って その仮想フォルダ内のソースを読み込もうとするとエラーとなります。 どうすればこの問題が解決できるでしょうか? require_once()の処理では、substによる仮想フォルダは無視されるのでしょう? よろしくお願いします! 【具体的な内容(一部伏字です)】 ・仮想フォルダ > C:\WINDOWS\system32>subst > H:\: => C:\usr\local\phpdata > C:\WINDOWS\system32>tree /F h:\ > フォルダ パスの一覧: ボリューム IBM_PRELOAD > ボリューム シリアル番号は XXXX-XXXX です > H:\ > └─project1 > xxxx.php ※cat H:\phpdata\project1\xxxx.php ではちゃんとxxxx.phpの内容が表示されます ・require部分のソース require_once('H:/project1/xxxx.php'); ※require_once('C:/usr/local/phpdata/project1/xxxx.php'); なら正常にソースが読み込まれます ・エラーログ PHP Fatal error: require_once() [<a href='function.require'>function.require</a>]: Failed opening required 'h:/project1/xxxx.php' (include_path='.;C:\PHP\pear') in C:\.....\yyyy.php on line 11
- この2年間に何か動きでもありましたでしょうか?
PHPから2年ほど、離れていましたので、この間PHPの世界で何が起きていたかわからず、世の中の趨勢と全然違うことをしているのではないかと 心配になってきました。 PHPで何か新しいことはあったのでしょうか? フレームワーク、PHP5の言語の変更、PHP6?、セキュリティなど 話題は何でも良いです。 主にLinuxとWindowsでPHP5を使用する予定です。
- mod_rewriteについて
.htaccessにて、mod_rewriteを使用して、URLの書き換え を行いたいのでがうまく動作してくれません。 上記の記述で http://www.aaaaaaa.jp/php/user/bbb/index.php を http://www.aaaaaaa.jp/bbb/ に変更したいのですが どのように記述したら、動作するのでしょうか。 ご教授をお願いします。 RewriteEngine on RewriteRule ^bbb$ /php/user/bbb/index.php [L] 上記だと、http://www.aaaaaaa.jp/php/user/bbb/index.php のままです。
- ベストアンサー
- PHP
- small_1137
- 回答数1
- mb_convert_encoding() エラー
http://www18.tok2.com/home/koumori27/xml/pxml/pxml2.htmlのxmlpaser_sample1.php3を自分のパソコンで試したら、Fatal error: Call to undefined function: mb_convert_encoding() in c:\php\xmlpaser_sample1.php on line 99と出ました。 http://www.php.net/manual/ja/ref.mbstring.php#ini.mbstring.languageに書いてある 例 1. php.ini 設定の例 mbstring.language = Japanese; mbstring.internal_encoding = UTF-8 ; mbstring.encoding_translation = On mbstring.http_input = auto ; mbstring.http_output = UTF-8 ; mbstring.detect_order = auto ; mbstring.substitute_character = none ; と http://oshiete1.goo.ne.jp/kotaeru.php3?q=293266 に書いてある方法を試しましたが Fatal error: Call to undefined function: mb_convert_encoding() in c:\php\xmlpaser_sample1.php on line 99 が直りません。 どうすれば直るのでしょうか?
- PHPINFOが見えない
自分のパソコンでPHPの勉強をしていますが 悪戦苦闘しています。 http://localhost/にアクセスすると 「予想に反して・・・」が表示されます。 C:\Program Files\Apache Group\Apache2\htdocs\phpinfo.phpには <?php phpinfo(); ?> と書いたスクリプトがあります。 http://localhost/phpinfo.phpにアクセスしても 「ページが表示できません」にもならず、 現在のページがそのまま動きません。 一瞬、何かをダウンロードするような画面が見えますが・・・。 http://localhost/phpinfo.php が見えるようにするにはどうしたらいいか教えてください。 OSはXPPro(IIS自動起動停止済) Apache2.0 PHP5(Cドライブ直下にphpフォルダ内に設定) 参考書籍は「実戦マスターPHP+MySQL」ソーテック社 ウィルス対策ソフトはウィルスバスター2008 php.iniはWindowsフォルダにあります。
- テキスト等のコードの置換方法
テキスト等のコードの置換方法 viewthread.php?tid=171266&page=11#pid120622 上記のようなコードを下記のように書き換えたいです redirect.php?goto=findpost&pid=120622 既存のコードは下記のように数列はバラバラです viewthread.php?tid=171266&page=11#pid12063 viewthread.php?tid=17126&page=21#pid12001 viewthread.php?tid=191266&page=15#pid12422 viewthread.php?tid=1715&page=1#pid220622 viewthread.php?tid=211269&page=21#pid32062 (1)viewthread.php?tid=(数列1)&page=(数列2)#pid(数列3) (2)redirect.php?goto=findpost&pid=(数列3) (1)を(2)のような形式に直していきたいのですが 置換などでうまく変換できません 正規表現などでどう記載すればよいかも教えて頂きたいです ご教授いただければ幸いです。
- ベストアンサー
- フリーウェア・フリーソフト
- elpa_01
- 回答数1
- OpenPNE設置時のエラー
こんにちは。 自社サーバにSNSのOpenPNEを設置しようとしています。 手順書通りにインストールした後、セットアップ画面にアクセスしようとすると、真っ白な画面になってしまいます。 エラーログを見ると、 PHP Warning: main(/usr/local/OpenPNE/config.php): failed to open stream: Permission denied in /var/www/pne/OpenPNE/public_html/config.inc.php on line 21 PHP Fatal error: main(): Failed opening required '/usr/local/OpenPNE/config.php' (include_path='.:/usr/share/pear') in /var/www/pne/OpenPNE/public_html/config.inc.php on line 21 と書いてありました。 これはPHPのエラーでしょうか。 config.phpファイルの中身が悪いのでしょうか・・・。 PHP及び、サーバ・データベースなどについて、ほとんど初心者です・・・。 (そして英語もよくわかってない・・・) ひょっとしたら、すっごく単純な間違いかもしれませんが、 ご指南の程、よろしくお願いいたします。
- ベストアンサー
- PHP
- tanutanu23
- 回答数17
- インターネットサイトのウェブルートの下にウェブドキュメント以外のファイ
インターネットサイトのウェブルートの下にウェブドキュメント以外のファイルを置くことについて。 以下のような配置のサーバがあります。 /dir1 | +-/dir2 __| __+-/htdocs <- site1.jp ウェブルート(外からアクセス可) ____| ____+-/dir3 <- php置き場 ____|_+-WebPage1.php <- phpで作成したWEBページ ____|_+-WebPage2.php ____|_+-BatchPgm1.php <- phpで作成したバッチアプリ ____|_+-BatchPgm2.php ____| ____+-/dir4 <- シェル置き場 ______+-Shell1.sh <- BatchPgm1.phpのスタータ ______+-Shell2.sh <- BatchPgm2.phpのスタータ ______+-Shell3.sh <- 単独で完結するシェル 私はネットワークセキュリティに詳しくないですが、 ウェブルートの下にウェブドキュメント以外の物を置かれている状態が我慢できません。 以下のようにしたいのですが。。。 /dir1 | +-/dir2 __| __+-/htdocs <- site1.jp ウェブルート(外からアクセス可) __|_| __|_+-/dir3 <- php置き場 __|___+-WebPage1.php <- phpで作成したWEBページ __|___+-WebPage2.php __| __+-/dir4 <- シェル置き場 __|_+-Shell1.sh <- BatchPgm1.phpのスタータ __|_+-Shell2.sh <- BatchPgm2.phpのスタータ __|_+-Shell3.sh <- 単独で完結するシェル __| __+-/dir5 <- php置き場(バッチ用) ____+-BatchPgm1.php <- phpで作成したバッチアプリ ____+-BatchPgm2.php どうしたものでしょうか。 1、2に関しては、 そこは絶対にそうするべきだ。 そこはどちらでも良い。 そこはもっと違う方法が良い。 3に関しては、 出来る(どうすれば) 出来ない など、回答下さい。 (1) 「http://site1.jp/dir4/Shell1.sh」と叩かれたら、Shell1.shをそのまま盗まれます。 でも、「dir4/Shell1.shの部分は見えている訳じゃないから、偶然直で打たれて見付かる可能性なんて殆どありえない」と反論されると、なんとなく、根拠の薄い解答ならできますが、具体的で、どの程度の危険性があるのか言い返せる材料がありません。 (2) PHPで書いたバッチ目的のアプリはウェブルートと関係ないところに置きたいのですが、 「PHPはPHPで固めて置きたい」とい言われたら、これも具体的にどのような問題があるのか説明がしにくいです。 (3) 1のケース2のケース共に、「サーバやファイヤーウォールでなんとかできるんじゃないの?」 と言われると、出来るとも出来ないとも言えません。
- フォルダへの再帰的な関数処理方を教えてください
すみませんがPHPのコードについて質問させてください。 PHP : 5.3.5 OS : WindowsXP コマンドラインにてPHPを作動させ、各ディレクトリ内にある.svnディレクトリを再帰的に全て削除しようと思って以下のコードを書きました。 <?php error_reporting(E_ALL | E_STRICT); define('DS', DIRECTORY_SEPARATOR); define('PS', PATH_SEPARATOR); require_once('Zend' . DS . 'Debug.php'); function e ($message) { echo $message . PHP_EOL; } function d ($var, $label = null) { Zend_Debug::dump($var, $label); } $date = date('Y/m/d H:i:s'); e("====== START(" . $date . ") ======"); $arg1 = realpath($argv[1]); if (!is_dir($arg1)) { e($arg1 . "はディレクトリじゃないよ?"); } else { function removeSVN ($dirname) { $parentDir = new DirectoryIterator($dirname); foreach ($parentDir as $key => $childDir) { $realChild = realpath($childDir); if ($childDir->isDir() && !$childDir->isDot()) { if ($childDir == ".svn") { e("Delete : " . $childDir->getFilename()); //ココでrealpath()化するか、chdir()をしないと //$childDirではエラーになります rmdir($realChild); } else { e("Insert : " . realpath($childDir->getFilename())); //以下の一文を抜けばエラーにはならず、".\CLI\centurion"内 //の.SVNは削除されますが、勿論再帰的には作動しません。 call_user_func('removeSVN', $childDir); } } } } //ココでrealpath()化するか、chdir()をしないと$argv[1]ではエラーになります removeSVN($arg1); } e("============ END ============"); で、 C:\php> php.exe .\CLI\removeSVN.php .\CLI\centurion と実行すると、 ====== START(2011/10/02 22:00:34) ====== Insert : Fatal error: Uncaught exception 'UnexpectedValueException' with message 'DirectoryIterator::__construct(application,application): 指定されたファイルが見つかりません。 (code: 2)' in C:\php\CLI\removeSVN.php on line 32 UnexpectedValueException: DirectoryIterator::__construct(application,application): 指定されたファイルが見つかりません。 (code: 2) in C:\php\CLI\removeSVN.php on line 32 Call Stack: 0.0030 381536 1. {main}() C:\php\CLI\removeSVN.php:0 0.0067 396576 2. removeSVN() C:\php\CLI\removeSVN.php:54 0.0092 397784 3. call_user_func() C:\php\CLI\removeSVN.php:49 0.0093 397800 4. removeSVN() C:\php\CLI\removeSVN.php:49 0.0093 398336 5. DirectoryIterator->__construct() C:\php\CLI\removeSVN.php:32 とエラーが出ます。 エラー内にある32行目とは$parentDir = new DirectoryIterator($dirname);の事です。 自分は、call_user_func()にて$childDirディレクトリ内に入り、また再帰的に.svnフォルダを見つけて削除しようと考えたのですが、ダメでした。 自分の力では分かりませんのでアドバイスをいただけないでしょうか? ディレクトリの最後まで行き、ファイルのみになった場合に帰れるように、continue文を入れないといけないのかな、とも思ったのですが、良く分かりませんでした。
- $_REQUESTの値を保存する方法
データを更新する画面を作成しています。 HTML・PHP・MYSQLを使用。 1本目のPHPはコードを入力し、 フォーム内のSUBMITボタンで、次のPHPを呼び出します。 ================================================ a.php <?php 入力チェック エラーがないとき header(省略. "/b.php?CODE=" . ($_REQUEST["CODE"])); exit(); ?> <form action="a.php" method="post"> <input type="text" name="code"> <input type="submit" name="submit" value="登録"> </form> とあって、入力チェックでエラーがなければ 別のPHPに入力したコードをパラメーターとして 持って移動。 ================================================= b.php <?php $code = $_REQUEST[CODE]; このフォームのエラーチェック エラーがないとき header(省略. "/a.php); exit(); ?> <form action="b.php" method="post"> <table> <tr><td><?php echo($code); ?></td></tr> <tr><td><input type="text"></td></tr> </table> <input type="submit" name="submit" value="更新"> </form> 受け取ったコードに対する情報を入力し、 更新ボタンを押す⇒エラーがなければデータを更新、もとの画面に。 最初にb.phpを表示したときは、$codeに値が入っていて、画面にコードが表示されますが、 更新ボタンを押して、画面にエラーがあるとき、 エラーチェックをして画面表示をすると、$codeの値が消えてしまいます。 この値を残す方法を探しています。 $_REQUESTの値を残す、もしくは、他のプログラムから パラメーターを取得し使用する方法を どなたか、教えてください!
- xamppの設定
phpを勉強している初心者です。 xamppをインストールしてphpを使っています。 (xamppの設定は初期状態です。) 現在item_list.phpという商品一覧のファイルを作成しています。 phpmyadminのciel(DB名)から商品をselect処理で持ってきています。 DB接続時の $conn = mysql_connect("localhost", "root", ""); ↑ ↑ ↑ 上記の矢印の部分を変数$db_host,$db_user,$db_passwordに置き換えて$db_host,$db_user,$db_password はconf.phpで別ファイル管理したいと思っています。 item_list.phpのDB接続の前に「include ("conf.php");」を設定したところ下記のエラー表示が出てしまいました。 -------------------------------------------------------------------------- Warning: include(conf.php): failed to open stream: No such file or directory in C:\xampp\htdocs\ciel\item_list.php on line 6 Warning: include(): Failed opening 'conf.php' for inclusion (include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\ciel\item_list.php on line 6 -------------------------------------------------------------------------- conf.phpは <? php $db_host = " localhost "; $db_user = " root "; $db_password = ""; $db_name = " ciel "; ?> このように設定しています。 おそらくinclude_pathの設定を変更しなくてはいけないと思うのですが、どこをどう変えたら良いのかわかりません。 どなたかご存知の方がいましたら教えてください。 よろしくお願いします。
- 締切済み
- PHP
- roronoazoro2
- 回答数2
- zendのcontrollersについて
Zendを始めたばかりのものです。 サーバ:XPで自営 Apache2,php5 Zendをダウンロードし、Cドライブのルートに「ZendFramework-1.9.0」 という名前で配置しました。 php.iniのinclude_pathの設定も変更し、 htdocsの直下にindex.phpを作成し <?php require_once 'Zend/Version.php'; //ライブラリの読み込み echo Zend_Version::VERSION; //現在のZend Frameworkのバージョンを表示 とすると、正常にバージョンが表示されます。 zendappsというフォルダーをhtdocsの中に作成し、index.phpに <?php require_once 'Zend/Controller/Front.php'; Zend_Controller_Front::run('../zendapps/controllers'); とするとエラーになります。(エラーは長いので後述) '../zendapps/controllers'の部分かとも思いますが、 お分かりになる方、教えていただけると幸いです。 エラーの内容 Fatal error: Uncaught exception 'Zend_Controller_Dispatcher_Exception' with message 'Invalid controller specified (error)' in C:\ZendFramework-1.9.0\library\Zend\Controller\Dispatcher\Standard.php:242 Stack trace: #0 C:\ZendFramework-1.9.0\library\Zend\Controller\Front.php(946): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http)) #1 C:\ZendFramework-1.9.0\library\Zend\Controller\Front.php(212): Zend_Controller_Front->dispatch() #2 C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\zendapps\index.php(3): Zend_Controller_Front::run('../zendapps/con...') #3 {main} thrown in C:\ZendFramework-1.9.0\library\Zend\Controller\Dispatcher\Standard.php on line 242
- 選択された値をセッションで保存したい
ラジオボタンで選択された値をセッションで保存し、DBまで持って行きたいのですが、どのようにすればよいでしょうか?なお、ラジオボタンからはPOSTで渡しています。どなたかわかる方ご教授お願いします。流れは【a.php => b.php => c.php => d.php => DB】c.phpにラジオボタンがあります。 [c.php]はこのような感じです。 <form name="form1" method="post" action="d.php"> <input type="radio" name="color" value="なし" >なし <input type="radio" name="color" value="赤">赤 <input type="radio" name="color" value="青">青 <input type="submit" name="Submit" value="送信">
- MySQL関数が動かない
PHP+MySQLでCall to undefined function mysql_connect()エラーとなり困っています。 各Ver MySQL=5.1.32 PHP=5.2.9 Apache=2.2.1.1 コマンドラインからは全て動作しています。 (データべース・テーブル作成・SELECT文等) http:localhostでは、PHPも動作しています。 のでApacheも大丈夫だと思います。 http:localhostで、PHPのMySQL関数が動作しません。 extension=PHP_mysql.dllのコメント[;]は外しました。 PHP_mysql.dllの保存場所はc:/php5/ext/ なぜか、SQLite用関数は動きます。 (同じ階層にあるc:/php5/ext/PHP_sqlite.dll) 環境変数[PATH]にc:\php5を登録。 libmysql.dllは何度試しても動かなかったので、インターネット内にある情報を参考に全ての場所にコピペで置きました。 php5/直下 Apache2.2/bin/直下 system32/直下 ウィルスバスター2009を停止して試しましたがダメでした。 初心者の私にはもうどうして良いかわかりません。 良きアドバイスをよろしくお願いします。m(_ _)m
- 文字化けで混乱中です...
こんにちは。PHPの文字化けで混乱しており、どなたかにご助言いただければ幸いです。 現在、PHPは拡張子「.php」、HTMLは拡張子「.html」で動いているものを 拡張子「.html」でもPHPを動作させたいので、.htaccessにて AddType "application/x-httpd-php; charset=Shift_JIS" .php .html と指定しました。 これで拡張子「.html」でもPHPが動かせるようになりましたが、それとともにPHPスクリプトの入っていない他のHTMLファイルが文字化けしてしまうようになりました。 しかし、.htaccessに AddType "application/x-httpd-php; charset=Shift_JIS" .php .html AddType "text/html; charset=Shift_JIS" .html こうしてしまうとPHPが効かなくなるし...うーん?と 多分スゴイ手前のところで混乱してきてしまいました。 HTMLファイル内ではmetaでShift-JISを設定しています。 HTMLファイル内でheaderとかやらない方法で、文字化けを回避する方法をお教えいただけますと助かります。 よろしくお願いいたします。
- form変数の初期化
<br /><b>Notice</b>: Undefined index: your_name in <b>C:\xampp\htdocs\test\index.php</b> on line <b >83</b><br /> 入力画面で上記のエラーが解決しません。 どうすればいいでしょうか? 入力画面 <?php $_POST = array(); ?> <form method="post" action="./form_check.php"> <div class="element_wrap"> <label>氏名</label> <input type="text" name="your_name" value="<?php echo $_POST["your_name"]?>"> </div> <div class="element_wrap"> <label>メールアドレス</label> <input type="text" name="email" value=""> </div> <input type="submit" name="btn_confirm" value="入力内容を確認する"> </form> 確認画面 <?php $your_name = $_POST["your_name"]; ?> <form method="post" action="./test.php"> <div class="element_wrap"> <label>氏名</label> <p><?php echo $your_name; ?></p> </div> <div class="element_wrap"> <label>メールアドレス</label> <p><?php echo $_POST['email']; ?></p> </div> <input type="submit" name="btn_submit" value="送信"> </form> <form method="post" action="./index.php"> <!--<input type="button" name="btn_back" onclick="history.back()" value="戻る">--> <input type="submit" name="btn_back" value="戻る"> <input type="hidden" name="your_name" value="<?php echo $_POST['your_name']; ?>"> <input type="hidden" name="email" value="<?php echo $_POST['email']; ?>"> </form>
- wordpressのエラーについて
wordpressのエラーについて 今、本を見ながらテーマをスクラッチから作ろうとしているのですが、 個別ページ(single.php)で、 <?php the_title();?> と書くところを <?php the_title;?> と書いても、タイトルは表示されないものの、PHPのエラーがでません。 なぜでしょうか? なお、XAMPPでやっていてphpの設定はいじってないので、 <?phppppp ?>とかかくとphpのシンタックスエラーが表示されます。 よろしくお願いします。
- ベストアンサー
- PHP
- dicemiyagawa
- 回答数1
- 初歩的な質問ですが、文字化けについて
PHP初心者です。環境はRedHatLinux8.0とphp4.2.2を使用しています。10日で覚えるPHPを参考に環境設定をapache,phpはインストール完了し、おなじみの ハローHello,PHP! 練習用のフォルダ usr/local/apache/htdocs に作成。表示を確認したら文字化けが起こっていました。 *結果* KK ello, PHP! 環境設定の部分で /usr/local/lib/php.iniファイルの [mbstring] ・・・ mbstring.substitute_character = none; output_buffering = On output_handler = mb_output_handler default_charset = Shift_JIS ←この部分が気になるのですがこれでよろしいのでしょうか? アドバイスお願いします。
- undefined function mb_send_mail で、メール送信できず。
初めてPHP開発を行っています。 環境:WindowsXP、Apache/2.0.59、PHP/5.2.1 PHPプログラム内で、 mb_send_mail を使用しています。 Apacheのerror.logに以下のlogが表示され、 メール送信ができません。 ~~~~~~~~~~~~~~~~~~~~~~~~~ Unable to load dynamic library 'php_mbstring.dll' Unable to load dynamic library 'php_snmp.dll' PHP Fatal error: Call to undefined function mb_send_mail() ~~~~~~~~~~~~~~~~~~~~~~~~~ WindowsでPHP5のインストール時のextensionsの 指定が不足していると思いますが、 どれかが分かりますでしょうか? 初歩的な質問ですが、宜しくお願い致します。
- どのように指定したらいいの?
PHPフォームの「form action」の記述についてですが、 次のページで入力結果を出力したい場合はどうすればいいのでしょうか? <?php echo $_SERVER["PHP_SELF"]; ?> $_SERVER["PHP_SELF"]、とした場合、 データ出力のファイル名はどうすればいいんでしょうか? <form action="hoge.php3"~略>のように指定してしまえば、 出力先のファイル名は「hoge.php」でいいと思うのですが…。 初めてフォームをPHPで作るので本を読んでも良く分かりません;; よければ教えてくださると助かります!; よろしくお願いします!!
- 締切済み
- PHP
- noname#51801
- 回答数2
