【PHP】質問スレッドpart34【php】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2006/03/21(火) 10:19:14ID:???【ガイドライン】
質問の前にgoogleやマニュアルを検索してください。
http://www.php.net/manual/ja/
http://php.s3.to/namazu/
◆質問する場合の注意
1. 自分のIDを表示させること。(メール欄には何も記述しないでください)
2. ハードウェア、OSのバージョン等を明記すること。
3. 己の行った操作、変更などを詳しく明記すること。
4. エラーメッセージはそのまま表記すること。
5. 質問者としても態度をわきまえること。
◆質問後の注意
・質問者は必ずIDを表示させてください。
書き込む場合はメール欄に何も記述しないでください。
・2回目以降は最初に質問した際のレス番号を名前欄に入れてください。
(逆に回答者は質問者に対して>>(アンカー)をつけて答えてください。)
・解決しなくても回答をもらった場合はお礼を言う。
(荒らし、煽りは除く)
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークはそれぞれの該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
・オブジェクト指向については良スレがないから本を買え
・速さについては自分でベンチをとってここに書け(違う環境の人も調べてくれるかも)
過去スレ、関連リンク、FAQ等>>2-10辺り
0447441
2006/04/16(日) 12:57:31ID:???してないです。
自分で作ったセッション使ったページ、他のサイトでは表示されます。
netpriceでは表示されないです。
>>444さんはどうやってレスポンスヘッダーを表示されましたか?
0449nobodyさん
2006/04/16(日) 13:40:29ID:???外部から接続できるなら
http://fula.jp/cgi-bin/head/
http://fula.jp/cgi-bin/head2/
これ使ってみれば
0450nobodyさん
2006/04/16(日) 13:51:33ID:???多分、ツールはどれでも関係なくて、>>447は
「セッションを使うサイトは最初のページでいきなりクッキーを発行してるはず」
というPHPサイトの固定概念に惑わされてるだけ。
netpriceでは要所要所、必要なポイントでしかクッキーを発行していない。
0451441
2006/04/16(日) 14:47:45ID:???session_start();
を実行すると思うのですが、netpriceはphp de セッションを
使用しているのに挙動が違うのが気になったのです。
カート情報 etc.を保持するならば全ページでsession_startしている
と思うのですが
0452nobodyさん
2006/04/16(日) 15:06:18ID:???0453441
2006/04/16(日) 15:08:59ID:???セッションを使うとsetcookieが使われますよね。
0454nobodyさん
2006/04/16(日) 15:33:37ID:???> カート情報 etc.を保持するならば全ページでsession_startしている
ここが誤解。別に全ページでそんなのする必要は無い。
0455nobodyさん
2006/04/16(日) 23:04:14ID:???繰り返し質問が出てくるね
0456nobodyさん
2006/04/17(月) 00:29:11ID:ivoWdWE50457nobodyさん
2006/04/17(月) 00:53:40ID:???http://pc8.2ch.net/test/read.cgi/php/1144513878/434
http://pc8.2ch.net/test/read.cgi/php/1144513878/438
カエレ
0458441
2006/04/17(月) 01:42:11ID:???セッションへ格納する際にsession_start()するとして
また、購入ページに戻ったときに$_SESSION['????']で
参照できません。
0459nobodyさん
2006/04/17(月) 02:16:55ID:???購入ページとカート内確認ページ&支払いページ以外でまで
セッションを読み書きする必要はないじゃん
そこだけsession_startしてるんでしょ
0461nobodyさん
2006/04/17(月) 08:37:34ID:ivoWdWE5ありがとう
0462441
2006/04/17(月) 08:53:47ID:???0463nobodyさん
2006/04/17(月) 10:29:15ID:???すまんがnetpriceのページ見てもどこでカート内容の表示なんてしてるのかが分からない。どこよそれ?
どう見ても、ページ上部の「カートを見る」をクリックしたときしか表示してないように見えるんだが…
(当然、ここをクリックするとクッキーが発行される)
0467nobodyさん
2006/04/17(月) 16:25:10ID:???【PHP】セッションについて語ろう!【PHP】
↑みたいなスレもあるみたいだがセッションだけの話しではないから駄目か?
0468nobodyさん
2006/04/17(月) 17:49:35ID:???0469441
2006/04/18(火) 09:20:14ID:???Set-Cookie: PHPSESSID=***************************; path=/
が付加されるよな。
そんでそのページ内だったら$_SESSで値を参照できると
思うのだが違うのか?
0470nobodyさん
2006/04/18(火) 11:55:20ID:???> そのページのHTTPレスポンスヘッダに
> HTTPレスポンスヘッダに
> レスポンス
そのとおりだね
> そんでそのページ内だったら$_SESSで値を参照できると
> 思うのだが違うのか?
事実違うんでしょ?
結論:>>468
0472nobodyさん
2006/04/18(火) 14:03:14ID:???netpriceがどういうプログラムを作ってるかはとりあえず置いといて概論で話をすると、
> session_start()すると、そのページのHTTPレスポンスヘッダに
> Set-Cookie: PHPSESSID=***************************; path=/
> が付加されるよな。
これはクッキーを使う設定の場合のみ。
> そんでそのページ内だったら$_SESSで値を参照できると
> 思うのだが違うのか?
クッキーを使わない設定にしてても発行済みのクッキーからセッションIDは読み取れるので
そこから$_SESSIONの参照は可能ではある。
netpriceに関しては、「クッキーを発行してないのに明らかに$_SESSIONの内容を表示してる」
とかいうページがどこなのか分からんので、そこを具体的に示してくれんことには話にならん。
0473nobodyさん
2006/04/18(火) 16:11:15ID:???diffみたいなものです。
0474nobodyさん
2006/04/18(火) 17:00:18ID:???日本語に対応してるかは知らんけど
0475nobodyさん
2006/04/19(水) 00:55:56ID:X+QcIjUE今までPHPのmail()でlocalhostから送信してたのですが、
これをメールサーバから送信するようにするにはどうしたら良いのでしょうか?
もしかしてmail()じゃ無理っすか?
もう動いちゃってるのでプログラムの変更は最小限にしたいと思っております。
サーバの設定等でできるとうれしいです。
環境は
CentOS
Apache2
Php4.3.10
Qmail
です。
0477nobodyさん
2006/04/19(水) 07:18:21ID:???php.iniのSMTPが有効なのは、win32環境の時のみ。
>>475
fsockopen()を使って自力でSMTPを喋るか、pearのmailパッケージあたりを使うのがいいんじゃないかな。
てか、localhostでもいいと思うんだが。
0478nobodyさん
2006/04/19(水) 11:58:00ID:???IDやパスもいらなかった
0481nobodyさん
2006/04/19(水) 13:44:43ID:???今時オープンリレーなんて豪気だなと思って、
その懐の豊かさを晒してやれ(w
ただ、喪前は積極的には使うなよ。
0482nobodyさん
2006/04/19(水) 13:53:59ID:???ふと思った。太っ腹オープンリレー鯖のことかもしれないけど。
0483ぺこり
2006/04/19(水) 17:17:30ID:QMAjoMk/m(_ _)m
0484ぺこり
2006/04/19(水) 17:18:03ID:QMAjoMk/このファイルから1行ずつ文字を読み込み,(2_3), (2_4),(2_5)のように
表示するプログラムを,各々再帰関数を用いて作成せよ.
なお,プログラム中で配列を用いてはならない.
indata.dat
1
2
3
4
5
6
7
8
9
(2_3):(正順に表示する)
1 2 3 4 5 6 7 8 9
(2_4):(逆順に表示する)
9 8 7 6 5 4 3 2 1
(2_5):(3組ずつ逆順に表示する)
3 2 1 6 5 4 9 8 7
0485nobodyさん
2006/04/19(水) 17:26:11ID:???宿題は自分で考えましょう。
出来ないからといって、他人を頼ってはいけません。
「出来ない」それが今のあなたの評価なのですから。
0486nobodyさん
2006/04/19(水) 17:38:59ID:???配列使用不可とか目的が分からん
0488nobodyさん
2006/04/19(水) 17:45:06ID:???そこを>>484みたいな馬鹿は楽しようとするから
うちのY野みたいに使えない奴が平気でプログラマーを名乗るんだわorz
0490えび
2006/04/19(水) 18:22:48ID:iaJ4T1lt時計の長針と短針が初めて直角になる時刻
k時m分n秒を出力するプログラム」
を作るにはどうしたらいいのでしょうか?
教えてください!(>_<)
0492nobodyさん
2006/04/19(水) 19:08:25ID:???野上
0493nobodyさん
2006/04/19(水) 19:14:42ID:???中上
0494nobodyさん
2006/04/19(水) 20:24:44ID:???HP
0495475
2006/04/20(木) 02:08:23ID:qPD81MYcレスありがとうございます。
あわよくばサーバの設定でどうにかならんのかとも思ったのですが無理みたいですね。
pear使うように変更します。
会員向けの全配信を行っていてlocalhostだとちょっと負荷がかかりすぎてしまうんです。
スパムじゃないっす。
0496nobodyさん
2006/04/20(木) 05:55:41ID:???MySQLの特定データベースに接続してテーブルを作成して・・・というのは出来るのですが、
MySQLに接続してPHPからデータベース自体を作成する関数・コマンドがわかりません。
もしご存じであれば、説明しているサイトややり方を教えていただければと思います。
0497nobodyさん
2006/04/20(木) 06:12:41ID:???確認してないんだけどmysql_queryでCREATE TABLE実行できない?
mysqli->queryはマニュアルにサンプルがあるけど。
ちなみにXOOPSがテーブル作成をやってたと思う。
0498nobodyさん
2006/04/20(木) 06:26:49ID:???確認してないんだけど、それって「テーブルを作る」方法であって、
「データベース自体を作成する関数・コマンド」では無いよね?
>>496
シラネ
0500nobodyさん
2006/04/20(木) 07:25:42ID:???0501nobodyさん
2006/04/20(木) 08:24:03ID:???そんなアホみたいに簡単なことでも専用のmysql_create_db()てのがあるぞ!
て言おうと思ったら廃止予定だってw誰も遣ってなかったって事屋根。
0502496
2006/04/20(木) 13:12:41ID:???>>501
てことは、もう使えないんですかね?
テスト環境はPHP5.1+MySQL5.0.18なんです。
だから確実に古い関数は消えているかと・・。
どうしたら良いんだろうな・・・
0504nobodyさん
2006/04/20(木) 13:39:41ID:???こんな関数あるの?
0505496
2006/04/20(木) 13:56:58ID:???以下のようなソースでOKだったんですね。。勉強になりました。
$DBSERVER="localhost";
$DBUSER="test";
$DBPASSWORD="test";
$DBNAME="hoge";
$con = mysql_connect($DBSERVER, $DBUSER, $DBPASSWORD);
$rst = mysql_query("create database $DBNAME");
if($rst){
print"$DBNAMEを作成しました。";
}else{
print"失敗しました";
}
0507nobodyさん
2006/04/20(木) 16:24:06ID:iuRzPwTnffmpeg_animated_gif オブジェクトを new で作成すると、セグメンテーションフォルトでプロセスがダウンしてしまいます。
Apacheモジュール版でも、CLI版でも同じようになってしまいます。
これってなにか解決法はないでしょうか?
環境
Fedora Core 5 (カーネル 2.6.15-1.2054_FC5)
Apache 2.2.0 (自前ビルド)
PHP 5.1.2 (Zend Thread Safetyなし 自前ビルド)
ffmpeg 0.4.9-0.21.20051228.lvn5 (livnaのRPM)
ffmpeg-php 0.4.6
0508507
2006/04/20(木) 21:57:54ID:RzC6bNe0ffmpeg-phpの最新版をCVSから取得してコンパイル・インストールしたら、問題が起こらなくなりました。
0510nobodyさん
2006/04/23(日) 08:13:06ID:paGhm8t3WinXPなので、c:\windowsフォルダにphp.iniを入れたのですが
読み込んでくれなくて困ってます。
考えられる原因はなんでしょうか?
Apacheで動作確認すると、一応PHPは動きます。
phpinfoも表示されます。
phpinfoでのphp.iniの場所はc:\windowsになってます
php.iniを削除しても↑のままです
けど、あってもなくても、中身はみられてなくて、デフォルト設定のままです
他の場所を検索してもphp.iniは見当たりませんでした
0513nobodyさん
2006/04/23(日) 10:50:30ID:62aZMTpX0514nobodyさん
2006/04/23(日) 10:51:33ID:???よく読んでナカータ。。。
0515nobodyさん
2006/04/23(日) 11:47:09ID:paGhm8t3再起動してます。PCごと再起動もやってみましたがダメでした
php.iniの構文エラーのチェック方法ってありますでしょうか?
http.confはチェックプログラムありましたけど・・・
>>512
ファイル名は確認しました
拡張子表示してるので、こっそり.txtとかってこともないです
0516nobodyさん
2006/04/23(日) 12:05:25ID:???ハードディスクの中全部でphp.iniがどこにあるか検索しちゃどう?
phpinfoでのパスが合ってるということなのでアレですが、以下はphp.iniの探す順番
http://www.php.net/manual/ja/configuration.php#configuration.file
0517nobodyさん
2006/04/23(日) 12:52:11ID:???0519nobodyさん
2006/04/23(日) 13:21:21ID:???「読み込んでいない」っていうのはそもそもどういう状態?
別の部分の動作確認してて、php.iniを読んでないような「気がしてるだけ」ってことない?
0520nobodyさん
2006/04/23(日) 13:44:45ID:???構文チェックツールがあるかどうかは知らない。GUIで作成するツールはなんかあった希ガス。
>>519と被るが、どうやって「反映されない」事を確認したのかが気になるな。
0521nobodyさん
2006/04/23(日) 15:38:21ID:LKBdtcmunusoap.phpを使用したソース2のように変更したところ
116.555と表示されていたものが、
0と表示されてしまいます。
どこが駄目なのかわからないのですが。
【ソース1】
-------------------------------------------------
<?php
$client = new soapclient("http://www.webservicex.com/CurrencyConvertor.asmx?wsdl");
$param = array('FromCurrency'=>'USD','ToCurrency' =>'JPY');
$result = $client->ConversionRate($param);
echo $result->ConversionRateResult;
?>
-------------------------------------------------
【ソース2】
-------------------------------------------------
<?php
include("nusoap.php");
$client = new nusoapclient("http://www.webservicex.com/CurrencyConvertor.asmx?wsdl",TRUE);
$objPx=$client->getProxy();
$param = array('FromCurrency'=>'USD','ToCurrency'=>'JPY');
$result = $objPx->ConversionRate($param);
echo $result['ConversionRateResult'];
?>
-------------------------------------------------
0522nobodyさん
2006/04/23(日) 17:16:19ID:???たぶんapacheの設定が足りないと思うんだけど、なにをしたらいいんでしょうか。
今は
LoadModule php5_module modules/libphp5.so
という一行を追加しただけ。
Apache2.0はこれでうまくいったんだけどなー。
0523nobodyさん
2006/04/23(日) 17:22:06ID:???AddType application/x-httpd-php .php
たぶん2.0もこれ入れないと動かないような気が・・・
0524nobodyさん
2006/04/23(日) 17:22:31ID:???AddType application/x-httpd-php .php
が足りませんでした。お恥ずかしい。
0525nobodyさん
2006/04/24(月) 03:51:43ID:VfLSu+M7データの実体参照化は
htmlspecialchars
htmlentities
どちらを使った方がいいでしょうか?
0527nobodyさん
2006/04/24(月) 11:37:04ID:PGhFNhwXで、全角が一個もないのでスパム! って判定をしたいのですが
判定が成功しません。どなたか教えてください
環境:UTF-8 $messageに内容が文字列がはいってます。
if(mb_strlen($message) >400){ #400文字以上の場合チェック
if (ereg('~ /[\xc0-\xf7][\x80-\xbf]/',$message)) {
広告ではない
}else{
きっとSPAM
}
}
参考にした文字コード
ttp://ash.jp/code/code.htm
0529527
2006/04/24(月) 12:06:59ID:???やたのですが
if (ereg('/[\xc0-\xf7][\x80-\xbf]/',$message)) {
でもだめでした。
0531527
2006/04/24(月) 12:24:34ID:???駄目でした。。 (ノ◇≦。) ビェーン!!
0533527
2006/04/24(月) 12:49:18ID:???先週までPerlやってたので混乱してました
if (preg_match('/[\xc0-\xf7][\x80-\xbf]/',$message)) {
で、OKでした。。 氏にたくなった。。
これから飯喰いに逝って来ます。
ああ、、時間が。。 カロリーメイトだな。。。゜゜(>ヘ<)゜ ゜
ありがとうございました。
0534nobodyさん
2006/04/24(月) 14:41:16ID:???0535527
2006/04/24(月) 14:53:41ID:???でも、そうだよね。ハマるよな
少し離れて冷静に、、ありがとね。
0536nobodyさん
2006/04/24(月) 15:49:24ID:???0537527
2006/04/24(月) 16:27:30ID:???ところで、改行コード(行数)を数えるのに
substr_count($message,'\n'); は、駄目で
substr_count($message,"\n"); で、OKなのは、なんで?
ダブルクォーテーションとシングルなんて、意識しないで使ってました。
これで、3時間悩んだ。 詳しい人がいないとつらいです。
腹減った。
0539nobodyさん
2006/04/24(月) 16:33:49ID:???詳しい詳しくない以前に、ちょっとは調べようよ。
http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&q=php+%E3%82%B7%E3%83%B3%E3%82%B0%E3%83%AB%E3%82%AF%E3%82%A9%E3%83%BC%E3%83%88+%E3%83%80%E3%83%96%E3%83%AB%E3%82%AF%E3%82%A9%E3%83%BC%E3%83%88&num=50
で、一番上にくるのがこれ
↓
ttp://php.s3.to/man/security.magicquotes.html
0540nobodyさん
2006/04/24(月) 16:49:20ID:???こっちだってw
http://php.s3.to/man/language.types.string.html
0541527
2006/04/24(月) 16:56:35ID:???$text = "<BR>" . $meg ;
も
$text = '<BR>' . $meg ; も、結果が同じなので、意識せずに使ってたので
・・と、いうか、
いま手を加えているプログラムBy前任者(転職)が、混ぜ混ぜに書かれている・
で、同じのかと..(・Θ・;)
行数数える 、substr_count($message,'\n'); でハマっちゃいました。
’を疑いもしなかった自分は厨だと気づいたしだいです。
今は大丈夫です。
腹減ったんで、飯くいに行きます。
0543nobodyさん
2006/04/24(月) 17:41:43ID:???0544nobodyさん
2006/04/24(月) 17:51:23ID:???いきなり正規表現なんて書いてるんじゃねーよ、と。
0545nobodyさん
2006/04/24(月) 18:05:13ID:???■ このスレッドは過去ログ倉庫に格納されています