検索結果
PHP
- 全てのカテゴリ
- 全ての質問
- アルゴリズム
phpってほかの言語と違い「アルゴリズム」とかはないのでしょうか? phpでログインフォームや掲示板などの基準となる作り方を知りたくて 「php アルゴリズム」 と検索したところ結果ヒットする物はほぼなくて https://teratail.com/questions/35223 こちらのページが気になり見たところ、 「phpはあまりメモリを操作する言語ではないためアルゴリズムはない」 との回答がありました。 phpにアルゴリズムってないのでしょうか? 「ログインフォーム 作り方」で検索したところヒットはあるため、 phpは「アルゴリズム」というより「作り方」のほうがよいのでしょうか?
- .htaccessの設定について
.htaccessの設定について以下のように記述しましたが、 404のページに飛んでしまいます。 REQUEST_FILENAMEが見つからないときは、index.phpに飛んでくれる設定ではないのですか? それとも、REQUEST_FILENAMEに直接フルパスをhtt;//xxx.net/という風に指定してくれるものなのでしょうか? よろしくお願いします。 <記述したコード> AddType x-mapp-php5 .php AddHandler x-mapp-php5 .php RewriteEngine on Options +FollowSymlinks RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . index.php [L] ErrorDocument 404 /page-unavailable/ <files ~ "\.tpl$"> order deny,allow allow from none deny from all </files>
- 締切済み
- その他(ITシステム運用・管理)
- takeshif
- 回答数1
- System関数で変数を受け渡す方法
Apache+PHP+MySQL1でサイトを作っています。 時間がかかる処理をバックグラウンドで処理したいのですが、メイン処理の変数をバックグラウンド処理に受け渡したいのですがうまくいきません。 http://www.stackasterisk.jp/tech/php/php02_02.jsp インターネットで調べたところ上記URLが見つかったので参考にサンプルを作ってみました。 --------sample.php(メイン処理)------- <?php $arg = 123456; System("/usr/local/bin/php bgprog.php $arg &"); ?> --------bgprog.php(バックグラウンド処理)------- <?php sleep(10); echo "読み込み完了<br>"; echo $arg; ?> このサンプルだと10秒スリープした後に「読み込み完了」と表示されるのですが$argが表示されません。 上記URLに「メインの処理から引数を渡したい場合には、bgprog 側できちんと受け取るようにしておかなければなりません」と書かれているのですがその方法がまったくわかりません。 このプログラム自体に無理があるのか、bgprog側でなんらかの処理をすれば解決するのかもわかっていません。 よろしくお願いします。
- ベストアンサー
- PHP
- shioshioshio
- 回答数2
- シェルスクリプト ファイル一括出力
現在、ubuntu/linuxを使用しています。 あるディレクトリ以下のファイル名と内容を全て出力するシェルスクリプトを作りたいです。例えば、 /home/web/以下aa.phpとbb.phpとcc.phpのファイルがあるとします。(実際は、20ファイル程度あります) これをall.txtに aa.php←ファイル名 ・・・←aa.phpの内容 bb.php←ファイル名 ・・・←bb.phpの内容 cc.php←ファイル名 ・・・←cc.phpの内容 とファイル名とファイルの内容を順次結合させるにはどういうシェルスクリプトを作成すればよろしいでしょうか?できれば、for文などで動的に繰り返し制御を行えたら一番うれしいです。今までは、lsやcat文で一行づつ記述していましたが、さすがにファイル数が増えると面倒になりました。 追伸 何がやりたいかというと自分のサイトのソースを全部1ファイルにまとめて、pdfや印刷をしたいです。欲をいうとサブディレクトリまで検索して結合できると一番うれしいのですが・・・(まだディレクトリ数は少ないのでなんとかなります)
- mb_send_mailに関して
環境:Windows2008 Server R2 64bit/php5.3.22 教えて下さい。 Windows2008 Server R2 64bit 環境にてPHPを動作させ、mb_send_mail()関数を使って メールを送信しようと考えています。 PHPも問題なく動き、mb_send_mail()関数用にphp.ini も以下のようにメンテナンスし、記述も 問題ないかと思われますが、メールの送信ができません。。。 64bitでは何か設定が違うのでしょうか? 教えて頂きたいと思います。 《php.ini》 [mail function] For Win32 only. ← 32bit only とわざわざ記述がある為、64bit ではNG? http://php.net/smtp SMTP = XXXXXX http://php.net/smtp-port smtp_port = 25 For Win32 only. http://php.net/sendmail-from sendmail_from = XXX@XXX.co.jp 《記述内容》 <?php $mailto = "XXX@XXX.co.jp"; $subject = "掲示板"; $content = "新規投稿がありました。 ☆☆☆"; $mailfrom = "From:mail@colcoat.co.jp"; mb_language("ja"); mb_internal_encoding("UTF-8"); if(mb_send_mail($mailto,$subject,$content,$mailfrom)){ }else{ echo "送信できませんでした"; } ?> よろしくお願いします。
- ベストアンサー
- PHP
- asamix_000
- 回答数2
- htaccessで指定したURLが含まれる場合
htaccessの設定でリダイレクト処理をしたいと思っています。 したい内容は 「指定したURLが含まれる場合、リダイレクト」 です。 現在、phpで下記の通り引数を使用してサイトを表示しています。 http://www.sample.jp/test.php?id=1&page=1 http://www.sample.jp/test.php?id=1&page=2 http://www.sample.jp/test.php?id=1&page=3 http://www.sample.jp/test.php?id=2&page=1 http://www.sample.jp/test.php?id=2&page=2 http://www.sample.jp/test.php?id=2&page=3 上記、URLで 引数id=1のページにアクセスがあった場合、新ドメインの http://www.ex.jp/test_page/ へリダイレクトし、 引数id=2のページにアクセスがあった場合、新ドメインの http://www.ex.jp/sample_page/ にリダイレクトしたいと思っています。 現状は1つずつ RedirectPermanent /test.php?id=1&page=1 http://www.ex.jp/test_page/ RedirectPermanent /test.php?id=1&page=2 http://www.ex.jp/test_page/ RedirectPermanent /test.php?id=1&page=3 http://www.ex.jp/test_page/ としていますが、これをid=1のページを全て一括で http://www.ex.jp/test_page/ へリダイレクトする書き方はないのでしょうか。
- ベストアンサー
- その他(プログラミング・開発)
- hukazuo
- 回答数1
- kcaptchaで画像が表示されません。
kcaptchaという画像認証を導入しようとしていますが 画像が表示されず(パスが通ってない×印がでる) 投稿させていただきます。 http://freecode.com/projects/kcaptcha 画像表示部分のソースはいかになります。 <form action="index.php" method="post"> <p>Enter text shown below:</p> <p><img src="./kcaptcha.php?<?php echo session_name()?>=<?php echo session_id()?>"></p> <p><input type="text" name="keystring"></p> <p><input type="submit" value="Check"></p> </form> このimg src="./kcaptcha.php?<?php echo session_name()?>=<?php echo session_id()?> がうまく言ってないと思うのですがどう修正したらよいかわからず 投稿させていただきました。 img src="./kcaptcha.php?←の部分はindex.phpなどいろいろ試しましたがだめでした。 何か自作のphpファイルなどを用意する必要があるのでしょうか? 以下環境になります。 サクラレンタルサーバ スタンダードプラン session.save_path /home/user/tmp /home/user/tmp session.use_cookies On On session.use_only_cookies On On session.use_trans_sid 1 1 tmpフォルダにはsessionデータらしきファイルが保存されています。 提示不足の情報などありましたらできる限り 対応したいと思います。 よろしくお願いします。
- ベストアンサー
- PHP
- uewouuc73jmmdjd
- 回答数2
- 1つのformに複数のaction
質問です。 下のようにiframeが2つあり、一つのformによる結果をそれぞれに反映させる検索ページ(kensaku.php)があります。 <script> function sample(F) { F.action = 'ichiran_map.php' F.target = 'ichiran_map' F.submit(); setTimeout(function(){ F.action = 'ichiran.php' F.target = 'ichiran' F.submit(); },1); return false; } </script> <iframe src="A.php" name="A" > <iframe src="B.php" name="B" > <form method="post" onsubmit="return sample(this)"> <select name="area"><option selected value="">エリア選択 </option> <option value="01">あいうえお</option> <option value="02">かきくけお</option> </select> <select name="price"> <option selected value="">価格帯選択</option> <option value="01">1000円未満</option> <option value="02">1001円~2000円</option> <input type=submit value="絞込" /></form> 別のページ(例えばindex.php)に同じようなformを作り、検索結果をこの検索ページに反映させたいと思います。この場合、一つのformに3つのactionを設定したいのですが、どうすれば実現できるでしょうか? 表示画面はkensaku.phpにしたいのですが、そのkensaku.phpにある2つのiframe(A.phpとB.php)にformで指定した値を反映させたいのですが、どうすれば実現できるのでしょうか?どなかた教えて下さい。
- ベストアンサー
- JavaScript
- hilokijp
- 回答数2
- magic quotes gpcに関する.htaccessの設定について
こんばんは。最近、phpでスクリプトを作成しているのですが どうしても、magic_quotes_gpcをoffにしなければならない状況になってしまい、変更しようと四苦八苦しています。レンタルサーバーのため、php.iniではなく、.htaccessでしか変更が出来ないことはわかり、 <IfModule mod_php4.c> #インクルードパスの設定 php_value include_path ".:/usr/local/lib/php:/html/_incs_" #不用意なエラーレポート出力をさせないようにする #必要に応じて「ini_set("display_errors", 1)」を使うのがベター php_flag display_errors Off php_flag magic_quotes_gpc Off #「mbstring」関係の設定 php_value mbstring.language "Japanese" php_value mbstring.internal_encoding "EUC-JP" php_flag mbstring.encoding_translation Off </IfModule> のように、書き込み、サーバーにアップロードしたのですが、phpinfo()で確認したところ、magic_quotes_gpc欄がonになったままであり、.htaccessが機能しておりません。 私の書き方に問題があるのでしょうか?何か問題点等があれば指摘をお願いします。また、私の考えが根本的に間違っていた場合、簡単な知識から教えてくれると助かります。 余談かもしれませんが、.htaccessはサーバーで、利用可能となっています。
- はじめて質問させていただきます!
はじめて質問させていただきます! 宜しくお願い申し上げます! 友人にajaxでmysqlから最新の1件のニュースデータを引っ張り出して表示させるphpスクリプトを作ってもらいました。 こんな感じになります。 <!---ここからがスクリプトで---> <?php $i = 0; foreach ($news as $thenews): $class = null; if ($i++ % 2 == 0) { $class = ' class="altrow"'; } ?> <dl> <dt> <?php echo $my->df($thenews['News']['date'],"Y.m.d"); ?>【<?php echo $thenews['News']['title']; ?>】</dt> <dd> <div style="height: 60px; overflow-y: auto;"> <?php echo $thenews['News']['body']; ?> </div> </dd> </dl> <hr /> <?php endforeach; ?> <dl> <dt><a href="news/">■過去のニュースはこちら</a></dt> </dl> <!---ここまでで終りっす---> このスクリプトを変えて、最新の2件のニュースデータを引っ張り出して表示させようと思って、こんな風にしてみたのですが、こうすると同じニュース(最新の1件)が2個表示されてしまいました。 <!---ここからがスクリプトで---> <?php $i = 0; foreach ($news as $thenews): $class = null; if ($i++ % 2 == 0) { $class = ' class="altrow"'; } ?> <dl> <dt> <?php echo $my->df($thenews['News']['date'],"Y.m.d"); ?>【<?php echo $thenews['News']['title']; ?>】</dt> <dd> <div style="height: 60px; overflow-y: auto;"> <?php echo $thenews['News']['body']; ?> </div> </dd> <dt> <?php echo $my->df($thenews['News']['date'],"Y.m.d"); ?>【<?php echo $thenews['News']['title']; ?>】</dt> <dd> <div style="height: 60px; overflow-y: auto;"> <?php echo $thenews['News']['body']; ?> </div> </dd> </dl> <hr /> <?php endforeach; ?> <dl> <dt><a href="news/">■過去のニュースはこちら</a></dt> </dl> <!---ここまでで終りっす---> 当の友人に直してもらおうと連絡してみても、音信不通でメールも帰ってこない状態なので困ってしまい、こちらに質問させていただきました。 こんなソース見ても、わからないのかも知れませんが、もし参考になるようなご意見をいただけましたら幸いです! 何卒、宜しくお願い申し上げます。
- 締切済み
- PHP
- yanagidhideyuki
- 回答数7
- Jquery a href="javascript:名前('.$データ.')">の方法でString(文字)を渡す方法
一部不備ありましたので、再度質問です。。 すみません 初めまして、jqueryを勉強し始めている初心者です。。 a href="javascript:名前('.$データ.')">の方法で データにString(文字)を持たせ、JQUERYを利用して、別のphpファイル(testo2.php)に値を渡し、 そのphpファイル(testo2.php)そのloadで読みたいのですが、うまくいきません この方法ではできないのでしょうか? このa href="javascript:名前('.$String型.')の方法を何とか 利用したいと思ってますので、ご存知の方いましたら、 教えていただけないでしょうか。。。? また別方法があれが教えていただけないでしょうか? (input hidden 等以外のa href="javascript:名前('.$String型.')的な方法) 何度もすみません。。。 何ぶん、勉強初めて、1ヶ月弱のため、不備等がれば、すみません。 環境、jquery1.4, PHP5.0, eclipse3.5 //-----testo1.php <html> <head> <script type="text/javascript" src="jquery1.4.js"></script> <script type="text/javascript" src="tes.js"></script> <title></title> </head> <body> <?php //$id=1;(数字)の場合は値はわたせる、String 型の値の渡し方 //<a href="javascript:名前('.$文字列(String型).')">前のページ</a> //でJQUERYを利用して、別のphpファイル(testo2.php)にを渡し //loadで読みたい。 $id='文字列aaa'; <a href="javascript:value('.$id.')">前のページ</a> ?> <div id="box">ここに値を表示したい</div> </body></html> //----tes.js function value(id) {$("#box").load("php/tt.php",{id:id});} //------testo2.php <html> <head> <script type="text/javascript" src="jquery1.4.js"></script> <script type="text/javascript" src="tes.js"></script> <title></title> </head> <body> <?php echo $_POST['id'];//文字列String型を受けたい。 ?> </body></html>
- ベストアンサー
- JavaScript
- okinao
- 回答数2
- ブラウザ上に出せますか!?
echo (float)'15foo', PHP_EOL; // 15 echo (float)'15.33foo', PHP_EOL; // 15.33 echo (float)'1e2foo', PHP_EOL; // 100 (1e2) echo (float)'foo', PHP_EOL; // 0 以上ですが、 ブラウザ上に結果を出せますか!? もし、ブラウザ上に出すには、後!どんなプログラムが必要ですか!? 分かりません、宜しくお願いします。
- さくらレンタルサーバでのsmartyの設定
プログラム初心者なのですが、以下教えて頂けないでしょうか。 さくらレンタル(スタンダード)にsmartyを設置を試みているのですが、エラーメッセージが出てしまいます。 環境:PHP 5.2.6 / Smarty 2.6.19 /home/(アカウント)/www/libs/smartyの直下にSmarty.class.php以下、公式サイトからダウンロードしたものをそのままアップし、/home/アカウント/www/smartytest/helloの直下に以下のファイルをアップしました。 (index.php) <?php define('SMARTY_DIR','/home/アカウント/www/libs/smarty/'); define('SMARTY_TEST','/home/アカウント/www/smartysample/hello/'); require_once(SMARTY_DIR.'Smarty.class.php'); $smarty = new Smarty; $smarty->template_dir = SMARTY_TEST.'templates/'; $smarty->compile_dir = SMARTY_TEST.'templates_c/'; $smarty->config_dir = SMARTY_TEST.'configs/'; $smarty->cache_dir = SMARTY_TEST.'cache/'; $smarty->assign('msg','Hello World!'); $smarty->display('index.tpl'); ?> そして、このindex.phpにアクセスすると、下記のようなエラーメッセージが表示されます。 Warning: Smarty::require_once(/home/アカウント/www/libs/smarty/internals/core.write_compiled_resource.php) [smarty.require-once]: failed to open stream: No such file or directory in /home/アカウント/www/libs/smarty/Smarty.class.php on line 1429 Fatal error: Smarty::require_once() [function.require]: Failed opening required '/home/アカウント/www/libs/smarty/internals/core.write_compiled_resource.php' (include_path='.:/usr/local/php-5.2.6/lib/php') in /home/アカウント/www/libs/smarty/Smarty.class.php on line 1429 Smarty.class.phpの1429行目に問題があるのかとファイルを開いてみたものの、初心者のためよく理解できません。あと、Smarty.class.phpを呼び出すのに絶対パスを指定しているのは、さくらの管理画面からphp.iniでinclude_pathを指定しようとしても、うまくいかなかったためです(上記の場合、$smarty = new Smarty;を削除すれば、エラー画面は表示されません。変わりに何も表示されませんが・・)。 初心者のため、基本的なところで見落としがあるのかもしれませんが、教えて頂ければと思います。どうか、宜しくお願いします。
- phpinfo()が・・・
Apache, PHP4.1.2でWindowsでプログラムを作成しよう と考えています。 今、httpd/sample.phpを作成しました。 ---------- <?php phpinfo(); ?> ----------- http://localhost/sample.phpとURLを入力して 確認しようとしたんですが、 ダウンロードのフォームが現れ、ブラウザとは別に エディタが開き、そのエディタに ----------------- <?php phpinfo(); ?> ----------- と表示されて終わってしまいます。 httpd.conf, php.iniの設定には問題がないとおもうのですが、 もしかしてIE6.0の設定の問題なのでしょうか? もしそうでしたら、質問する場所が違ってしまいますが、 アドバイスお願いいたします。
- Parse errorが表示されない
Parse errorが表示されない いつもお世話になっております。 PHPで開発を進めております。 開発するにあたりエラーの表示をしたいのですが、下記の設定を行っても表示されません。 php_flag display_errors on php_value error_reporting 2039(4096も試しました) <?php echo "てすと" ?> のようにセミコロンを付けないなどのエラーが表示されません。 <?php if () { } ?> if文の条件文が入っていない場合のエラーは表示されます。 <環境> PHP:5.1.6 何か他に設定するところがあるのでしょうか。 ご教示お願いいたします。
- ベストアンサー
- PHP
- wonder_dct
- 回答数2
- 複数のページで
データをMysqlに入れてます。そのデータをIDで選択して1ページづつ表示させているのですが、あまりにページが多くなりすぎてきて困ってます。 なので、ページのレイアウトをlayout.phpにして、その表示を1.phpや2.phpとしていきたいのですが、 $sql = "SELECT id FROM data WHERE id = 1"; の部分のid = 1の部分だけを.phpや2.phpに記載して、そのほかをlayout.phpから持ってくる方法はありますでしょうか? また他に違う方法もありましたらご教授ください。よろしくお願いします。
- 現在、ネットプラッツ(NetPlatz)の専用サーバーを借りているので
現在、ネットプラッツ(NetPlatz)の専用サーバーを借りているのですが、 phpのVer4が入っているとサーポートの方は言うのですが全くphpが動きません。 サポートにその旨電話するとお調べしたらphp3でした、との回答。 ちょっとむっとしましたが、仕方がないのでPHP3で確かめるため、 色々調べ、以下のソースでphpが入っているか確かめました。 -------------------------------------- <html> <head> <title>PHP3 TEST</title> </head> <body> <?php phpinfo(); ?> </body> </html> -------------------------------------- 上のソースを「test.html」にした場合、ブラウザで見ると何も表示されません。 また、上のソースを「test.phtml」にした場合、ブラウザではソースが丸ごと表示されます。 サーポートの方はご自分で調べて下さい、って感じで サーバーにphpが入っている確認はするけれど使えるかどうか迄は確認してくれません。 (っていうかPHP4が入っていると言っていたのに今日はPHP3でした、みたいな感じで正直入っているのかすら疑問に思えます) php3が入っているか、確かめる方法って何か無いでしょうか? ネットプラッツ(NetPlatz)のサポートも教えてくれない様な内容をこちらで回答頂くのは大変恐縮なのですが、 どうかよしくお願いします。
- 日本語のデータが文字化けをしてしまいます。
PHP初心者です。 レンタルサーバでdatファイルに書き込んでる情報をPHPファイルで出力すると、日本語の部分が文字化けしてしまいます。 datファイルから読み込んでいない日本語の部分はちゃんと表示されています。 また、datファイルにはちゃんと日本語のデータになっています。 文字コードはEUC、 PHPの出力はSJIS。 これはどういうことでしょうか? どなたか教えて下さい。 ソースは以下3ファイル構成↓ <入力するデータを集めるファイル> <html> <body> <h1 style="background:#cccccc">ゲストブック(書き込み)</h1> <form method="POST" action="guest_write.php"> お名前: <input type="text" name="name" size="20" maxlength="30" /><br /> メッセージ: <input type="text" name="message" size="70" maxlength="255" /><br /> <input type="submit" value="送信" /> </form> </body> </html> <入力したデータをdatに書き込むファイル> <?php $file=fopen("guest.dat","a"); flock($file,LOCK_EX); $line =date("Y年 m月d日 H:i:s")."\t"; $line.=$_POST['name']."\t"; $line.=$_POST['message']."\t"; fputs($file,$line."\n"); flock($file,LOCK_UN); fclose($file); header("Location: guest_input.php"); ?> <datファイルから読み込んで出力するファイル> <html> <body> <h1 style="background:#cccccc">ゲストブック(閲覧)</h1> <?php $file=fopen("guest.dat","r"); while($row=fgetcsv($file,1024,"\t")){ ?> <ol> <li>お名前:<?php print($row[1]); ?></li> <li>メッセージ:<?php print($row[2]); ?></li> <li>書き込み日時:<?php print($row[0]); ?></li> </ol> <hr /> <?php } fclose($file); ?> </body> </html> 以上ですが、宜しくお願い致します。
- 配列のデータを受け取る、のバグ
PHPスーパーサンプル第2版の2-3/rcvarray.phpからの抜粋です。 <html> <head> <title>配列のデータを受け取る</title> </head> <body> <?php <?php $array = array("menu"=>"カレー", "price"=>"380", "date"=>"2005/01/01"); echo "配列の内容(エンコードした場合)"; print_r(unserialize(base64_decode($_POST["ar_enc"]))); echo "<p>配列の内容(そのまま渡すと失敗)"; print_r($_POST["ar"]); ?> <form method="POST" action="<?php echo $_SERVER["PHP_SELF"]?>"> <input type="submit" value="送信" name="sub1"> <input type="hidden" name="ar" value="<?php echo $array ?>"> <input type="hidden" name="ar_enc" value="<?php echo base64_encode(serialize($array)) ?>"> </form> </body> </html> を実行すると、 配列の内容(エンコードした場合): Notice: Undefined index: ar_enc in /UNIONFS/opt/lampp/htdocs/samples/chapter2/2-3/rcvarray.php on line 14 配列の内容(そのまま渡すと失敗): Notice: Undefined index: ar in /UNIONFS/opt/lampp/htdocs/samples/chapter2/2-3/rcvarray.php on line 16 というエラーが出るんですが、どうやって直せばいいのですか? 正しくは、上には配列の内容が表示され、下にはarrayとだけ表示されるようです。 $arrayの直後に $ar_enc = ""; $ar = ""; と挿入してみましたがダメでした。 @でエラーを抑制するのはなしでお願いします。
- 指定されたモジュール・・・
こんにちは。 最近「実践マスターPHP+MySQL」という本を使い、PHPの勉強を始めたばかりのものです。 PEARをインストールしてみようと思い、go-pear.batを実行したのですが、下記のようなメッセージが発生してしまいます。 PHP Warning: PHP Startup: Unable to load dynamic library 'c:\php\ext\mysql.dll' - 指定されたモジュールが見つかりません。 in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library 'c:\php\ext\mysql.so' - 指定されたモジュールが見つかりません。 in Unknown on line 0 ・ ・ メッセージボックスが表示され、Entを押すと継続されて、下記インストール手順のメッセージが表示されます。 Are you installing a system-wide PEAR or a local copy? (system|local) [system] : そのまま、対話式を実行していくと、とりあえずはインストールできたのですが、本当にこれできちんとインストールできたのか疑問に思います。 調べてみた結果、c:\php\extの中には「php_mysql.dll」はあったのですが、「mysql.dll」、「mysql.so」はありませんでした。検索したのですが、この2つのファイルはどこにも存在していませんでした。 どうしたらいいのでしょうか?
