mpx の回答履歴
![](https://gazo.okwave.jp/okwave/images/contents/av_nophoto_100_5.gif)
- PHP。現在日より、2年後の日付は入力させないようにしたい
PHP。現在日より、2年後の日付は入力させないようにしたい テーブルに登録されたデータを、 日付の終了日順に、order by で、表示させており、期間が終了しだい、非表示になるよう設定しています。 しかし、終了日が5年後の場合10年後の場合、いつまでも画面の一番上に陣取る形となる為、困っています。 終了日は、現在日より2年以上を入れようとしたらエラーを出させたいのですが、そのような関数はありますでしょか?
- ベストアンサー
- noname#248169
- PHP
- 回答数3
- PHP5で度忘れしたのですが、文字列の改行コードを削除する方法ですが、
PHP5で度忘れしたのですが、文字列の改行コードを削除する方法ですが、 1度で "\r\n", "\n", "\r" を削除する方法が知りたいです。 $text = rtrim($text, "\r\n"); $text = rtrim($text, "\n"); $text = rtrim($text, "\r"); を1回で・・・ 話は変わりますが、PHP6はもう普及しているのでしょうか?
- image1.phpを表示するHTMLでイメージが表示されません。
image1.phpを表示するHTMLでイメージが表示されません。 <!-- form1.html --> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>form1</title> </head> <body> ※イメージを表示<br> <img src='image1.php' /> </body> </html> <!-- image1.php--> <?php chdir('data'); $path = 'image1.jpg'; $rpath = realpath($path); $size = filesize($rpath); $file = @fopen($rpath,'rb') or exit('ファイルが開けません。'); $img = fread($file,$size); fclose($file); header('Content-type','image/jpeg'); echo $img; ?> イメージとしてデータを送信するPHPと、そのPHPをイメージとして表示するHTMLです。 HTMLからアクセスしてイメージを表示させたいのですが、どのようにしたらいいか教えてください。
- クライアント側での検索結果の自動表示スクリプトについて
クライアント側での検索結果の自動表示スクリプトについて 例えば、障害管理ツールMantisのようなツールがあったとします。通常は、障害一覧を表示する時に、検索したい担当者をリストボックスから選択して、検索ボタンを押すとその担当者が所持している不具合一覧が表示できます。 この操作をスクリプト(コマンドファイルをクリックするだけで)で行うには、どのような方法がありますかというのが質問になります。 まず、 ・第一に考えたのが、httpヘッダーをEtherRealとかで取得し、それをそのままサーバーへ送ることです。 ・次に考えたのがPHPで本来、フォームから取得するところを省いて、postコマンドで送りつけるというものです。サーバー側のソースを変更しないという条件を満たして実現することが可能かどうかわかりません。 他にも 実現できそうな方法があれば教えてください。また、セキュリティ上、技術的に不可能かどうかもわかりません。よろしくお願いします。
- PHP + MySQL で登録時に重複チェックをしたいです。
PHP + MySQL で登録時に重複チェックをしたいです。 DBには ID Title Name 1 Book1 Author1 2 Book2 Author2 と3000件ほど入っています。これからも増えていく予定です。 このDBにPHPから新たに100件ほどのレコードを一気に登録したいときに、 ・Title名が既にDBに登録されている → 何もせずに次へ ・Title名がまだ登録されていない時 → DBへ登録 と、この様な処理をさせたいと考えています。 現状は登録したい値を配列で回し、一つ一つSELECT文で件数チェックをし、0件で有れば登録。0件以外であれば無視。と、している状況です。 ただこれですと、どうしてもサーバーに負担が掛かってしまう気がするのです。 もし、何か他に良い方法がありましたら教えていただけないでしょうか? よろしくお願いいたします。
- ベストアンサー
- 0xxxYuMixxx0
- PHP
- 回答数4
- PHPのmail()で送れていたメールが、急に受信できなくなりました。
PHPのmail()で送れていたメールが、急に受信できなくなりました。 XP上のFreebsd@Vmwareでメール送信テストをしていて、 数日前まで普通に受信できていたのですが、 同じコードが今は全く動作しません。 エラーも吐かないので原因が全く分かりません。 phpinfo();で関連していそうなところを見ると sendmail_from no value no value sendmail_path /usr/sbin/sendmail -t -i /usr/sbin/sendmail -t -i SMTP localhost localhost smtp_port 25 25 な感じです。 php.iniは SMTP = localhost smtp_port = 25 ;sendmail_path = です。 数日前までは同じ設定で受信できていましたし、 今でも送信側でエラーを吐くことはありません。 何が原因なんでしょう?
- mb_sendmailのエラーについて質問です。
mb_sendmailのエラーについて質問です。 mb_sendmailでメールを送信する際に、 $re = mb_sendmail(…); という使い方をして、$reでメールの送信の成功と失敗を見分けようとしましたが、$re自体にはPHPの機能としての返り値はあるものの、実際にメールが届いたか届かなかったかの判断はできませんでした。例えばメールアドレスが間違っていたりして実際にメールが届いていない場合などはそのエラーをどういう風に拾えばよいでしょうか? PHPは自体は非常に安定しているので mb_sendmailでエラーが返ってくるようなことは殆どありませんが、メールそれ自体が届かないということは比較的たくさんあります。 そのようなエラー情報を取得するにはどうしたらよいでしょうか? 現在、Ubuntu 9.10で自前の送信メールサーバー(Postfix)とLAMP環境で開発しております。 よろしくお願いします。
- cURL関数を使用したphpからのpost送信と画面遷移
cURL関数を使用したphpからのpost送信と画面遷移 とある事情で、どうしてもphpからpost送信をしなければならず、 且つ指定したURL先に画面遷移してほしいと考えております。 現状はpost送信自体は成功しているのですが、指定したURL先への画面遷移方法がわかりません。 無理にこの関数を使用した方法で実装をしたいわけではありませんが、 フォームのサブミットを押してpost送信をする処理と、同等の事をphpからpost送信、画面遷移が出来る方法があるのでしょうか? ご教授よろしくお願い致します。
- PHPのmail()で送れていたメールが、急に受信できなくなりました。
PHPのmail()で送れていたメールが、急に受信できなくなりました。 XP上のFreebsd@Vmwareでメール送信テストをしていて、 数日前まで普通に受信できていたのですが、 同じコードが今は全く動作しません。 エラーも吐かないので原因が全く分かりません。 phpinfo();で関連していそうなところを見ると sendmail_from no value no value sendmail_path /usr/sbin/sendmail -t -i /usr/sbin/sendmail -t -i SMTP localhost localhost smtp_port 25 25 な感じです。 php.iniは SMTP = localhost smtp_port = 25 ;sendmail_path = です。 数日前までは同じ設定で受信できていましたし、 今でも送信側でエラーを吐くことはありません。 何が原因なんでしょう?
- こんにちは。PHPとMySQLで自作ブログを作ろうと試みているのですが
こんにちは。PHPとMySQLで自作ブログを作ろうと試みているのですが、 セキュリティを意識した中で、HTMLタグの取り扱いに困っております。 プログラム全体の流れとしては、 記事投稿ページ→MySQLに保存→ブログ記事として出力 といった感じです。 例えば、記事投稿ページの<textarea>の中で、 <b>テストテスト</b>といった文があったとします。 XSSを防ぐために、htmlspecialchars()でエスケープすると、 MySQLには、<b>テストテスト</b> と保存されます。 MySQLから記事に出力したときに、太字となった「テストテスト」ではなく、 「<b>テストテスト</b>」とそのまま表示されてしまいます。 記事の出力時に、html_entity_decode()で戻してやればいいかとも思いましたが、 それでは、そもそもXSSを防げない気がします。 一般のブログサービスでは、どうやってデータベースにHTMLを保存しているのでしょうか? 解決するいい方法があればどなたか教えてください。
- 2次元配列を多次元配列にする。
2次元配列を多次元配列にする。 PHP5で 2次元目はすべて同じキーの2次元配列を 2次元目のキーごとの内容を共通項にまとめて、 多次元配列にする方法を教えてください。 キーの数は膨大なので、関数の再帰呼び出し で、きれいに処理したいのです。 説明文では説明しきれないので、 やりたいことは↓の通りです。 array[0] = array([one] => "あ", [twe] => "う" [three] => "き"); array[1] = array([one] => "あ", [twe] => "う" [three] => "く"); array[2] = array([one] => "あ", [twe] => "え" [three] => "け"); array[3] = array([one] => "あ", [twe] => "え" [three] => "こ"); array[4] = array([one] => "い", [twe] => "お" [three] => "さ"); array[5] = array([one] => "い", [twe] => "お" [three] => "し"); array[6] = array([one] => "い", [twe] => "か" [three] => "す"); array[7] = array([one] => "い", [twe] => "か" [three] => "せ"); という配列があったら、これを↓のようにしたいです。 array( [あ] => array( [う] => array ("き", "く") [え] => array ("け", "こ") ) [い] => array( [お] => array ("さ", "し") [か] => array ("す", "せ") ) ) どうぞよろしくお願いいたします。
- PHPをメール起動するも“許可がありません”
PHPをメール起動するも“許可がありません” あるシステムよりFTPでデータをアップロードし、その内容(ファイル名のみ)をメールで送信して、そのメールをトリガにPHPの処理をしています。 ところが(当然といえば当然)PEAR(アップロードファイルの解凍をしています)からはファイルがアクセスできませんとメッセージが表示され、unlinkでは許可がありませんと表示されてしまいます。 単体で試験すると動作するのですがメール起動のためユーザ権限が問題で、このような事象になると思っているのですが、解決する方法はsudoしかないのでしょうか? またsudoの設定をする場合、起動されるユーザは何になるのでしょうか? メールはqmailを使用しています。ユーザ一覧を見てみると、qmailだけで数ユーザが定義されていて、どれで認めて良いのかもわかりません。 非常に困っています。お願いいたします。
- foreachで上限回数指定方法または別の解決策を・・・
こんにちは。 以下のような多次元の配列があるとして… $test["aa"]["name"] = "名前1"; $test["aa"][mail] = "メール1"; $test["bb"]["name"] = "名前2"; $test["bb"][mail] = "メール2"; $test["cc"]["name"] = "名前3"; $test["cc"][mail] = "メール3"; $test["dd"]["name"] = "名前4"; $test["dd"][mail] = "メール4"; foreach($test as $key => $val){ echo $key; echo $test[$key]["name"]; echo $test[$key]["mail"]; } とすると、1番目のキー・名前・メールアドレスのセットが4つ出力されてしまいますが、これに最大出力限度数を指定し、2などに制限したいです。 foreachでループ回数上限を指定する事は可能でしょうか? また、他にも上記のような処理が可能な方法があれば教えて下さい。
- PHPで文字列内に指定した文字が何文字あるか
PHPで $test = "●19-■20-■21-▼22-■23-●18"; だとして、 この$test内に■が何個含まれるかを表示させたいのですが、 どのようにしたらよいでしょうか。 eregやin_array、countなどを使用したけど、 どうしてもできませんでした。 よろしくお願いいたします。
- phpで送信ヘッダをしたいのですが…
現在PHPを使って、とあるhttpsページに送信ヘッダをしたいのですが、 そもそも送信ヘッダとは何かわかりません。 且つ「User-Agent」パラメータの値を指定してPOST送信したいのですが、 下のサイトを参考にしてもうまく出来ません。。。 現状、送信先URLからはこのページは保護されたチャンネルで表示する必要がありますと言われてしまいます。 大変困っています;; どなたかご教授お願いします(>_<;) 【参考サイト】 http://narutyo.net/?no=12 開発言語:PHP5.2.8 開発OS:FreeBSD 6.2
- 多次元配列への格納
よろしくお願いします。 多次元配列に値を格納したいのですが、これまでは、 $test = array ( 'father' => array ('hiroshi', 'toshi'), 'mother' => array ('hanako', 'yoshiko'), ); のように予め書かれてあるデータを使ってきましたが、この度やりたいのはある一つの通常の配列を20ずつ多次元配列に自動的に格納するスクリプトを作りたいと思っています。 $test = array ('hiroshi','toshi','masao',.....);と続く配列を、 $test = array ( 0 => array ('hiroshi',......(20個)), 1 => array (.......), ); と20ぐらいに区切って多次元配列にしたいです。 $test[0]に直接pushしたらWarning: array_push() [function.array-push]: First argument should be an array in..と叱られてしまいました。 どなたかわかる方がいましたらおしえてください。
- 多次元配列への格納
よろしくお願いします。 多次元配列に値を格納したいのですが、これまでは、 $test = array ( 'father' => array ('hiroshi', 'toshi'), 'mother' => array ('hanako', 'yoshiko'), ); のように予め書かれてあるデータを使ってきましたが、この度やりたいのはある一つの通常の配列を20ずつ多次元配列に自動的に格納するスクリプトを作りたいと思っています。 $test = array ('hiroshi','toshi','masao',.....);と続く配列を、 $test = array ( 0 => array ('hiroshi',......(20個)), 1 => array (.......), ); と20ぐらいに区切って多次元配列にしたいです。 $test[0]に直接pushしたらWarning: array_push() [function.array-push]: First argument should be an array in..と叱られてしまいました。 どなたかわかる方がいましたらおしえてください。
- あるプログラム上で違うプログラムを呼び出す方法
PHP初心者です。 大学で課題が出されて、どうしても分からないので質問させてください。 課題の内容は 「どのページからアクセスされているのか、GETパラメータで送信しラッパーを使用して、判断せよ」 というものです。(細かい表現は違っているかもしれません) 具体的には、A、Bという二つのPHPプログラムを インターネット上で動かした時、 ブラウザに、 (Aを呼び出したときは)「Aからアクセスしています」 と表示させるようにしたいというものです。 この時、ページ遷移はすることなく、AからGETパラメータpage=aを Cというプログラム(ラッパー)に送り、Cの中で、if文で判断し Aに表示させるようにしたいです。 作成するPHPプログラムは、A、B、Cの三つで、AとBの内容は 送信するパラメータが異なるだけでほぼ一緒なので、実質2つです。 execで、コマンドラインを使う方法ではなく、 URL?page=aを使うみたいなのですが、いろいろ試してみましたがうまくいきません。 分かりにくい表現で申し訳ないですが、 どうぞよろしくお願いいたします。
- 携帯からの絵文字をWebで再現するには?
HTML_Emojiでいい感じになるかと思ったんですが、フォームからの入力ではなく、携帯端末から受け取った絵文字メールをサーバーで解析してWeb画面に出力したいです。 受け取ったメール本文を ISO-2022-JP から UTF-8 に変換してDBに格納してSELECTして、HTML_Emoji咬ませて画面出力したいのですが、DB格納時点で「?」に文字化けしています。 何かしら回避策はあるのでしょうか? 無理なら「無理」と答えが欲しいです。
- HTTP/1.1 200 OKを送信する方法
レスポンスとして下記の内容を送信したいです。 どのような関数を使用するのか、参考になるサイトなど ご存知でしたら教えてください。 「日付」「サーバー名」の取得はどうすればいいのでしょうか? よろしくお願いします。 HTTP/1.1 200 OK Date: Tue, 03 May 2005 01:05:20 GMT Server: サーバー名 Connection: close Transfer-Encoding: chunked Content-Type: text/plain