- 1 名前:nobodyさん [2009/03/09(月) 02:14:28 ID:HyrthkeE]
- 質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り 次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。 ◆前スレ 【PHP】下らねぇ質問はID出して書き込みやがれ 81 pc11.2ch.net/test/read.cgi/php/1234958956/ ◆質問用テンプレ 【OS名】vine linux 【PHPのバージョン】php5.26 【連携ソフトウェア】mysql 【質問内容】 ◆質問する時の注意 ・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す) ・ 己の行った操作、変更などを詳しく明記すること。 ・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。 ・ 質問者として、態度をわきまえること。 ・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。 (PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。) ◆質問後の注意 ・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。 ・解決しなくても回答をもらった場合はお礼を言うこと。 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。) ◆回答者への注意 ・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
- 737 名前:nobodyさん [2009/03/30(月) 18:45:52 ID:Gjy/ZAJ6]
- 【OS名】Ubuntu 8.10
【PHPのバージョン】5.2.6-2ubuntu4.1 【連携ソフトウェア】Apache/2.2.9 【質問内容】 PHPをさわり初めて一日目の初心者です。 header ( "HTTP/1.0 404 Not Found" , true , 404 );で、.htaccessで指定した404エラーページを 表示させたいのですが、ブランクページになって表示されません。 確かに404エラーページはファイル自体が存在していない場合のみ表示されますので、Location:で 存在しないファイルにリダイレクトさせて見たところ、見事404エラーページが表示されました。 しかし、この方法はアドレスが変更されてしまうので、できればそのPHPのアドレスで、404エラー を表示させたいのですが、何か方法はございませんでしょうか。 よろしくお願いします。
- 738 名前:nobodyさん mailto:sage [2009/03/30(月) 23:26:09 ID:???]
- >>737
readfileでエラーページの内容をそのまま流しちゃダメなの? jp.php.net/manual/ja/function.readfile.php
- 739 名前:nobodyさん mailto:sage [2009/03/31(火) 06:15:24 ID:???]
- クラスについて質問です。
ttp://www.m-fr.net/study/object/object04.html このサイトで、 >で、こうします。 > >obj = new 三角クラス; >適当な変数 = obj->get_1辺の長さ(); // データの取得 >obj->set_1辺の長さ(適当な値); // データの設定 とあるのですが、下の二行は順序が逆の方がよいのでは?と思いました。 setしてからそのsetした結果得られる値をgetする、みたいに。 その方がしっくりくるというか・・ もしかしたら、何か理由(もしくは自分の勘違い)があって、 getをまず書いておいて、そのsetする一行を書く、という形式にしてるのか よくわからないので、教えていただけないでしょうか よろしくお願いします。
- 740 名前:nobodyさん mailto:sage [2009/03/31(火) 08:44:30 ID:???]
- 2行目で得た値を3行目で使っているわけではないと思うぞ?
getとsetの別々の事例かと あとスレタイ
- 741 名前:nobodyさん [2009/03/31(火) 10:26:43 ID:MdY2FCLh]
- WindowsXP上で開発を行っているのですが、
Windowsの絶対パスでrequireで読み込むとエラーになります。 require_once("C:\htdocs\test.php"); ↓ failed to open stream: Invalid argument どうしたら読み込めるようになるのでしょうか?
- 742 名前:nobodyさん mailto:sage [2009/03/31(火) 10:35:59 ID:???]
- echo "C:\htdocs\test.php"; やってみそ
- 743 名前:nobodyさん mailto:sage [2009/03/31(火) 10:53:51 ID:???]
- >>683
今コード用意しますのでちょっと待っててくださいね
- 744 名前:nobodyさん mailto:sage [2009/03/31(火) 11:14:25 ID:???]
- アンカ間違えましたね^^;
>>681さんおすきなほうどうぞ その1 function cale($a,$b) {echo "<p>" .($a * $b). "</p>";} $a = 2; $b = 2; cale($a,$b); $a = 4; cale($a,$b); その2 function cale($a,$b) {echo "<p>" .($a * $b). "</p>"; } // $aと$bはそれぞれ別の値を持てる $a = 2; $b = 2; $cale($a,$b); // $aと$bは常に同じ値になる $b = &$a; $a = 100; cale($a,$b); $a = 5; cale($a,$b);
- 745 名前:nobodyさん mailto:sage [2009/03/31(火) 11:20:52 ID:???]
- >>737
rewrite
- 746 名前:nobodyさん mailto:sage [2009/03/31(火) 12:20:45 ID:???]
- >>737
あなたのやろうとしてることはおすすめできない
- 747 名前:nobodyさん mailto:sage [2009/03/31(火) 13:58:39 ID:???]
- >>737
アパッチ「俺の仕事はもう終わってんだからバックパスすんな」
- 748 名前:nobodyさん [2009/03/31(火) 15:08:08 ID:H7khy467]
- +食べ物
++りんご ++バナナ ++ぶどう ↑の4行を↓のようにhtmlタグとして出力したいのですが wikiみたいなことがやりたいのですがどなたかヒント頂けないでしょうか? <ul> <li>食べ物</li> <ul> <li>りんご</li> <li>バナナ</li> <li>ぶどう</li> </ul> </ul>
- 749 名前:nobodyさん mailto:sage [2009/03/31(火) 15:12:34 ID:???]
- wikiのソース見ればいいのでは?
- 750 名前:nobodyさん mailto:sage [2009/03/31(火) 15:19:27 ID:???]
- >>749
HTMLソース見てもしょうがないだろw
- 751 名前:nobodyさん mailto:sage [2009/03/31(火) 15:27:10 ID:???]
- >>749
そんなんで片付くならこのスレが82代まで行かないでしょw 答えてやればいいじゃんwww
- 752 名前:nobodyさん [2009/03/31(火) 15:27:12 ID:qal8dqXu]
- >>738,745
ありがとうございます。 >>746-747 本当はファイルが存在しているのに無理矢理サーバーにファイルが存在していないことにして、エラーページを表示させるところが でしょうか。それとも、「header ( "HTTP/1.0 404 Not Found" , true , 404 );」がおすすめできないのでしょうか。 もし、そうであれば、「header("HTTP/1.0 301 Moved Permanently") ;header("Location: www.example.com/") ;」 などのリダイレクトであれば大丈夫ですか。
- 753 名前:nobodyさん [2009/03/31(火) 15:27:13 ID:WkuOnscP]
- 【OS名】TurboLinux
【PHPのバージョン】4.3.11 【連携ソフトウェア】Apache2 【質問内容】 auto_prepend_fileで指定したファイルが動いてくれません。 .htaccessで、「php_value auto_prepend_file "ap.php"」と記述しました。 ap.phpの中身は「<? echo("test"); ?>」です。 これでhostname/index.phpを開くと、 画面上部に「test」と表示されることを期待しているのですが、 TurboLinux + PHP4.3.11のサーバーでは実際は何も表示されませんでした。 もうひとつUbuntu + PHP5.2.4のサーバーがあるのですが、 そちらに同様のコードを設置したところ、意図したとおりに動きました。 何か設定の問題だとは思うのですが、何が問題なのか分からずに困っています。 ひとまず以下のことを試しました。 ・phpinfoを確認 ⇒ auto_prepend_fileのLocal Valueは「ap.php」になっている ・auto_prepend_fileの設定をわざと"ap2.php"にした ⇒ ファイルが読み込めないエラー ・ap.phpの中身をわざと文法エラーにした ⇒ 何のエラーも出ない(display_errorsはon) ・ap.php、index.phpの両方でWarningが出るようにした ⇒ index.phpのWarningのみが表示される ・ap.phpの一行目(<?〜?>の外側)に「aaaaa」を追加 ⇒ 何も表示されない どうもauto_prepend_fileでap.phpを読み込んではいるものの、 ap.phpのコードが実行されていないようです。 この現象について分かる人がいらっしゃいましたらご教示下さい。
- 754 名前:nobodyさん mailto:sage [2009/03/31(火) 15:50:33 ID:???]
- >>753
>ap.phpの中身は「<? echo("test"); ?>」です。 <?使えるなら<?=使えよ ていうか<?phpって書く方を推奨
- 755 名前:nobodyさん mailto:sage [2009/03/31(火) 15:53:09 ID:???]
- >>753
よくわかんないけど全てのページのヘッダに挿入するならmod_layout ttp://d.hatena.ne.jp/hogem/20090321/1237569005
- 756 名前:nobodyさん mailto:sage [2009/03/31(火) 19:15:21 ID:???]
- >>748
質問に対する答じゃないけど、HTMLは <ul> <li>食べ物 <ul> <li>りんご</li> <li>バナナ</li> <li>ぶどう</li> </ul> </li> </ul> こう書いた方がいいと思う。
- 757 名前:nobodyさん mailto:sage [2009/03/31(火) 20:09:26 ID:???]
- >>748
ttp://d.hatena.ne.jp/noopable/20090202/1233528691
- 758 名前:nobodyさん mailto:sage [2009/03/31(火) 22:31:20 ID:???]
- >674
今日めっけた ttp://d.hatena.ne.jp/anatoo/20090320/1237530764 function ref($obj){ return $obj; } ref(new Hoge)->doSomething(); 良し悪しはともかく、発想は面白い。
- 759 名前:nobodyさん mailto:sage [2009/03/31(火) 22:32:52 ID:???]
- そこまでして1行にして何のいいことがあるんだろう
- 760 名前:nobodyさん mailto:sage [2009/03/31(火) 23:09:23 ID:???]
- 余計な関数が増えることには何の抵抗もないのかw
- 761 名前:nobodyさん mailto:sage [2009/03/31(火) 23:32:57 ID:???]
- 一時変数が(複数の場所で)増える事と関数が増える事のトレードオフなら、俺なら関数を増やす。
このためだけにgetInstance()とかfactory()とか定義したら、関数増やすよりタチ悪いしな。 ただ、一般的な書き方じゃないので、ref()の定義を探さないと読めない=コードの可読性が落ちるのが難点。 JavaScript界の$()みたいに、一般的なハックになったらアリかな。
- 762 名前:nobodyさん mailto:sage [2009/03/31(火) 23:35:38 ID:???]
- 他言語でできるのにPHPでできないのがむかつくんだよな
- 763 名前:nobodyさん mailto:sage [2009/03/31(火) 23:38:29 ID:???]
- オブジェクトの基底クラスにstaticなnewが実装できたら
Hoge::new()->doSomething(); ってできるのにな
- 764 名前:nobodyさん mailto:sage [2009/04/01(水) 00:05:10 ID:???]
- singletonでいいじゃん
- 765 名前:nobodyさん mailto:sage [2009/04/01(水) 01:36:40 ID:???]
- 一行にしたいって要求に対して、singleton提案するやつw
- 766 名前:nobodyさん mailto:sage [2009/04/01(水) 01:37:54 ID:???]
- >>761
いっしょに仕事したくないタイプだわ。なんだよrefって
- 767 名前:nobodyさん mailto:sage [2009/04/01(水) 02:05:39 ID:???]
- >>765
一行になるじゃん
- 768 名前:nobodyさん mailto:sage [2009/04/01(水) 02:20:35 ID:???]
- メソッドチェーンがやりたいだけだろ
- 769 名前:nobodyさん mailto:sage [2009/04/01(水) 02:32:15 ID:???]
- 誰が?
- 770 名前:nobodyさん mailto:sage [2009/04/01(水) 02:51:42 ID:???]
- 俺!
- 771 名前:nobodyさん mailto:sage [2009/04/01(水) 03:16:29 ID:???]
- singletonはウンコすぎ。singleton依存症は治る病気だから通院したほうがいいぞ
1行で書きたいって理由だけでstaticなクラスメソッドを増やすのは流石にナシだろ だいたい1つや2つならともかく、そういう書き方がしたくなるようなJavaっぽい書き方をしてたら抽象データ型なんて死ぬほどできるわけで そういうクラス全部にstaticメソッド定義すんのかって話になる。継承も使えないし コンストラクタが引数を取るような場合さらに面倒くせえしな まあ、そもそもJavaっぽい書き方なんかするなよ、って言うのが多分正解だけどな $tmp = new Hoge(); $tmp->fuga();でいいだろ 使いもしない一時変数が増えるのがキモいって気持ちは分かるが
- 772 名前:nobodyさん [2009/04/01(水) 07:15:56 ID:zGetu19r]
- ファイルをダウンロードできるWebアプリがあって、IE8で保存するフォルダをゆっくり選択してると
サーバ側のPHP(5.2.6/Windows)がタイムアウトしちゃうんですが、そういうもんなんでしょうか。 タイムアウト伸ばすしかないのかなぁ。 ファイルが壊れるだけで、一見したところ気がつかないのが、またいやらしい。
- 773 名前:nobodyさん mailto:sage [2009/04/01(水) 07:21:55 ID:???]
- てか、singletonは全く別次元の話だろ
- 774 名前:nobodyさん mailto:sage [2009/04/01(水) 07:26:35 ID:???]
- >>771
ひとつひとつのクラスにstaticメソッドを実装するってことではなく rubyみたいにすべてのオブジェクトの先祖になるクラスにstaticを実装するって意味。 今でもrunkit使えば可能なのか、どうか知れないが、 標準で出来たらいいなぁ
- 775 名前:nobodyさん [2009/04/01(水) 08:25:46 ID:wwrEQ3GF]
- WindowsXPで開発しているのですが、
echo realpath("."); とすると、C:\Program Files\Apache Group\Apache2\htdocs のように\が付きます。これを/に置換すれば良いだけでしょうが、 最初から\ではなく/にして、ディレクトリ名を取得する方法はないでしょうか?
- 776 名前:nobodyさん mailto:sage [2009/04/01(水) 08:34:02 ID:???]
- >>771
じゃsingletonじゃなくて普通にインスタンス返すメソッドでいいじゃん
- 777 名前:nobodyさん mailto:sage [2009/04/01(水) 08:43:29 ID:???]
- レンたるサーバーなのでMysqlのmax_connectionを増やせまえん。
たまにMysqlへの接続数が多すぎてエラーになります。 そこで、 if(){ 通常通りMysqlへ接続} {接続エラー時の対処} こんな感じにしたいと思ってるんですが、いい関数ありますか?
- 778 名前:nobodyさん mailto:sage [2009/04/01(水) 09:25:38 ID:???]
- >>771でいいだろ。気持ち悪いコードやメソッド増やしたいやつ多すぎ
- 779 名前:nobodyさん mailto:sage [2009/04/01(水) 09:28:10 ID:???]
- >>777
die
- 780 名前:nobodyさん mailto:sage [2009/04/01(水) 09:29:50 ID:???]
- そもそも、newしてメソッドを一つだけ実行ってのは設計がダメだな。
staticで十分か、コンストラクタに仕事させすぎ。
- 781 名前:nobodyさん mailto:sage [2009/04/01(水) 09:54:46 ID:???]
- >>775
Windowsをunixベースにする
- 782 名前:nobodyさん mailto:sage [2009/04/01(水) 11:02:36 ID:???]
- >>775
nai
- 783 名前:nobodyさん mailto:sage [2009/04/01(水) 11:04:49 ID:???]
- >>777
こっちのほうおすすめ function errorMysql() { エラー処理 exit; } if (!接続) errorMysql
- 784 名前:nobodyさん mailto:sage [2009/04/01(水) 11:49:45 ID:???]
- 例外使えよ
- 785 名前:nobodyさん mailto:sage [2009/04/01(水) 17:33:12 ID:???]
- 最近書き込み減ったに
貴様らなにしてんのかね
- 786 名前:nobodyさん mailto:sage [2009/04/01(水) 18:09:20 ID:???]
- もう一つの某巨大掲示板に移動したんじゃね?
- 787 名前:nobodyさん mailto:sage [2009/04/01(水) 18:21:05 ID:???]
- >>786
それってどこよ?
- 788 名前:nobodyさん mailto:sage [2009/04/01(水) 18:36:52 ID:???]
- >>785
PHPの仕事を他の人に任せてコーディングの仕事するようになった
- 789 名前:nobodyさん mailto:sage [2009/04/01(水) 21:00:24 ID:???]
- >>787
おしえてグー
- 790 名前:nobodyさん mailto:sage [2009/04/01(水) 23:06:31 ID:???]
- >774
絶対言われると思った。俺もそれは考えたが、5.3.0より前のPHPでは無理。 親クラスで定義された静的メソッドで、子クラスのインスタンスは生成できない。つまり class Parent{ static function getInstance(){ //do something } } class Child extends Parent{} とあった場合、Parent::getInstance()の実装がどんなだろうと、Child::getInstance()がChildのインスタンスを返すのは不可能。 Childというクラス名すら取得できない。 >780 { new UrlString("pc11.2ch.net/test/read.cgi/php/1236532468/") }->domain(); コンストラクタによる依存性注入をしてる場合も、newしてすぐメソッドを呼ぶだけでじゅうぶんな事がある。 引数なしのコンストラクタならばたいていの場合不要ってのは同意。
- 791 名前:nobodyさん [2009/04/02(木) 09:51:30 ID:ij3728yl]
- pear.php.net/manual/ja/package.text.text-statistics.intro.php
これって日本語は対応してないの?
- 792 名前:nobodyさん mailto:sage [2009/04/02(木) 10:31:00 ID:???]
- ソース見りゃ分かんべ
- 793 名前:nobodyさん [2009/04/02(木) 10:35:42 ID:ij3728yl]
- >>792
いやいや、、、 まだそこまでレベルいってないですよ だからあなたが代わりに見て判断してください
- 794 名前:nobodyさん mailto:sage [2009/04/02(木) 10:44:44 ID:???]
- じゃレベル上げろ
- 795 名前:nobodyさん mailto:sage [2009/04/02(木) 10:56:23 ID:???]
- 長い文と難しい単語(音節のたくさんある)の割合で計算してるみたいだから、
原理的には日本語でも計算は可能だろうけど、日本語ではMecabとかないと大変だし、 多分計算式に定義されてる係数は日本語の場合を考慮していないので、 信頼出来る結果のためには自分で文献にあたるとか実地調査して決定する必要があるべ。
- 796 名前:nobodyさん [2009/04/02(木) 11:12:51 ID:CfxT7le3]
- 【OS名】windows xp home edition
【PHPのバージョン】php5ぐらい 【連携ソフトウェア】mysql 【質問内容】 フォームのセレクト項目で悩んでいます。 form.phpを表示させるとき、セレクト項目を mysqlから取り出して表示させているのですが (idとその名前) セレクト項目が4つもあるので、何か一気に取り出す方法が あったりするのですか?それとも、一個一個4つのセレクト用に select genre_id,genre_name from genre; (genreはジャンル) というふうにするしかないですか?
- 797 名前:nobodyさん [2009/04/02(木) 11:30:18 ID:4VqTVZ/0]
- mysqlの勉強をしてます
以下のようなデータをデータベースに登録してます id,name,age 1,田中,20 2,木村,31 3,坂下,43 このデータをテーブルに書きだしたいのですが pearなどのライブラリを使用しない場合、どのようなコードを書くのが効率いいでしょうか? mysql以外のデータベースは使用しないのでmysqlに特化した書き方をどなたかご教示お願いいたします
- 798 名前:796 mailto:sage [2009/04/02(木) 11:40:45 ID:???]
- >>797
$link = mysql_connect('localhost','ユーザ名','パスワード名'); mysql_select_db('データベース名'); $sql = "select * from テーブル名"; $result = mysql_query ( $sql ); while ( $data = mysql_fetch_array ( $result ) ) { $data['id']; $data['name']; $data['age']; } じゃないの?
- 799 名前:nobodyさん [2009/04/02(木) 11:48:45 ID:e2MYzFKZ]
- すみません、僕もちょっと似たようなこと?で質問させてください
>>797さんのデータで id,name,age 1,田中,20 2,木村,31 3,坂下,43 とありますが、たとえばID2の木村さんの行だけを取得する場合、 while ( $data = mysql_fetch_array ( $result ) ) { if (2==$data['id']) { $id = $data['id']; $name = $data['name']; $age = $data['age']; break; } } とやってきたのですが、MYSQLではピンポイントで取得することができないってことでしょうか?
- 800 名前:796 mailto:sage [2009/04/02(木) 11:59:21 ID:???]
- >>799
嘘だよね? select * from テーブル名 where id=2; あるいは、 where name='木村';
- 801 名前:nobodyさん mailto:sage [2009/04/02(木) 12:07:31 ID:???]
- >>796
mysql_fetch_arrayの結果を4回使いまわす
- 802 名前:796 mailto:sage [2009/04/02(木) 12:09:54 ID:???]
- >>801
違うんです。4つそれぞれ別なんです。 テーブル結合でも想像できないのでやっぱり4回やらないとだめなのかな
- 803 名前:nobodyさん mailto:sage [2009/04/02(木) 12:29:08 ID:???]
- XAMPPをインストールしました。
MySQLにパスワードを設定しようとphpmyAdminでuser テーブルを表示させましたが Hostが%のレコードがありません。localhost と127.0.0.1というのだけです。 パスワードを設定するのはlocalhost と127.0.0.1でいいのでしょうか?
- 804 名前:796 mailto:sage [2009/04/02(木) 12:40:16 ID:???]
- $xxx[0] = "genre";
$xxx[1] = "property"; $xxx[2] = "actress"; $i=0; $g=0; while ( $i < count($xxx) ) { $sql = "select $xxx[$i]_id,$xxx[$i]_name from $xxx[$i]"; $result = mysql_query ( $sql ); while ( $data = mysql_fetch_array ( $result ) ) { $xxb[$g][$xxx[$i]]['id'] = $data[0]; $xxb[$g][$xxx[$i]]['name'] = $data[1]; $g++; } $i++; } これでいい?
- 805 名前:nobodyさん mailto:sage [2009/04/02(木) 12:56:43 ID:???]
- 気持ちの悪いメンテナンスしづらいコードですね
- 806 名前:796 mailto:sage [2009/04/02(木) 12:58:10 ID:???]
- >>805
これでいけました >>796の質問者です。 一回のSQLで4つのテーブルのIDと名前をゲットできました
- 807 名前:nobodyさん [2009/04/02(木) 13:01:43 ID:vfSwYPOW]
- 【OS名】centos
【PHPのバージョン】php5.26 smarty使用 【連携ソフトウェア】mysql 【質問内容】 初めての質問です。 よろしくお願いします。 登録フォームが都合上ページの下部にあるのですが PHPで入力エラーを同じページの同じ登録フォームのある部分に表示しております。 ページ上部に登録フォームのアンカーへ移動するリンクはありますが PHPではいたエラー文言付画面の表示時に下部のアンカーへ移動して表示するには javascript以外に方法はないでしょうか? 要はwww.etc.com/touroku.php#a みたいにやるにはどうすればいいのか、よろしくお願いいたします。
- 808 名前:796 mailto:sage [2009/04/02(木) 13:05:48 ID:???]
- 正確に書けば、$xxb[$xxx[$i]][$g]['id'] = $data[0];
かな for($i=0;$i<count($xxb['genre']); $i++) で各セレクト分でしよう
- 809 名前:796 mailto:sage [2009/04/02(木) 13:26:45 ID:???]
- >>804
途中で$g=0;を入れるのを忘れました。 $i++の後
- 810 名前:nobodyさん mailto:sage [2009/04/02(木) 13:51:13 ID:???]
- 796さん、あなたを下スレ公認回答者に認定いたします
- 811 名前:nobodyさん mailto:sage [2009/04/02(木) 18:28:53 ID:???]
- >>807
actionかlocationでの遷移先をそれに設定すればいいのでは?
- 812 名前:nobodyさん [2009/04/02(木) 19:09:54 ID:vfSwYPOW]
- >>811
ありがとうございます、できました!!
- 813 名前:nobodyさん [2009/04/02(木) 21:54:38 ID:SbciSXr8]
- すません
pukiwikiとかの既存ソースを使ってるのですが PHPがサバの設定でポート指定されていて 既存ソースだと、リンク先がPHPの場合、ポート指定が外されてしまうのです TOPページが :7070 で実行してたら 遷移先が :7070 が外れてしまうという状態です 解決方法とかご教授願えますか。 質問場所が悪ければ、聴ける場所なども教えていただけると助かります
- 814 名前:nobodyさん mailto:sage [2009/04/02(木) 21:56:16 ID:???]
- pukiwikiの設定でサイトURL入れるとこあるんじゃ?
- 815 名前:nobodyさん [2009/04/02(木) 22:33:32 ID:SbciSXr8]
- なるほど…
ちょっと探してみます。 ただ、pukiwikiに限らず、他のPHPでも 同じ状況になってしまうので根本解決するための方法など ご存知でしたらお願いします。
- 816 名前:nobodyさん mailto:sage [2009/04/02(木) 22:33:55 ID:???]
- 絶対リンクをやめる
- 817 名前:nobodyさん mailto:sage [2009/04/02(木) 23:10:28 ID:???]
- スクリプトの先頭でob_start()。
コールバック関数を指定して出力内容を全部受け取り、URLを全部置換する。
- 818 名前:nobodyさん mailto:sage [2009/04/02(木) 23:15:28 ID:???]
- 絶対リンク埋め込みだとしてもhttp://で検索すればすぐ書き換えられそうじゃん
- 819 名前:nobodyさん [2009/04/03(金) 01:14:27 ID:QmVSt/Vd]
- 【OS名】win xp sp3
【PHPのバージョン】php5.29 【連携ソフトウェア】mysql 【質問内容】 $val = NULL; $query = "insert into test (id, comment) value ($val, 'test')"; 上記のSQLをダンプしてみると NULLを代入した変数$valがNULLとして展開されていません。 もぬけの殻となってしまっています。 ※ダンプしたクエリ insert into test (id, comment) value (, 'test') なのでクエリーを投げるとエラーとなってしまいます。 NULLをinsertしたい場合は変数にいれず、 直接クエリの文に記述しないといけないのでしょうか?
- 820 名前:nobodyさん mailto:sage [2009/04/03(金) 01:28:48 ID:???]
- >819
現代人ならプリペアドステートメントを使え。プレースホルダ使える状況でクエリを直接組み立てる奴は原始人。 PDOStatement::bindValue()の第3引数にPDO::PARAM_NULLを指定すれば、NULLをDBに入力できる。 つうか、何もinsertしなければ、デフォルト値であるNULLが入るけどな。 (カラムにnullが許可されており、他のデフォルト値を指定していない場合に限る)
- 821 名前:nobodyさん mailto:sage [2009/04/03(金) 01:33:38 ID:???]
- DB上のnullじゃなくて言語上でnullだから無くて当たり前
- 822 名前:nobodyさん mailto:sage [2009/04/03(金) 01:33:52 ID:???]
- 単にこうするんじゃないか?
$val = 'NULL';
- 823 名前:nobodyさん mailto:sage [2009/04/03(金) 01:34:01 ID:???]
- $val = 'NULL';
でNULLをDBに入力できる
- 824 名前:819 mailto:sage [2009/04/03(金) 01:37:29 ID:???]
- >>820
>プリペアドステートメント はじめて聞きました。 >何もinsertしなければ、デフォルト値であるNULLが入る これは理解していたのですが、インサート項目が非常に多く、 そのほとんどが必須ではないので、クエリを組み立てるのがめんどくさく 値がわたってこようがこなかろうがすべての項目をインサートさせてしまう感じで作ってしまいました。 プリペアドステートメント勉強します。 ありがとうございました。
- 825 名前:819 mailto:sage [2009/04/03(金) 01:39:55 ID:???]
- >>822
>>823 それだと文字列のNULLが入ってしまいました。 間違えてるかもしれないのでまた確認してみます。 ありがとうございます。
- 826 名前:nobodyさん mailto:sage [2009/04/03(金) 01:44:23 ID:???]
- されないだろ
insert into test (id, comment) value (NULL, 'test')
- 827 名前:nobodyさん [2009/04/03(金) 02:04:33 ID:7RHF46qi]
- 申し込みフォームの作成について
form1.phpにて記述されたformの内容をPOSTで form2.phpという確認画面で受け取るような プログラムを作ってるんですが、 確認画面にて前に戻るボタンと送信ボタン2つを作りたい場合は それぞれに同じ内容のhiddenを設定するしか方法はないんですかね? もしスマートな方法がありましたらアドバイスよろしくお願いします。
- 828 名前:nobodyさん mailto:sage [2009/04/03(金) 02:07:57 ID:???]
- セッション使えば?
- 829 名前:827 mailto:sage [2009/04/03(金) 02:11:24 ID:???]
- >>828
返信ありがとうございます。 やっぱりsessionがいいですよね。 もしPOSTでスマートに出来るならと思い聞いてみました。
- 830 名前:nobodyさん mailto:sage [2009/04/03(金) 02:26:52 ID:???]
- hiddenとか過去の産物だろ。更新ボタンとか戻るボタンとかでgdgdになるのが目に見えてる
- 831 名前:nobodyさん mailto:sage [2009/04/03(金) 02:29:07 ID:???]
- >>827
試してないけど、javascriptでformのactionを変更できるんじゃないの。 msdn.microsoft.com/ja-jp/library/cc409726.aspx このへんは趣味の問題かもしれんが、セッションに値を保持するのは、 同じセッションで複数タブ開かれた場合に動作がおかしくなりやすいから、 あんまりお勧めはできん。
- 832 名前:nobodyさん mailto:sage [2009/04/03(金) 02:30:00 ID:???]
- >>830
戻るでグダグダになるのはセッションじゃないかい?
- 833 名前:nobodyさん mailto:sage [2009/04/03(金) 02:38:12 ID:???]
- とりあえずhiddenを批判するやつはどこにでもいる
- 834 名前:nobodyさん mailto:sage [2009/04/03(金) 03:42:37 ID:???]
- 入力、確認を違うファイルにするとエラー処理がめんどい
- 835 名前:nobodyさん mailto:sage [2009/04/03(金) 04:07:02 ID:???]
- php5.3rc1使ってる人に質問です。
php.iniに書いたmb_string系の設定って反映されてますか? あと何故かapcも動かない、、、 いくら設定を見直してもなにが悪いのかわかりません。 解決策をご存知の方いましたら、教えてください。
- 836 名前:835 mailto:sage [2009/04/03(金) 06:55:01 ID:???]
- 解決しましたすみません;ケアレスミスでした・・・
- 837 名前:nobodyさん mailto:sage [2009/04/03(金) 07:27:17 ID:???]
- >>783
ありがとうございます。それでいってみたいと思います。
|

|