検索結果
PHP
- 全てのカテゴリ
- 全ての質問
- PHPExcelで日本語(漢字)ファイルが読めない
ひらがな、カタカナは読み込めるのですが、漢字で下記のエラーが出ます。 mb_convert_encodingでいろいろ変換してみましたがダメです。 教えてください! Fatal error: Uncaught exception 'Exception' with message 'Could not open 予?xls for reading! File does not exist, or it is not readable.' in C:\xampp\htdocs\Partner_Management\PHPExcel\Shared\OLERead.php:76 Stack trace: #0 C:\xampp\htdocs\Partner_Management\PHPExcel\Reader\Excel5.php(928): PHPExcel_Shared_OLERead->read('??????xls') #1 C:\xampp\htdocs\Partner_Management\PHPExcel\Reader\Excel5.php(498): PHPExcel_Reader_Excel5->_loadOLE('??????xls') #2 C:\xampp\htdocs\Partner_Management\EstimateCost.php(54): PHPExcel_Reader_Excel5->load('??????xls') #3 {main} thrown in C:\xampp\htdocs\Partner_Management\PHPExcel\Shared\OLERead.php on line 76 ファイル名:予定.xls OS:WindowsXP Excel:Excel5 XAMPP:1.7.3 [php.ini] mbstring.language = Japanese mbstring.internal_encoding = UTF-8 mbstring.http_input = pass mbstring.http_output = SJIS mbstring.encoding_translation = Off mbstring.detect_order = SJIS,EUC-JP,JIS,UTF-8,ASCII mbstring.substitute_character = none; mbstring.script_encoding= Shift_JIS [phpファイルの文字コード] UTF-8
- JSから呼ばれた時と直接アクセスの時
こんにちは、お世話になります。 Javascript(以下js)のsrcにPHPを指定し、HTML内にPHPを埋め込む時、 埋め込まれた場合と直接PHPにアクセスされた場合を判定する方法が判りません。 埋め込む時のソース <script language="JavaScript" type="text/javascript" src="http://example.com/aaa.php?p=1" charset="utf-8"></script> こんな感じですが、cakePHPで書いているので、実際のsrcは http://example.com/aaa/bbb/1 のようになります。 PHP側で出力する時、js形式になるようにしています。 埋め込む時はそのままjsとして実行されますが、 PHPが直接アクセスされた場合は、htmlタグなどが無いため 変な表示になってしまいます。 直接アクセスされた場合はhtmlタグやbodyタグなどを出力させたいのですが、 判定方法はPHPでどのように書いたらよいのでしょうか?
- 出力エンコードと内部エンコードが異なる場合の対策は?
Linux, apache, PHPのいずれも初心者です。 自宅サーバ(Vine Linux 4.1)にapache2とPHP5をインストールし、とあるフリーのPHPプログラムを動かそうとしています。 このプログラムはShift-JIS前提で書かれているのですが、プログラム中で入力したデータはEUC-JPで保存されてしまいます。その結果、データの表示画面を読み込むと、プログラムで予め用意された部分は正しく表示されるのですが、自分で入力したデータの部分が文字化けしてしまいます。 対応策として、以下の.htaccessをプログラム(hogehoge.php)と同じディレクトリに置くことで解決できるという情報があったのですが、私の環境では相変わらず文字化けしたままです。 どなたか対応策をご教授いただけますでしょうか。よろしくお願いします。 php_value output_handler mb_output_handler php_value mbstring.http_output "SJIS" php_value mbstring.internal_encoding "SJIS"
- 文字化けの原因を教えてください。
WindowsでスクリプトをEUCで保存し、シフトJISでブラウザへ出力ときの 設定として以下のようにphp.iniを設定しています。 ~php.ini~ output_buffering = On output_handler = mb_output_handler magic_quotes_gpc = Off default_charset = Shift_JIS extension_dir = C:/php/ext extension=php_mbstring.dll mbstring.language = Japanese mbstring.internal_encoding = EUC-JP mbstring.http_input = auto mbstring.http_output = SJIS mbstring.encoding_translation = On mbstring.detect_order = auto mbstring.substitute_character = none ~php.ini~ mb_detect_encodingでDBから取得した値の文字コードは、SJISでした。 mb_convert_encoding($dbdata,"EUC-JP","SJIS")で正しく表示されます。 iniファイルの設定のみで正しく表示するにはどのように設定するのがいいのでしょうか?それとも、このような文字コード変換は必須なのでしょうか? よろしくお願いします。 [PHP使用環境] PHP=5.1.6 OS=Windows2000 PRO webserver=apatch2.0 [DB環境(リモートサーバ)] DB=MS SQL Server2000 OS=Windows2003 server R2
- Pear + MySQLで検索サイトの作り方
Pear + MySQLで検索サイトを作っています。 テーブル名 city_code カラム id pre_no pre_code city_no city_name shop tel (ID、都道府県コード、都道府県名、市町村コード、市町村名、店名、TEL) PHP作成は最小限に、URLのリンクで多数の種類の表示が出来るように考えています。 http://hoge.jp/search.php?pre_no=13 東京都の飲食店の表示 http://hoge.jp/search.php?pre_no=14 神奈川県の飲食店の表示 http://hoge.jp/search.php?city_no=13001 千代田区の飲食店の表示 http://hoge.jp/search.php?city_no=14001 横浜市の飲食店の表示 のような感じです。 下記の試作品search.phpでは、全国の全ての登録飲食店を表示してしまいます。 (データベース接続はできています) これをURLでhttp://hoge.jp/search.php?pre_no=13のようにすることにより、検索地域を特定したいのです。(あくまで例: URLで振り分け指定出来ればこの形ではなくても可) データベースサーバーの使用用途の基本中の基本だと思うのですが、素人なものでこんなことで躓いています。何故かWEBにも落ちていません。Pearの本も購入したのですが記載されていません。 どなたかご教授頂けませんでしょうか? 宜しくお願い致します。 ************** search.php ************** <?PHP //config.phpのサーバー基本情報を読みに行く require_once '../../config.php'; require_once '/usr/share/pear/DB.php'; $db = DB::connect($dsn); if (PEAR::isError($db)) { die($db->getMessage()); } print('接続に成功しました<br>'); $db->query('SET NAMES ujis'); if (PEAR::isError($db)) { die($db->getMessage()); } $sql = 'select * from city_code'; $res =& $db->query($sql); if (PEAR::isError($res)) { die($res->getMessage()); } while ($row =& $res->fetchRow(DB_FETCHMODE_ASSOC)) { print($row['pre_name'].'<br>'); print($row['city_name'].'<br>'); print($row['shop'].'<br>'); print($row['tel'].'<br>'); } $db->disconnect(); ?>
- カタカナ小文字「ァ」の、検索時の文字化けで困っています。
はじめまして。 現在、検索結果が表示されるページを制作しているのですが、その際、 カタカナ小文字の「ァ」が入っているキーワードで検索したときに、 検索キーワードの表示のところで、下記のように文字化けが起こってしまって、困っています。 (「ヴァージニティ」→「ヴ 璽献縫謄 」) 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)); } のように記述しています。 ちなみに、「ッ」のような他のカタカナ小文字が入っているキーワードでは、正常に検索結果が表示されます。 どうぞよろしくお願いいたします。
- setcookieが動きません
$id = $_GET['id']; setcookie('id', $id, time() + 24 * 3600); というスクリプトをphpフォームが付いたindex.htmlの冒頭に書き、 入力内容確認画面のconf.phpに <input type="hidden" name="ap_id" value="<?php echo $_COOKIE['id']; ?>"> と入れています。 一度だけクッキーが取得できたのですが、なぜかそれ以降機能しなくなりました。 PHP初心者なのですが、ぜひ間違いを教えて下さい! 宜しくお願いします。
- チェックボックスデータを引き継ぐ
index.htmlのチェックボックスのデータをa.phpで$jyusyoPOSTで受け取りデータベースからデータを取りだし表示させます。そしてb.phpにもチェックボックスの条件で表示させたいです。以前お聞きした際hiddenで出力し、取得しろとの事でしたが詳しく知りたいです。a.phpでどのように出力しb.phpでどのように取得するか詳しく教えて下さい。宜しくお願い致します。
- ベストアンサー
- PHP
- noname#142312
- 回答数1
- セッションの手法に関しまして
a.php ---------------------------------- <?php session_start(); $_session['output']= $output; ?> htmlの上 $gazou1 = 'base.gif'; $gazou2 = $row['gazou']; $output =uniqid("").'.gif'; $cmd = 'convert -compose over ' . $gazou1 . ' ' . $gazou2 . ' ' . $output; system($cmd,$ret); if ($ret===0){ print '<img src=' . $output . '>'; ---------------------------------- と、書いて b.php ---------------------------------- <?php if($_SESSION['output']){ echo '<img src=' . $output . '>'; } ?> と、書いたら画像情報がB側で表示されるかなと思いましたが表示されません。修正点等御指摘下さい。
- ベストアンサー
- PHP
- noname#142703
- 回答数2
- cronで外部ファイルへアクセス
はじめまして。分からない事あり、質問させて頂こうと、アカウントを取得いたしました。 cronが使える共有レンタルサーバー内に、ある簡単なメールが送信されるファイルを置きました。cronテストのために設置したファイルで、アクセスされるとメールが送信されるだけのものです。(ブラウザ経由でアクセスしてもメールが送信されます) そこで、以下のようなファイルを作成し、cronにて日時設定を行うと、正常にメールが配信されるまで確認いたしました。(mail.phpとは上記メール配信ファイルです) #!/bin/sh #PHP /usr/local/bin/php /~~~~~~/cron_test/mail.php exit 他方、あるレンタルサーバーを借りているのですが、そこではcronが使えません。 そこで、アクセスされたらPHPが働くファイル(access.phpとします)を置き、cronが使える上記サーバーで定期的にそのaccess.phpにアクセスしたらどうか?と考えに至りました。 要は、cronが使えない以下のサイト(ファイル)にcronを使ってアクセスしたいといった感じです。 http://○○○.com/access.php ここで質問なのですが、上記のような一連のcronの中で、mail.phpにあたるスクリプトはどのようなものになるのでしょうか? echo"<img src=\"http://○○○.com/access.php\">"; と記述しているのですが、失敗に終わってしまいます。 前置きが幾分長くなってしまいましたが、この外部ファイルをアクセスするためのソースが分からず困っている次第です。 お忙しい中恐縮ですが、アドバイスのほど宜しくお願い致します。
- ApacheとEclipseを連携させたい
PHP初心者です。 apacheとeclipseとmysqlを組み合わせてプログラムを作成したいと思ったのですが、Apache2とEclipseと連携させる方法とかはあるのでしょうか。 ここが上手く連動してくれないとEclipseで作成している意味が無いのですが。 明らかに初心者の意見だと思いますが、Apache2では無理なのでしょうか。 一応このサイトを見たのですが。 http://www.goodpic.com/mt/archives2/2004/08/eclipse_php5php.html 後は、Smartyについてです。 以下のような事が書かれています。 『ファイルを解凍して、Smarty-2.6.3\libsの中にあるファイルをすべて、C:\php5\libsなどにコピー。このC:\php5\libsへPHPからのPathを通すために、php.ini内に include_path = "C:\php5\libs" という行を追加します。これでSmartyのインストールも完了。もし MySQLも利用する場合は、以下の行のコメントアウトをはずしておきましょう。 extension=php_mysql.dll』 ちょっとmysqlの部分も入ってますが、まずphp5/libsというフォルダがありません。 これは自分で作成するのでしょうか。 そうだとしたら、問題無いのですが。 でも、1番知りたいのはApache2とEclipseの連携ですね。 この事についてご存知の方がいましたらアドバイスを頂ければ、と思います。 どうぞ宜しくお願い致します。
- セッションを使わずに遷移先画面に変数の値を渡すには?
<input type="hidden" value="myID">みたいな隠しフォームで 行く先々の画面に値をPOSTで渡してきました。 他方、 header("Location: mypage.php") のように画面を遷移させる場合、遷移先の画面に $_POST["myID"]のように値を渡すことはできませんか? この場合session_start();を使って、$_SESSION["myID"]のように値を 渡す(保持する)のが王道なのでしょうか? セッションと聞くと何かとトラブルになりやすそうなイメージがあり、 できれば使いたくないのです。 具体的に説明しますと、前にこの掲示板で教えていただいた、次の例を使っています。 入力文字チェックをかけたいのでPHP_SELFで同じ画面を呼び出して、 問題なければmypage.phpにリダイレクトさせる枠組みですが、 header("Location: mypage.php");という風に遷移した場合は、 遷移先のmypage.phpでは、$_POST["myID"]はPOSTされてきませんよね (値を受け取れませんよね)?? 妙案あればご教示下さい。 <?php if ($_POST["reg"] == "" ) $errFlg = true; if (!$errFlg) { if (strlen($_POST["myName"]) > 30) { $errFlg = true; $errStr["myName"] = "30字以下"; } $errMsg = "エラー!!"; } if ($errFlg) { ?> <html> <body> <form method="post" action="<?php $_SERVER["PHP_SELF"] ?>"> 氏名 <input type="text" name="myName" value="<?= $_POST["myName"] ?>"><?= $errStr["myName"] ?> <input type="hidden" name="myID" value="<?= $_POST["myID"] ?>"> </form> <input type="submit" name="reg" value="登録"> </body> </html> <?php } else { $sql = "update mytable set myID = 'xxxx'"; $rst = mysql_query($sql, $con); header("Location: mypage.php"); } ?>
- 動的URLのサイト内検索について
サイト内検索を設置したいのですが、 動的URL部分の検索がうまくいきません。 どうすればよいでしょうか? ■試したこと 無料で配布されている「Web Search(Web Liberty)」、「PHP Search(PHP Labo)」、「msearch」をそれぞれ設置してみたのですが、何れも通常のphpページの検索結果は反映されるものの、動的URL部分の検索結果phpページが反映されません。 ※動的URL…details.php?id=1 みたいなイメージです。 なんで反映されないのかがよく分かりません。 「通常のPHPファイル」「動的URLを生成するPHPファイル」に違いはあるのでしょうか? ・通常のPHPファイルは、ローカルファイル? ・動的URLは、リモートのファイル? そもそもPHPはサーバー側で生成される(?)ので、通常のPHPファイルだろうが、動的URLだろうが、同じだと思うのですが、なんで、挙動に違いが出るのか(動的URL部分が反映されないのか)が分かりません。 あるいは、動的部分にAJAXも一部利用しているので、その影響でしょうか? 他の手段として、Googleを利用するぐらいしか思いつかないのですが、 ページをなかなかインデックス化してくれないため、 何か違う方法を探しています。 「動的URL部分のサイト内検索」を設置するに辺り、注意した方がよい点(そもそもどういう風に考えればよいか)や、何かよい方法等、この質問見て気がついた点があれば、アドバイスをよろしくお願いします。
- jsでルートディレクトリより上のファイル
jQueryのAjaxでurlをルートディレクトリより上の階層にあるファイルを指定できないのでしょうか? 具体的には以下のような階層になっていてindex.html内で記述されているAjaxでexe/test.phpを呼び出したいと思っています。 サーバールート ├home(ルートディレクトリ) │└index.html └exe └test.php index.html内に記述されているjavascript $.ajax({ type: 'post', url: '../exe/test.php', dataType: 'html', … }); これを実行すると、FireBugで「404 Not Found http://www.samplecom/exe/test.php」と出てしまいます。 つまり、'../exe/test.php'と指定しているのにルート直下の「exe/test.php」を指定しているかのような結果になってしまっています。 javascriptではルートディレクトリより上のファイルを指定できないのでしょうか?
- ベストアンサー
- JavaScript
- suffre
- 回答数3
- このプログラムの認証ウィンドウが表示される理由は?
質問させてください。 先日からPHPを学び始めたものです。 まずは以下のソースを見ていただきたいです。 ~~ここから~~ <?php if (!isset($_SERVER["PHP_AUTH_USER"]) || $_SERVER["PHP_AUTH_USER"] !== "username" || strlen($_SERVER["PHP_AUTH_PW"]) < 5) { // ヘッダを送信する header("HTTP/1.1 401 Unauthorized"); header("WWW-Authenticate: Basic realm=\"Private area\""); echo "認証に失敗しました"; exit; } // 認証成功 echo "<p>認証に成功しました<p>"; ~~ここまで~~ このphpファイルを実行すると、パスワードの入力画面が表示されますが、どこで入力画面を表示する処理を行っているのでしょうか? if()の中でheader()実行していますが、そのheader()を実行した場合、直後のexit()も実行することになり、処理が終了すると思います。 どなたかご存知でしたらお教えください。
- xamppのインクルードパスの設定の方法
素人ながら、ウェブサイトを作成中です。 ヘッターやフッターを共有にしたくて、HTMLにPHP の inlude のコード(<?php include('./header.html'); ?>)を記載しました。 サーバーにアップすれば、問題なく、ヘッターが表示されました。 しかし、xampp上では、ヘッターが表示されません。 xamppでどのような設定をすれば、確認することが出来るのでしょうか。ご教示お願い致します。 因みに、ネットで検索して、xamppの下記のコードを変更してみたのですが、インクルードにしているヘッター部分は表示されませんでした。 【変更してみたxamppの「php.ini」のコード】 ■変更前のコード ; Windows: "\path1;\path2" ;include_path = ".;c:\php\includes" ■変更後のコード ; Windows: "\path1;\path2" include_path = ".;c:\php\includes;c:\php\pear";
- ベストアンサー
- PHP
- noname#233083
- 回答数1
- これは「意味のあるアクセス」でしょうか?
サイト運営管理をしております。 アクセス解析をチェックしていると時折、下記のアドレスからのアクセスでサイトのアクセス数が跳ね上がる日があることに気づいたのですが、下記アドレスからのアクセスは、「見かけだけのアクセス」なのか、「意味のあるユーザーの伴ったアクセス」なのかの判断がつきかねています。 アドレスは下記の通りです。 http://php.s3.to/rank_.php?act=all http://php.s3.to/rank2.php?act=all 尚、自サイトのトップページに逆アクセスランキングのPHPを下記のサイトよりレンタルして貼っております。 http://php.s3.to/ このアクセスはどういった性質なのでしょうか? ご存知の方がいらっしゃいましたらご教授をお願いいたします。
- ベストアンサー
- SEO
- jumpup9999
- 回答数1
- 検索時エラー
はじめまして PHPを用いてsystem.csv内を検索するんですが、ある文字を入力すると Warning: eregi() [function.eregi]: REG_BADRPT と表示されてしまいます。 例えば: 藤、++ などです。 なぜでしょうか? またどのように修正してあげたらいいのでしょうか? よろしくお願いいたします。 <?php if($_GET["key"]==""){ print"キーワードを入力してくださいね"; }else{ $KeyWord=$_GET["key"]; $KeyWord=htmlspecialchars($KeyWord); $KeyWord=mb_convert_encoding($KeyWord,"EUC-JP","auto"); $Result=array(); $Data=file("system.csv"); for($i=0;$i<sizeof($Data);$i++){ $lines=strip_tags($Data[$i]); if(eregi($KeyWord,$lines,$text_b)){ array_push($Result,$Data[$i]); } } ?> <?php $n=sizeof($Result); if($n==0){ print"見つかりませんでした"; }else{ print"{$n}件見つかりました"; ?> <ul> <?php for($i=0;$i<sizeof($Result);$i++){ $line=explode(",",$Result[$i]); ?> <li><?=$line[2]?><a href="item.php?id=<?=$line[0]?>"><?=$line[1]?></a></li> <?php } } } ?>
- 締切済み
- PHP
- noname#184276
- 回答数2
- Getリクエストによりダウンロードファイルを変える
お世話になります。aizawa_naoと申します。 --------------------------------------- 環境、php5.2.0-8 apache2.2.4 debian --------------------------------------- 上記の環境で、簡単なphpスクリプトを作成しようと思っています。 ほとんど、phpの知識はないのですが、phpでgetリクエストを受け取り、 それをブラウザに出力することは出来ます。 これをサイトなどで、よく見るGetのパラメータにより、ダウンロードする ファイルを変化させたいのですが、どのような記述になるのでしょうか? 例)http://example.com/test.php?file=test.zip このようなリクエストがくると、test.zipをダウンロードし、 http://example.com/test.php?file=test2.zip とするとtest2.zipがダウンロードされるような仕組みをご教示いただければと思います。 初歩的な質問で申し訳ありませんが、宜しくお願いいたします。
- ベストアンサー
- PHP
- aizawa_nao
- 回答数1
- JpGraphを使ってみたいのですが…
こんにちは。 いつもお世話になっております。 JpGraphというものがあるのを知って、 使ってみたいと思ってさっそくインストール したのです。 php.iniを書き換えて、JpGrapgの インストールまで終了しました。 phpinfo()でGDが有効になっているのも 確認しました。 簡単なサンプルを実行してみたのですが エラーが出てきます。 どなたかご指導していただけないでしょうか・・ PHPの中身 <?php include("ijpgraph/jpgraph.php"); include("jpgraph/jpgraph_pie.php"); //グラフの作成 $graph=new Graph(300,200,"auto"); //線1のプロット $data=array(75,56,24,12,5); $plot->new PiePlot($data); $graph->Add($plot); $graph->Stroke(); ?> エラー内容 Parse error: syntax error, unexpected T_STRING in C:\Apache\Apache2\htdocs\graph\test.php on line 10 どうかよろしくお願いいたします。
