【PHP】くだらねぇ質問はここに書き込みやがれpart7
■ このスレッドは過去ログ倉庫に格納されています
0001966
2005/07/12(火) 01:47:09ID:qOoYFCn7ここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>970あたりが建てて下さい
・過去スレ
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
【PHP】くだらねぇ質問はここに書き込みやがれpart2
http://pc5.2ch.net/test/read.cgi/php/1105218084/
【PHP】くだらねぇ質問はここに書き込みやがれpart3
http://pc5.2ch.net/test/read.cgi/php/1107780435/
【PHP】くだらねぇ質問はここに書き込みやがれpart4
http://pc8.2ch.net/test/read.cgi/php/1110697712/
【PHP】くだらねぇ質問はここに書き込みやがれpart5
http://pc8.2ch.net/test/read.cgi/php/1114787573/
【PHP】くだらねぇ質問はここに書き込みやがれpart6
http://pc8.2ch.net/test/read.cgi/php/1117945031/
立ってなかったんで>>970に近かった自分が勝手に立てちゃいました。
0312nobodyさん
2005/07/20(水) 15:10:47ID:???<form method='POST' action='hoge.php'>
<input type='image' name='kbn' value='1' src="hoge1.gif">
<input type='image' name='kbn' value='2' src="hoge2.gif">
</form>
という2つのイメージボタンを持ったフォームで
どっちのボタンがクリックされたかを'hoge.php'で取得するには
どうしたらよいでしょうか?
'hoge.php'で$_POST['kbn']がNULLになってしまうので困っています;
どうかお助けください。
0313nobodyさん
2005/07/20(水) 15:21:59ID:???なんかinput type='image'はvalueは無効みたいですね。
nameを変えて座標がやってくるかどうかで判断しなくちゃですね。
他にいい方法っありますか?
0315nobodyさん
2005/07/20(水) 15:24:26ID:???俺の環境ではちゃんと取得できた
var_dump($_POST);
で
array(3) {
["kbn_x"]=>
string(2) "47"
["kbn_y"]=>
string(2) "53"
["kbn"]=>
string(1) "1"
}
0316nobodyさん
2005/07/20(水) 15:24:42ID:???0317nobodyさん
2005/07/20(水) 15:25:22ID:???----------
<form method='POST'>
<input type='image' name='kbn' value='1' src="hoge1.gif">
<input type='image' name='kbn' value='2' src="hoge2.gif">
</form>
<?
echo $_POST['kbn']."<br>\n";
print_r($_POST);
?>
----------
0318nobodyさん
2005/07/20(水) 15:31:42ID:???IE6 + PHP5.0.4 ならNGだった
0319nobodyさん
2005/07/20(水) 15:38:30ID:???for($i=○;$i<=×;$i++){
echo $array[$i];
}
と言うループでやっていましたが、もっとスマートな方法ありますか?
0320nobodyさん
2005/07/20(水) 15:44:01ID:???あっそれもいいかも
でも、buttonってsubmitできましたっけ
onClick='javascript:this.submit()'すれば
いいと思うけど javascriptは使わないポリシーなので
申し訳ない。
自分の環境ではやっぱり
$_POST['kbn_x']はとれても$_POST['kbn']はとれません。
これってPHPの環境変数の設定の違いでしょうか?
申し遅れましたがPHPのVerは4.3.10なんですれど。
0322315
2005/07/20(水) 16:24:06ID:???IEだとだめじゃ
0323nobodyさん
2005/07/20(水) 16:28:36ID:???0324nobodyさん
2005/07/20(水) 16:31:53ID:???割と有名な問題だから検索すれば対策みつかるよ。
0325nobodyさん
2005/07/20(水) 17:00:43ID:???「x1xx」とか「,2dd」を「1」「2」にしたいです。
0328>>291
2005/07/20(水) 19:00:55ID:e5fXpd1fありがとう
0329nobodyさん
2005/07/20(水) 19:17:11ID:???「―ソЫ�\噂浬欺圭構蚕十申曾箪貼能表暴予禄兔喀媾彌拿杤歃濬畚秉綵臀藹觸軆鐔饅鷭�x�x」
を送信すると$_POSTで取ったときに'\'(C5)が付いてくるのって
charsetを変えずにうまいこと解決するには
どのような対策がベストなのでしょうか?
0331nobodyさん
2005/07/20(水) 22:43:59ID:0VkkmhCLと言う様な記事に遭遇しました。、
header("Content-Type: text/html; charset=文字コード");
header("Expires: Thu, 01 Dec 1994 16:00:00 GMT");
header("Last-Modified: ". gmdate("D, d M Y H:i:s"). " GMT");
header("Cache-Control: no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
↑の文章で
「header("Expires: Thu, 01 Dec 1994 16:00:00 GMT");」
この時間の意味は何でしょうか?
解説によって時間が異なったりします。
0334nobodyさん
2005/07/20(水) 23:32:41ID:???生成したメソッド終了時? それともスクリプト全体の終了時?
もし全体の終了時ならメソッド終了時に消滅させることって出来るのでしょうか?
デストラクタ(__destruct)を呼び出すとかして。
0335nobodyさん
2005/07/20(水) 23:50:29ID:???__destructでechoでもすればいつも消えるかわかるだろ。
質問するまえに自分でやれることやらないと、何時までも他人に頼ることになるぞ
0336335
2005/07/21(木) 01:15:26ID:???0338nobodyさん
2005/07/21(木) 08:22:30ID:???0339nobodyさん
2005/07/21(木) 09:45:00ID:???キャッシュの有効期限だ。
つまり、今現在の日付より前に設定すれば、
アクセスしてきたブラウザはキャッシュの有効期限とみなして
新しくページを読み込むという理論。
だから今より古い時間ならいつでもいいけど、
時間が止まってるパソコンのことも考えて(?)
10年くらい前にしておけば問題無い。
0341nobodyさん
2005/07/21(木) 11:40:24ID:???有効期限のことって解説に載ってなかったの?
俺はてっきり「1994年12月1日16時ちょうど」って時間に特別な意味があるのか聞いてるのと思ってた。
0342238
2005/07/21(木) 12:34:04ID:1d7jG9nE第一弾で作ったシステムは、DBの重要度・依存度はそんなに高くない
ASP(顧客ごとのオリジナルシステムじゃないですよ)なので。
項目数も更新頻度も少ないから一つのテーブルでまとめちゃっても
特に支障なかったんですよ。
でも今作ってるのはDBに入れるべき項目数もレコード数も多くなるので、
きちんとした設計にしようと思って質問しました。
で、もう半年くらい営業してるんで、顧客が数十社というのはむしろ少なすぎです。
開発と営業を一人でこなさなきゃならないのでどうしても時間が足りないんです。
だからそろそろ営業マンと技術者を一人ずつ雇います。
>>296
いちおう第三正規化まで(無意識的に)やってました。
正規化という概念があるのは後付けで知ったんですが。
0343nobodyさん
2005/07/21(木) 13:30:41ID:jGRVDiGIPHP.ini のどこを変更すればいいんですか?
0344nobodyさん
2005/07/21(木) 13:45:42ID:???プロフェッショナリズムの欠如したプロフェッショナル(自己矛盾だな…)
0345nobodyさん
2005/07/21(木) 14:34:01ID:pW+lONe3手を加えたのですが、これで良いのでしょうか。
qmailでメールのエイリアスを追加したのですが、
/var/qmail/alias/.qmail〜 というファイルに
&〜
というメールアドレスを追加したのですが、qmail
を再起動しなくてもメールのエイリアスの追加は
完了したのでしょうか。
qmailの再起動も知らない初心者なので、これだけ
で良いのかと心配しています。どなかか教えて下さ
ると非常に助かります。お願いいたします。
0346nobodyさん
2005/07/21(木) 15:00:50ID:???mysql_close()とmysq_free_result()は必要なのでしょうか?
入門本では特に「切断する」「開放する」以上の説明はないのですが、
PHPのマニュアルには
「mysql_closeは通常必要ない」「結果保持用メモリは自動的に開放される」
とあります。
プログラミング的には書くのがお行儀がいい、ということなのでしょうか?
それともやはり「どっちでもいい」のでしょうか?
0347nobodyさん
2005/07/21(木) 15:04:34ID:???PHPというよりqmailの質問だから↓の方がいいかも
qmailインストール @Linux板
http://pc8.2ch.net/test/read.cgi/linux/1004341147/
qmailいろいろ(7) @UNIX板
http://pc8.2ch.net/test/read.cgi/unix/1114157851/
0348nobodyさん
2005/07/21(木) 15:07:32ID:???再起動は不要。
エイリアス追加後、再起動せずにエイリアス宛にメールを
送信してみれば聞くまでもないことだと思うんだけど。
てか、そもそもスレ違い。
0349nobodyさん
2005/07/21(木) 15:24:55ID:???<input type="text" name="hoge" value="10">
<input type="text" name="hoge" value="20">
<input type="text" name="hoge" value="30">
</form>
をsubmitして
'hoge.php'で$cnt=count($_POST['hoge'])ってしたら
$cntは3になると期待したんですが1になっちまうんです
3にするにはどうすればよいんしょうか?
0350nobodyさん
2005/07/21(木) 15:27:23ID:pW+lONe3>348
345です。ありがとうございます。再起動せずに
エイリアス宛にメールを送信して見たら、出来ま
した。そのようなことも思いつかないなんてどう
かしてますね。(笑)
また、スレ違いでしたので、今後はqmailスレで
聞くようにします。
いずれししても、ありがとうございました!!
0351nobodyさん
2005/07/21(木) 15:35:11ID:uSqim16b$start=microtime();
//処理
$end=microtime();
echo $end-$start;
ってな感じでmicrotimeの計算をした時に近い数字同士だと
指数になったり結果がマイナスになったりするんですがなぜなんでしょうか?
0352nobodyさん
2005/07/21(木) 15:45:03ID:???一般的なプログラミングの作法としては、ちゃんとプログラム中で
閉じたり開放するのが正しい(と思ってるので、自分はしてる)。
但し、PHPの仕様としてスクリプト終了時にmysql_close()とmysql_free_result()
相当の動作が自動的に行われると明記されているので、"PHPプログラミング"の
作法としてはスクリプト中で記述しないというのは正しい。
またプログラム処理の結果を吐き出してから後始末を行うので、
結果を得られるタイミングも早く、すなわち処理が速く終わる。
もっともmysql_closeはMySQLコネクションというリソースを、
mysql_free_resultはMySQLからの結果を保持する記憶域を開放するためのものであるから、
スクリプトの動作時間が長く、それらのリソースを無駄に保持する負荷が
比較的大きいのであれば、適宜開放してやるのが良い。
0353nobodyさん
2005/07/21(木) 15:51:03ID:???俺の考えだけど、俺の場合はソースの頭でオープンさせて最後に開放させてる。
と言うのも、その都度開放するとサーバに負担がかかると思ったから。
何度も開けたり閉じたりするより、最初に開けちゃって最後に閉じた方がよいかと思って。
0355nobodyさん
2005/07/21(木) 16:00:24ID:???事象がわかりましたが、
対策が解りませんのでどなたか教えてください。
<form method='POST' action='hoge.php'>
<input type="text" name="hoge" value="10">
<input type="text" name="hoge" value="20">
<input type="text" name="hoge" value="30">
</form>
をsubmitしたのに配列で受け取れないのは
<input type=image>で送信されたものの場合で試しに
<input type=submit>にしてみたら配列がやってきました。
イメージを送信ボタンとして配列をPOSTしたいのですが
javascriptを使わずに出来ますでしょうか?
0356nobodyさん
2005/07/21(木) 16:00:52ID:???microtime() で何が返ってきてるか見てみなよ。
0358nobodyさん
2005/07/21(木) 16:07:04ID:???<input type=submit style="background-image:url('イメージ')">
じゃダメ?やってないから分からんけど。
0359nobodyさん
2005/07/21(木) 16:15:01ID:???>>357 http://honyaku.yahoo.co.jp/transtext
0362nobodyさん
2005/07/21(木) 19:25:40ID:NWEHg4fzさらに内容が私のメールに届くようにしてあるスクリプトを作成したのですが
これに加えて
自分で作成したメールアカウントにメールを送信したら
そのメール内容が掲示板に投稿されるようには出来ますでしょうか?
0363nobodyさん
2005/07/21(木) 19:44:29ID:???0364nobodyさん
2005/07/21(木) 20:57:07ID:???SMTPサーバーを操作できるのならエイリアスファイルから登録用スクリプトを呼び出せばいい。
sendmailならこんな感じで呼び出すけど、SMTPサーバーによって設定ファイル、設定内容は
異なるので自分で調べてくだされ。
myaccount: "| /path/to/php 登録用スクリプト名"
これで[email protected]にメールが届くと登録用スクリプトが呼び出される。
スクリプトでは標準入力からメールデータを取り出して掲示板に登録する。
もちろんこのスクリプトはオマイさんが書くんだよ。
SMTPサーバーが触れないのならPOPやIMAPを使うしかないかも。
0365nobodyさん
2005/07/21(木) 21:06:26ID:???大体この3つくらいが定番かと。
0366nobodyさん
2005/07/21(木) 21:09:11ID:???rh9 php4.3.11を使用しています。
pear Net_SMTPを使用し
[email protected]さんのメールアドレスが実在するかチェックする
スクリプトを作成しています。
Net_SMTPコンストラクタ作成時に 接続先サーバを指定するのですが、
[email protected](abc.co.jp)のSMTP鯖を調べる方法は
ありますでしょうか。
0367nobodyさん
2005/07/21(木) 21:21:09ID:???getmxrr()
んでも、MXが見つからん場合はAとかに送るんじゃなかったっけ?その辺りは実装しなきゃいけないかもね。
0368nobodyさん
2005/07/21(木) 21:27:16ID:hk8J7OA3<?php
$a = @$_POST["answer"]
if($a="ほげほげ"){
echo "正解";
}
else{
echo "不正解";
}
?>
上記のif文で、$aが"ほげほげ"を含む場合には正解を表示させるには
どのように記述したらいいのでしょうか?
$aが"ほげほげです"でも"ほげほげかな?"でも正解にしたいのです。
よろしくお願いします。
0369nobodyさん
2005/07/21(木) 21:32:24ID:???http://jp2.php.net/manual/ja/function.mb-strpos.php
0370nobodyさん
2005/07/21(木) 21:54:25ID:hk8J7OA3有難う御座います。
リンク先をみても3%くらいしか理解できませんでした。
if(mb_strpos($a,"ほげほげ"){
echo "正解";
}
false{
echo "不正解";
}
こんな感じでしょうか?なんか足りない気がします。
0372nobodyさん
2005/07/21(木) 22:08:34ID:???0373nobodyさん
2005/07/21(木) 22:38:23ID:???正規表現を理解できるとは思えないけど(バカにしているんではないよ)。
>なんか足りない気がします
ってどういう意味だろう。実行したけどエラーがでるのかな。
エラーがでるのならエラーメッセージぐらいは張って欲しいけど。
とりあえず)が一個足りないけどコピペミスなの?
if(mb_strpos($a,"ほげほげ"){
↓
if(mb_strpos($a,"ほげほげ")){
このままmb_strposが使えるまで頑張るか正規表現を勉強するかは
>>370次第。嫌がらせではないからキレないでね。
0374nobodyさん
2005/07/21(木) 22:56:27ID:???0375nobodyさん
2005/07/21(木) 23:07:04ID:???0376nobodyさん
2005/07/21(木) 23:10:38ID:???ってのが聞こえてきそうだ。
var_dump(mb_strpos($a,"ほげほげ"); とかして、どんな値が返ってくるのか実感して欲しいところだな。
誰も突っ込んでないけど、 if($a="ほげほげ") ってのもかなりイタイ
0377nobodyさん
2005/07/21(木) 23:44:29ID:OPf2mV1L�@九九表
�A2次方程式の解 ax2+bx+c=0
0378nobodyさん
2005/07/22(金) 00:09:21ID:???>>377
どこまでやったのか書いてみ。
2.の方は学年と性別、妹の有無の情報が無いと、出題者の意図が分からん。
0379nobodyさん
2005/07/22(金) 00:17:20ID:1VklDg1R0380nobodyさん
2005/07/22(金) 00:21:20ID:???せめて過程だけでも教えて下さい。
0382nobodyさん
2005/07/22(金) 01:29:04ID:???if(mb_strpos($a,"ほげほげ") === FALSE){
echo "不正解";
} else {
echo "正解";
}
文字エンコーディングの設定必要あるかもだけど。
0383nobodyさん
2005/07/22(金) 02:49:06ID:???アリエナスww
上記のライブラリを追加したらリコンパイル必要ですか?
apache再起動で済みますか?
あと、php-usersのMLをどなたかのサイトでアーカイブにしてnamazuに喰わせてあったのですが
うかつにもブックマークし忘れました、どなたかurlわかりますか?
0384383
2005/07/22(金) 03:01:06ID:???すいません、後半部分は自己解凍しました。
http://www.php.gr.jp/php/novice.php3
このスレのテンプレにも追加したいくらい便利っすね。
0385nobodyさん
2005/07/22(金) 06:59:06ID:7S1nHf8D具体的には
CREATE TABLE myAuth (
myUserColumn VARCHAR(50) NOT NULL
, myPasswordColumn VARCHAR(32) NOT NULL
);
ってテーブルを作って、
ttp://dozo.matrix.jp/pear/index.php?PEAR%2FAuth
ここいらを参考に(というかそのまま)
認証をかけてみたんですが、常に認証失敗になってしまいます。
Pear::Authのインスタンスをprint_rしてみたんですが
どこで失敗しているのかがわからず(ちなみにDB接続は成功しています)
解決の糸口がつかめません。
試しにlast_queryをそのままDBに入れると、ちゃんと帰ってくるんで
一体どこでつまづいているのかサッパリです。
同じような現象になった方、解決方法ありましたらよろしくお願いします。
0386nobodyさん
2005/07/22(金) 07:31:03ID:???基本的にhtmlコードや普通のテキストを呼び出したりするときは.incで統一してるんですが、
phpコードとかだったら.phpにするべきなのかな?
0388nobodyさん
2005/07/22(金) 08:19:11ID:???特に決まりはないから好きにしたらいい
俺はphpコードはphpにしてる。他の拡張子だとソースの内容が丸見えになるので
後はhtmlだったりtxtだったり
config.inc.phpなんてやってるのもある
0390nobodyさん
2005/07/22(金) 12:43:09ID:???ドキュメントルート以下にそんなファイル置く奴が悪いんだが。
.htaccessとかで.incを.php扱いにすることも出来るがそんな手間を考えるなら拡張子を統一するのがベスト。
0392nobodyさん
2005/07/22(金) 16:26:40ID:s5umLjZLPHPをWindowsで使う際、execを使って外部のexeやバッチファイルを
バックグラウンドで動かすことは無理なのでしょうか?
時間のかかる処理をexeやバッチファイルで実行しているのですが、
exeなどをファイルにリダイレクトしても、結局バックグラウンドでは
動作せず、ブラウザが読み込み中のまま待たされることになってしまいます...。
処理が終わったら戻ってくるんですが。
Linuxだとリダイレクトと「&」を使って簡単にできるのに...。
PHP 4.3.11+IIS(Apacheでも同じ)です。
ぜひご教示を!
0393nobodyさん
2005/07/22(金) 16:29:55ID:mNPTggfmSimpleXMLは名前の通り使いやすいと思うのですが
SimpleXMLよりも使い勝手がよいパーサというものは
あるでしょうか?
0394nobodyさん
2005/07/22(金) 16:34:59ID:mNPTggfm変数を使う前に宣言してから利用可能に
するということはかのうでしょうか?
クラス内のフィールド(メンバ変数)とは別に。
PHPは、変数名などのスペルミスをすると
どこにバグがあるのか気づかずに
苦労することがあります。デバッガにも気づいて
もらえません。
それをC++やJavaのコンパイラように、
あらかじめ変数を宣言してから
利用できるようにすればどこにまちがい
があるのかかなりわかりやすくなり、
スペルミスにもすぐに気づきやすいのですが。
これをC++やJavaのように楽にする方法はないでしょうか?
C++やJavaを使えと言われても仕事上、そうはいかないものでして.。
0395nobodyさん
2005/07/22(金) 17:06:33ID:???error_reporting (E_ALL);
これで未定義の変数に警告を出してくれる。
0396nobodyさん
2005/07/22(金) 18:57:44ID:???PHPは、コンパイルできませんか?
0398nobodyさん
2005/07/22(金) 19:06:37ID:???つ http://www.google.co.jp/search?hl=ja&q=php+コンパイル&btnG=Google+検索&lr=
0399nobodyさん
2005/07/22(金) 19:09:20ID:???ionCube PHP Encoderですか?
PHPスクリプトをコンパイルした場合
こういうのを、サーバーに入れないとだめなんですか?
0400nobodyさん
2005/07/22(金) 19:16:57ID:???そういった用途の有償・無償のプロダクトがある。
ソース配布前提ライセンスのライブラリ等を利用するときは留意せよ。
0401nobodyさん
2005/07/22(金) 19:19:17ID:???それで、そういうのを使って、
コンパイル後のファイルを配布を受けたものは、
普通にサーバーの入ってるパソコンに
置くと、ネットに乗せられるんでしょうか?
お願いします。
0402nobodyさん
2005/07/22(金) 19:31:40ID:???書いてる日本語が変。
ネットに乗せられる
→(解釈)アップロードしてWebサーバのコンテンツ配下に置ける(ネットに乗せられる)か
→Yes. 単なるバイナリーファイルだから。
0403nobodyさん
2005/07/22(金) 20:17:50ID:???IEなんかで見られるんですか?という意味です。
0404nobodyさん
2005/07/22(金) 21:13:13ID:???まずお前は日本語と一般教養の勉強をしたほうがいい。
コミュニケーションできないと開発も出来ない(たとえ一人で開発してるとしても)。
0405nobodyさん
2005/07/22(金) 21:26:24ID:???0406nobodyさん
2005/07/22(金) 21:39:15ID:???0407nobodyさん
2005/07/22(金) 21:56:40ID:???「見る(見られる)」ってのも、これまた抽象的な表現だな。
可能。特にWebサーバでそのファイルに
アクセス出来ないようにしていなければだけど。
0408nobodyさん
2005/07/22(金) 22:03:28ID:???・配布した物の中身を見られたくない
・配布した物を実行する鯖(実行環境)に手を加える必要が無い
そんな便利なものがあるのだろうか?って質問をしたいんだろうね。
というか、そういう質問になるはずなのにパスコンとかIEとか訳ワカンネ
0410nobodyさん
2005/07/22(金) 23:51:35ID:???ほっておけ。
それにしても最近のここは惨いな。夏休みだからか。
0411nobodyさん
2005/07/23(土) 00:08:59ID:???0412nobodyさん
2005/07/23(土) 00:17:58ID:???ある変数がNULLかどうか、0かどうか、空かどうかを皆さんどう判定してますか?
いま、ある配列に特定のキーがあるかどうかを
$hoge = array(10,20,30);
$val = 10;
$key = array_search($val,$hoge);
このようなスクリプトで$valが$hogeに見つからなかった場合の処理をしようと
if ($key == NULL) print "ぬるぽ";
と記述したところ、この場合、$hoge[0]に10があるわけですが、
$keyに「0」が入ってしまい、$key == NULLが真となってしまいました。
仕方ないので(strlen($key)==0)としているのですが、他にもっと直接的な判別方法があるのでしょうか?
($key===NULL)だと$valが見つからない場合でも常に偽になってしまうようです。
よろしくお願いします。
■ このスレッドは過去ログ倉庫に格納されています