racci の回答履歴

全20件中1~20件表示
  • 二重ログイン管理について

    お世話になります。 現在、Linux Apache Mysql Phpのシステムで会員制の動画閲覧システムを開発中です。 接続時間による従量制の課金システムのため、同じIDでの使いまわしを対策する必要があり、二重ログインを禁止するようにしたいのです。 単純にDBでログインフラグを設定すればよいと思ったのですが、その場合、ログアウトボタンでログアウトしてもらわないとログイン状態が保持されてしまうため、クライアントが不意のフリーズなどで再起動となった場合再ログインが出来ないということになってしまいます。 何か、Webのシステムで完全に二重ログインを防止し、ログアウトボタン以外でのログアウトした場合にもしっかり「ログアウト」とみなす対応のできる方法はないでしょうか? 教えてください、お願いします。

  • さくらインターネットにてsmartyをPHP.iniをインクルードすると別の箇所で不具合が発生しました

    さくらインターネットにてsmartyをPHP.iniをインクルードすると別の箇所で不具合が発生しました さくらインターネットにてsmartyをPHP.iniをインクルードしたら正常動作していたphpファイルがエラーになりました。 タイトル通りなんですが、 さくらインターネットにてsmartyをPHP.iniをインクルードしたら正常動作していたphpファイルがエラーになりました。 php.ini内にて include_path=".:/home/ユーザー名/smarty" と設定し ソース.php内で require_once'DB.php'; を書き込むとエラーになってしまいます。 php.ini内にて include_path=".:/home/ユーザー名/smarty" と設定しなければちゃんと表示されます。 phpinfo()で .:/home/ユーザー名/smarty と .:/usr/local/bin/php が表示されていれば問題無いと思い、色々設定しましたが全てアウトでした。 smartyをphp.ini内にてインクルードしたのが原因だと思われるのですが、元々あったphpのコマンドパス /usr/local/bin/php がインクルードにより反映されなくなったのが原因だと思うのですが、 1ヶ月経っても分からず縋る思いで書き込みました。 何卒宜しく御願いします。 参考 http://support.sakura.ad.jp/support/manual/rs/tech_cgi.shtml

    • ベストアンサー
    • 0000109502
    • PHP
    • 回答数4
  • 画像アップロードについて

    いつもお世話になっております。 画像アップロード機能を作成し、問題なくアップロードを行うことができたのですが、 ある一定サイズ(約2MB)を超えるとアップロードが行われない現象が発生しました。 アップロードした画像は既定のサイズにリサイズして保存する仕様となっているのですが アップロード自体が行われないため、困っています。 以下【該当処理抜粋】------------------------------------------------------------- // ファイル名を設定する $fname = "hoge.jpg"; // 画像の幅・高さを設定する【規定値】 $w_size = "150"; $h_size = "100"; $tmp_name = $_FILES[$fname]['tmp_name']; // 画像ファイル名 $filename = "./hoge/".$fname; if (is_uploaded_file($tmp_name)){ $type = $_FILES[$fname]['type']; if ($type == "image/jpeg" || $type == "image/pjpeg") { // 画像ファイル存在チェック if(file_exists($filename)){ // ファイルが存在する場合は削除する unlink($filename); } // 画像ファイル名でアップロードをおこなう move_uploaded_file($tmp_name, $filename); // 画像ファイルのサイズを取得する list($sw, $sh) = getimagesize($filename); $src = imagecreatefromjpeg($filename); $dst = imagecreatetruecolor($w_size, $h_size); // 画像ファイルを既定サイズにリサイズする imagecopyresized($dst, $src, 0, 0, 0, 0, $w_size, $h_size, $sw, $sh); imagejpeg($dst, $filename); echo $fname[1]."ファイルのアップロードが完了しました。<br>"; }else{ echo $fname ."ファイルの画像形式が正しくありません。<br>"; } }else{ echo $fname ."ファイルはアップロードされませんでした。<br>"; } ---------------------------------------------------------------------------------------------------- 現象について調べたところ、PHPにはアップロードサイズが設定されている(デフォルト2MB)ため サイズの大きいファイルはアップロードできないようです。 サーバーはロリポップでレンタルしているためphp.iniの設定を変更ができません。 画像自体を事前にリサイズしてアップロードを行えば問題ないのですが、 今後、一般の方にも公開を予定してまして、リサイズ方法が分からない人(そのようなソフトがない人)にも 操作できるようにデジカメで撮った写真をそのままアップロードできる形式にしたいと考えています。 何かいい方法があればご教授願います。 【環境】 PG:php4.3.11 WEB:Apache

  • カタカナ小文字「ァ」の、検索時の文字化けで困っています。

    はじめまして。 現在、検索結果が表示されるページを制作しているのですが、その際、 カタカナ小文字の「ァ」が入っているキーワードで検索したときに、 検索キーワードの表示のところで、下記のように文字化けが起こってしまって、困っています。 (「ヴァージニティ」→「ヴ 璽献縫謄 」) Google検索しても、解決法を見つけることができませんでした。 magic_quotes_gpcの設定は、開発環境ではOff、本番環境ではOn(レンタルサーバのデフォルトの設定)にしているのですが、 if (isset($_GET['keyword'])) { $keyword = (get_magic_quotes_gpc()) ? $_GET['keyword'] : mysql_escape_string($_GET['keyword']); $keyword = mb_convert_kana($keyword, "aKV"); } のように、magic_quotes_gpcの設定が「ON」であるときと「OFF」であるときの両方の設定を記述しています。 PHP、データベース共に文字コードはEUCで統一しています。 レンタルサーバなので.htaccessを使用して、下記のように設定しています。 php_flag output_buffering off php_value default_charset EUC-JP php_value mbstring.language Japanes php_flag mbstring.encoding_translation on php_value mbstring.http_input EUC-JP php_value mbstring.http_output EUC-JP php_value mbstring.internal_encoding EUC-JP php_value mbstring.substitute_character none php_value mbstring.detect_order EUC-JP,SJIS,JIS,UTF-8,ASCII 文字化けが生じる、表示部分のphpの記述ですが、 if($keyword != ""){ $keyword = mb_convert_encoding($keyword, "EUC-JP"); echo htmlspecialchars(stripslashes($keyword)); } のように記述しています。 ちなみに、「ッ」のような他のカタカナ小文字が入っているキーワードでは、正常に検索結果が表示されます。 どうぞよろしくお願いいたします。

    • ベストアンサー
    • uni_51
    • PHP
    • 回答数3
  • カタカナ小文字「ァ」の、検索時の文字化けで困っています。

    はじめまして。 現在、検索結果が表示されるページを制作しているのですが、その際、 カタカナ小文字の「ァ」が入っているキーワードで検索したときに、 検索キーワードの表示のところで、下記のように文字化けが起こってしまって、困っています。 (「ヴァージニティ」→「ヴ 璽献縫謄 」) Google検索しても、解決法を見つけることができませんでした。 magic_quotes_gpcの設定は、開発環境ではOff、本番環境ではOn(レンタルサーバのデフォルトの設定)にしているのですが、 if (isset($_GET['keyword'])) { $keyword = (get_magic_quotes_gpc()) ? $_GET['keyword'] : mysql_escape_string($_GET['keyword']); $keyword = mb_convert_kana($keyword, "aKV"); } のように、magic_quotes_gpcの設定が「ON」であるときと「OFF」であるときの両方の設定を記述しています。 PHP、データベース共に文字コードはEUCで統一しています。 レンタルサーバなので.htaccessを使用して、下記のように設定しています。 php_flag output_buffering off php_value default_charset EUC-JP php_value mbstring.language Japanes php_flag mbstring.encoding_translation on php_value mbstring.http_input EUC-JP php_value mbstring.http_output EUC-JP php_value mbstring.internal_encoding EUC-JP php_value mbstring.substitute_character none php_value mbstring.detect_order EUC-JP,SJIS,JIS,UTF-8,ASCII 文字化けが生じる、表示部分のphpの記述ですが、 if($keyword != ""){ $keyword = mb_convert_encoding($keyword, "EUC-JP"); echo htmlspecialchars(stripslashes($keyword)); } のように記述しています。 ちなみに、「ッ」のような他のカタカナ小文字が入っているキーワードでは、正常に検索結果が表示されます。 どうぞよろしくお願いいたします。

    • ベストアンサー
    • uni_51
    • PHP
    • 回答数3
  • PHPファイルにIDやパスワードを書き込んでも問題ないのでしょうか?

    初歩的な質問ですがよろしくお願いします。 mysqlに接続するユーザー名とパスワードをphpファイルに直接書き込んでいます。 そのphpファイルはpublic以下にアップロードしてあるので誰でもアクセス可能です。 XOOPSなどでもそのような状況だと認識しています(違ったらすいません) こういう状態は問題あるのでしょうか? また、皆さんはどのように対処しているのでしょうか?

    • ベストアンサー
    • yes87
    • PHP
    • 回答数2
  • DATE関数でYが文字化けします

    DATE関数でYが文字化けします、他の出力は正常です。 原因を教えて下さい、宜しくお願い致します。 <?php $time=date("Y月ねん年年月n月j日年・Ah:i:s:D"); print($time); ?> ====== Outputは下記のとおりです。 ⇒ 2007月ねん・・月4月30日・・PM02:10:28:Mon ====== 考えられる原因とは何でしょうか。 ・Apache Friends XAMPPlite (Standardpaket)Version 1.6.0a 、 Win XP、Editorは秀丸

    • ベストアンサー
    • htgo
    • PHP
    • 回答数2
  • ジャンプ先アドレスの最後に?が付いてしまう

    aタグかformによって別のphpにジャンプします。 ジャンプ先phpはテスト段階なので<?php echo 'a';?>しか書いていません。 aタグかformのPOSTなら、http://www.a.com/test.phpにジャンプしますが、 formのGETでサブミットするとhttp://www.a.com/test.php?にジャンプします。 なぜ最後に?が付いてしまうのでしょうか? ジャンプ元のphpもテスト用なのでaタグやform以外に、この変な現象の原因らしいことは全く書いてありません。 ブラウザもIEとNNで試したので、ブラウザが原因でもなさそうです。 PHPよりもIISの設定が原因のような気もします。

    • ベストアンサー
    • ceshkr
    • PHP
    • 回答数1
  • HTMLエスケープ処理とデーターベース

    初歩的な事で申し訳ありませんがご教授下さい。 フォームから受け取った文字列をデータベースに格納し、必要に応じて出力するような処理でのHTMLエスケープについて質問です。 (前提条件として、HTMLタグは使用をさせない。フォームに入力する文字列には、< や >を使う必要性はほとんどないものとします) HTMLエスケープ処理は、どのタイミングで行うのが普通でしょうか? 1.JavaScliptで特定文字 < や > を入力させない。 2.サーバーサイドで特定文字 < や > を入力させない。 3.DBに格納する前にエスケープして、エスケープ処理後の文字列をDBに格納する。 4.DBにはそのまま格納し、出力のさいにエスケープ処理を行う。 5.どこでもかまわない。 6.その他 今まで私はあまり意識する事なく(4)を選択していたのですが、最近他の人の作ったプログラムを見る機会が増えて、その違いにちょっと気になりました。 正解はないのかも知れませんが、一般的な方法と、そのメリット、デメリット等、教えて頂けると助かります。

    • ベストアンサー
    • yoshi_t
    • PHP
    • 回答数3
  • 【携帯】位置情報コンテンツ+セッション

    現在、会員制の位置情報コンテンツを作成しています。 ログインをして、セッションの維持のため、セッションIDをURLに付加しているのですが、 現在地を更新のために、 device:location?url=http://example.com/ にジャンプさせようと思います。 ですが、 device:location?url=http://example.com/<?=SID?> のようにセッションIDを渡すと、リンク先のページで、 http://example.com/?PHPSESSID=xxxxxxxxxx?datum=xxxxx&unit=xxxxx&lat=xxxxx&lon=xxxxx のようなURLになってしまい、エラーが出ます。 (エラー内容は、 Warning: session_start():The session id containsillegal characters, valid characters are a-z, A-Z, 0-9 and '-,' in line 38 Warning: session_start():Cannot send session cachelimiter - headers already sent (outputstarted at line 38) in line 38 のように表示されます。) どのようにしてセッションを保持し、位置情報を取得することができるのでしょうか?

    • 締切済み
    • Rasyuki
    • PHP
    • 回答数1
  • PHPのバックグラウンド処理でタイムエラー?

    PHPで定期的にサイトの更新を把握するため、fopenで呼び出すプログラムを作っています。 SYSTEM関数でバックグラウンド処理を行っているのですが1時間くらいするといつのまにか処理がストップしてファイルへの出力がとまってしまいます、タイムエラーにしては毎回停止する時間が違うので他の原因のような気がするのですが・・・ なにが原因かわかる方いませんでしょうか?回答よろしくお願いします。

    • ベストアンサー
    • enshi
    • PHP
    • 回答数1
  • あるURLがファイルなのかディレクトリなのかが知りたい

    用語の使い方が不正確かもしれませんがご容赦下さい。 例えば、http://www.foobar.jp/xxx というURLがあった場合に、xxx の部分がファイルなのか、あるいはディレクトリなのか、あるいはスクリプトなのか、を知るにはどうしたらいいでしょうか? 現在、以下のようなプログラムを作成しています。 ・あるURLを指定する。 ・そのURLが指すページの内容を取得する。 ・そのページの中にあるリンクを全て取得する。 ・取得したリンクをフルパスに変換して出力する。 この際、 ・指定したURLがホスト名のみ ・指定したURLが / で終わっている ・取得したリンクがフルパス ・取得したリンクが / で始まっている ような場合は問題ないのですが、 ・指定したURLがホスト名のみでなく、かつ / で終わらず、かつ取得したURL が / ではじまらない といった場合は、どのようにフルパスを組み立てたらいいかがわかりません。 例えば、指定したURLが「http://www.foobar.jp/xxx」、取得したリンクが「yyy/zzz」のような場合、出力すべきフルパスは以下の2種類が考えられますが... http://www.foobar.jp/xxx/yyy/zzz http://www.foobar.jp/yyy/zzz 以上よろしくお願いします。

    • ベストアンサー
    • ggandt
    • Perl
    • 回答数1
  • ベストマッチさせる方法

    市外局番からもっともマッチした地域を表示させたいのですが。。 どうしますか? 例 %kyokuban=( 03=>東京1, 031=>台東区, 0312=>上野, 0313=>日暮里, 032=>墨田区, ); $test=0312; ????????わかりません???????

    • ベストアンサー
    • stockjp
    • Perl
    • 回答数3
  • どなたか助けて下さい

    天気予報をrssで取得して晴ならば画像を表示するようにしているのですがcase文に入ってくれません。試しにechoで表示させたら1=晴と表示されます。何が考えられますでしょうか?どなたか助けて下さい。 echo "1=", $wether[1]; $wether = split("<br />", $description); switch($wether[1]){ case "晴": $buf .= "<img src='/image/hare.gif'>"; break; ・・・あと続く }

    • ベストアンサー
    • honmati715
    • PHP
    • 回答数4
  • どなたか助けて下さい

    天気予報をrssで取得して晴ならば画像を表示するようにしているのですがcase文に入ってくれません。試しにechoで表示させたら1=晴と表示されます。何が考えられますでしょうか?どなたか助けて下さい。 echo "1=", $wether[1]; $wether = split("<br />", $description); switch($wether[1]){ case "晴": $buf .= "<img src='/image/hare.gif'>"; break; ・・・あと続く }

    • ベストアンサー
    • honmati715
    • PHP
    • 回答数4
  • mb_ereg_replaceに関して

    こんにちは。お世話になっております。 開発時(PHP5.1.4)では何ら問題なかったものが、レンタルサーバー上(PHP5.0.4)へアップロードしたら、mb_ereg_replace関数の部分でエラーが出て対処に困っております。 エラー文 Call to undefined function mb_ereg_replace() $key = $_GET['key']; $key = addslashes($key); $key = mb_convert_encoding($key, 'EUC-JP', 'auto'); $key = mb_ereg_replace(" ", " ", $key);//ココでエラー $arr = explode(" ",$key); 上記は実際のソースの一部ですが、GETで渡された文字列(検索キーワード、key=○○)をDB(MySQL)に登録のあるデータを検索する。といった結果を願い設置しております。 借りたサーバ(共有)は、(適切な言葉じゃないかも知れませんが)PHPはCGIのもと動かしているようですが、これも原因の一つなのでしょうか? お忙しいなか恐縮ですが、ご指導のほど宜しくお願い申し上げます。

    • ベストアンサー
    • sadacha
    • PHP
    • 回答数2
  • mb_ereg_replaceに関して

    こんにちは。お世話になっております。 開発時(PHP5.1.4)では何ら問題なかったものが、レンタルサーバー上(PHP5.0.4)へアップロードしたら、mb_ereg_replace関数の部分でエラーが出て対処に困っております。 エラー文 Call to undefined function mb_ereg_replace() $key = $_GET['key']; $key = addslashes($key); $key = mb_convert_encoding($key, 'EUC-JP', 'auto'); $key = mb_ereg_replace(" ", " ", $key);//ココでエラー $arr = explode(" ",$key); 上記は実際のソースの一部ですが、GETで渡された文字列(検索キーワード、key=○○)をDB(MySQL)に登録のあるデータを検索する。といった結果を願い設置しております。 借りたサーバ(共有)は、(適切な言葉じゃないかも知れませんが)PHPはCGIのもと動かしているようですが、これも原因の一つなのでしょうか? お忙しいなか恐縮ですが、ご指導のほど宜しくお願い申し上げます。

    • ベストアンサー
    • sadacha
    • PHP
    • 回答数2
  • 読み込み先を制限するには…

    いつもお世話になっています。 現在ショッピングサイトを運営しているのですが、基となるindex.phpにファイルを読み込み形式をとっています。 * クエリーの種類 * h:指定されたファイルを読み込む * d:指定されたディレクトリのbody.htmlを読み込む 実際呼び出す際のURL:http://www.****.jp/?d=camp 上記のように入力するとindex.phpにcampフォルダのbody.htmlが読み込まれ表示する仕組みです。 しかしながら最近、http://www.****.jp/?h=http://www.yahoo.co.jp/などURLを直接アドレスバーに入力しサイトとは無関係のファイルを呼び出すユーザーがいて困っています。 サイトのドメイン(今回はhttp://www.****.jp)や指定したファイル以外のサイトから呼び出した場合エラー画面(error.php)を表示させるようなアクセス制限は可能でしょうか? 現在のスクリプトは下記の通りです。 ------------------------------------------------------------- //メインメニューのクエリーを作る $mainQuery = array( "home"=>"?", //表示する //ルートのHTMLを直接指定していた場合は問答無用で塗り替え $showedBody = "home.php"; if($_REQUEST["h"]){ $showedBody = $_REQUEST["h"]; ------------------------------------------------------------- どうかお力をお貸し頂けたら嬉しいです。 その他不足のスクリプトなどあれば回答時にご指摘頂ければ補足させて頂きます。 よろしくお願いいたします。

    • ベストアンサー
    • news_0203
    • PHP
    • 回答数4
  • \x00 でエラー

    preg_replace で \x00 を使うと No ending delimiter '/' found というエラーが出てしまいます。 このエラーの解決法はどのようにすればいいのでしょうか 例) $str = preg_replace("/((?:[\x80-\x9F\xE0-\xF7\xFA-\xFC][\x40-\x7E\x80-\xFC]|[\x00-\x7F]|[\xA1-\xDF])*)([\xF8\xF9][\x40-\x7E\x80-\xFC])/e","'$1[i'.unpack('H4','$2').']'",$str); サーバー環境 WindowsXP SP2 Apache1.3.37 php 5.2.1

    • ベストアンサー
    • wish46
    • PHP
    • 回答数1
  • $textの文字列の中にある & を ■ に変えたいです。

    <? $text ="u&ampampfayv&ampin&ampe6&rna6uinv"; ///////////////////////////// print $text."<br>"; print "<XMP>".$text."</XMP><br>"; ///////////////////////////////正規表現で置換 $text = preg_replace('/&[^amp]/', "■", $text); ////////////////////////////// print $text."<br>"; print "<XMP>".$text."</XMP><br>"; ////////////////////////////// print "u&ampampfayv&ampin&ampe6■rna6uinv"; print "<XMP>u&ampampfayv&ampin&ampe6■rna6uinv</XMP>"; ?> $textの文字列の中にある & を ■ に変えたいです。 amp という文字列の前についている & は ■ に置換してはいけません。 &ampamp という文字列の前についている & も ■ に置換してはいけません。 現在の正規表現では r が消えてしまっています。 ブラウザで見た場合に結果が u&ampfayv&in&e6■rna6uinv になるようにして下さい。 よろしくお願いします。

    • ベストアンサー
    • bavarois
    • PHP
    • 回答数4