【PHP】下らねぇ質問はここに書き込みやがれ 73
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/09/03(水) 20:14:53ID:???PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 72
http://pc11.2ch.net/test/read.cgi/php/1218855685/
◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0124nobodyさん
2008/09/06(土) 11:51:55ID:IBN49V47それでやってみたけど同じだった
表示されたのは
9月6日 (・8)
0125nobodyさん
2008/09/06(土) 11:52:01ID:???0126nobodyさん
2008/09/06(土) 11:53:54ID:IBN49V47いや普通にぐぐって出てきたのを使ってるだけなんで、なぜと言われても・・・
他の曜日は問題なく表示されるんだけどなぁ
0127nobodyさん
2008/09/06(土) 12:03:02ID:???お前はレスの意味を理解できていない
なぜdateの中に$youbiを突っ込む・・・
↓
dataの中に$youbiを突っ込まずに試してみろ
ってことだろ
お前はとりあえず「色々試してみる」ということが欠けている
これはプログラマにとって必ず必要なものだから
そういう思考回路をもってやってみろ
0128nobodyさん
2008/09/06(土) 12:06:50ID:IBN49V47おー�d
$youbi = array("日","月","火","水","木","金","土");
$yb = date(w);
$newday = date("n月j日");
$out = "$newday ($youbi[$yb])";
これでうまくいったけど、なぜ土曜だけ文字化けしたのか理由がわからないなぁ
何かのバグ?
サンプルコードになってるくらいだから鉄板だと思ってたよ・・・
0129nobodyさん
2008/09/06(土) 12:29:43ID:???>いや普通にぐぐって出てきたのを使ってるだけなんで、なぜと言われても・・・
自分で思考することをやめてしまっては人間終わり。
ググって出てきたどこの馬の骨とも分からないコード>自分の思考能力、か。
>サンプルコードになってるくらいだから鉄板だと思ってたよ・・・
社会に出てからカモられないように気をつけてくれ。
>これでうまくいったけど、なぜ土曜だけ文字化けしたのか理由がわからないなぁ
>何かのバグ?
ちゃんと理由がある。自分で推測してみよう。そして調査してみよう。
0130nobodyさん
2008/09/06(土) 12:53:07ID:IBN49V47文字化けだから愚直に文字コードかと思って調べてみたら、
Shift_JIS文字コードとdateのformat関数がバッティングしてたということだった
調べてみたらなるほどだったわ
�dクス
0131nobodyさん
2008/09/06(土) 12:54:45ID:IBN49V47× dateのformat関数
○ date関数のformat
0132nobodyさん
2008/09/06(土) 13:09:41ID:???未定義定数は使わんほうがいいぞ
今件とは関係ないが
0133nobodyさん
2008/09/06(土) 14:54:08ID:PcddpkQO$dsn = "mysql://user:password@localhost/table";
$db =& MDB2::connect($dsn);
if (PEAR::isError($db)) {
die($db->getMessage());
}
$db->setFetchMode(MDB2_FETCHMODE_ASSOC);
$db->getMessage();
DBを使うスクリプトを書いていて、変なエラーがでるのでちゃんとつなげてるかなと
確認するために上のようなコードを書いたのですが
Fatal error: Call to undefined function: MDB2_Driver_mysql::getMessage(). in /usr/local/lib/php/MDB2.php on line 1936
というエラーがでます。どういうことでしょう? ちなみにXREAです。
0134nobodyさん
2008/09/06(土) 15:12:14ID:???http://〜〜/.phpってなってるやつって
どうしてプログラムのソースを見ることができなんですか?
セキュリティー面から云々はわかるんだけど、
どういう仕組みなのかが気になりました。
php、cgi、とかのソースは見れないようにしましょう、ていうのは何で判断してるんだろ。
よろしくおねがいします。
0135nobodyさん
2008/09/06(土) 15:16:04ID:???その拡張子でアクセスしたらサーバ側でスクリプトとして認識し実行されるから。
設定を間違えれば、ただのテキストファイルと同じくソースは見れる。
0136nobodyさん
2008/09/06(土) 15:20:34ID:???なるほど
無料なんたらサーバーとかしてるひとは、
そういう設定を踏んでいたのですか
わかりました ありがとうございました
0138nobodyさん
2008/09/06(土) 16:02:11ID:PcddpkQOrequire_once "MDB2.php";
var_dump(class_exists('MDB2'));
とやると
bool(true)
と。
0139119
2008/09/06(土) 16:10:16ID:qjClKg0qエラーが出るように設定してあるので
五行目が原因とでました
>>121
本当にそうです
基礎からはじめようと本を買ったのですが
本には記述されてなかったです
0140nobodyさん
2008/09/06(土) 16:16:13ID:???だからエラー書かないと原因がわからないだろうがカス
お前は情報隠して相手のエスパーに任せて問題解決してもらうのか?
Mr,マリックにでも頼んどけ!!
>>138
$dsnの値は正しい?
0141nobodyさん
2008/09/06(土) 16:23:36ID:???getMessage()を持ってるのはPEAR_Errorだから
PEAR::isError($db)がfalse($dbがちゃんとMDB2_Driver_mysql)のとき
getMessage()呼んで(>>133 8行目)もだめってだけじゃないのかなー
0142nobodyさん
2008/09/06(土) 16:46:53ID:PcddpkQO正しいです。何度も確認しました。
>>141
なるほど、この時点ではあまり意味のないということですね
では、
class readDB {
function readHeadline(){
$query = $db->queryOne('select * from ivent where type=`dialy` order by time desc limit 0,1');
return $query;
}
}
と下のほうに書いて、別のファイルにてinclude、そして
$hogehoge = readDB::readHeadline();
print_r($hogehoge);
と書いて動作確認してみたのですが、
Fatal error: Call to a member function queryOne() on a non-object in (readHeadlineが書かれたファイル) on line 33
となってしまいます。ちなみに33行目はreadHeadlineメソッドのqueryOneが書かれている行です。
いろいろ確認していたのですが、解決できず困っています。
続けてなんで申し訳ないですが、どうやったらうまくいくでしょうか?
0143nobodyさん
2008/09/06(土) 16:48:27ID:???←この時点で$dbはnull
$query = $db->queryOne('select * from ivent where type=`dialy` order by time desc limit 0,1');
return $query;
}
0144nobodyさん
2008/09/06(土) 17:20:29ID:???MDB2は抽象レイヤだから使うDBのドライバが必要
MDB2と同じディレクトリに入れなされ
0145nobodyさん
2008/09/06(土) 17:30:21ID:PcddpkQO無理やりreadHeadlineメソッドに接続部分を放り込んだところ
データを取り出すことが出来ました。$dbをglobal宣言させればいいのかな……
今文字化けでややしておりますが、それもなんとかなりそうです
お騒がせしました
0146119
2008/09/06(土) 18:01:36ID:qjClKg0qそういうことでしたか 申し訳ございません
Warning: file_get_contents(test.data) [function.file-get-contents]: failed to open stream: No such file or directory in C:\Program Files\Apache Group\Apache2\htdocs\test.php on line 5
というエラーでした
よろしくお願いします
0147nobodyさん
2008/09/06(土) 18:03:23ID:???0148nobodyさん
2008/09/06(土) 18:07:59ID:???って言われてるじゃん
0149nobodyさん
2008/09/06(土) 18:09:15ID:???0150nobodyさん
2008/09/06(土) 18:48:52ID:???C:\Program Files\Apache Group\Apache2\htdocs\
C:\Program Files\Apache Group\Apache2\htdocs\
C:\Program Files\Apache Group\Apache2\htdocs\
C:\Program Files\Apache Group\Apache2\htdocs\
フイタ
0151119
2008/09/06(土) 19:00:11ID:qjClKg0qファイルを作ったのですが
test.data.phpとなっていたため
不思議だな って思っていました
ありがとうございました
0153ぬる ◆2ktvKfzrfk
2008/09/06(土) 20:05:53ID:Daa5S/Hxrからtestの
$test1という変数を参照したいです。
function test(){
$test1 = "関数1";
}
function r(){
test();
echo $test1;
}
これではうまく動きませんです。
0154nobodyさん
2008/09/06(土) 20:08:15ID:???0156nobodyさん
2008/09/06(土) 21:26:21ID:SQQYgTPo0157nobodyさん
2008/09/06(土) 21:48:53ID:SQQYgTPo0159nobodyさん
2008/09/07(日) 01:08:47ID:NLr3PNjo掲示板とチャットってどちらの方がいいですか?
リアルタイムに処理するのがチャットで、
バッチ処理で処理するのが掲示板だと思うんですが、
チャットってネット上でみたことがありません。
なれない時は、掲示板の方が無難でしょうか?
宜しくごきょうじゅ下さい。
0160nobodyさん
2008/09/07(日) 01:28:23ID:???$obj = test();
r($obj);
function test(){
$test1 = "関数1";
return $test1;
}
function r($aaa){;
echo $aaa;
}
0161nobodyさん
2008/09/07(日) 01:31:00ID:???最近ちょくちょく来る質問者君だね、こんばんは
掲示板は伝言を残す
チャットは接続してる人間とリアルタイムに話す
用途が違うのにどちらがいいですかはないだろアホか
自分の好きなものを作れ。こういう質問はほんとやめろ
0162159
2008/09/07(日) 01:37:22ID:NLr3PNjoご回答ありがとうございます。
> 用途が違うのにどちらがいいですかはないだろアホか
いや、そういう話をしているのではなく、
> なれない時は、掲示板の方が無難でしょうか?
と聞いているのですが?
0163nobodyさん
2008/09/07(日) 01:47:38ID:???掲示板の方が、サーバーにかかる負荷が少なくていいかもしれないよ。
チャットよりも掲示板の方がニーズがあるのは、
電話よりメールの方にニーズがあるのと一緒です。
理由は、考えてね。
0164nobodyさん
2008/09/07(日) 02:06:38ID:???どっちらを先に作るかなら、掲示板。
簡易な掲示板を作って、無理せずに徐々に機能を増やしていけば、
どんどん楽しくなっていくと思う。
それにチャットは今は流行らない。ライブチャット系なら別だと思うけど。
0165nobodyさん
2008/09/07(日) 02:55:40ID:???metaタグでrefreshするやつ
ただ投稿されたものを単純に表示するチャットより掲示板はめんどくさいぞ
スレあげたりさげたり
親記事にレスつける機能とか
ページの切り替えとか
0166nobodyさん
2008/09/07(日) 07:42:35ID:???大変なことになるぞw
0168nobodyさん
2008/09/07(日) 08:48:12ID:u4lgpvaPチャットと掲示板は表示やアクセスするタイミングが違うだけで
基本的にバックエンドでやっていることは同じようなもんだから
とりあえず、ログファイル とか DBに接続したりして、
読込み / 書込み を作ってみればいいと思うよ
0169nobodyさん
2008/09/07(日) 13:36:18ID:Cu6eG2hC日付の妥当性(checkdate関数使用)をチェックしようと思い
下記のコードを実行したところ"2008-08-31"がエラーになります。
これはなぜでしょうか?
<?php
$date = '2008-09-03';
list($year,$month,$day) = split('-', $date);
if(! checkdate($day,$month,$year) ){
echo $date." - NG<br />";
}else{
echo $date." - OK<br />";
}
$date = '2008-08-31';
list($year,$month,$day) = split('-', $date);
if(! checkdate($day,$month,$year) ){
echo $date." - NG<br />";
}else{
echo $date." - OK<br />";
}
// 実行結果
// 2008-09-03 - OK
// 2008-08-31 - NG
?>
0170nobodyさん
2008/09/07(日) 13:39:41ID:???http://jp.php.net/checkdate
0171169
2008/09/07(日) 13:40:00ID:Cu6eG2hC本来ならelseのOKの箇所は別のコードが入る予定でして。
0172169
2008/09/07(日) 13:42:50ID:Cu6eG2hCお返事ありがとうございます。
よく読んだらパラメーターを渡す順番が間違ってました。。。
0173nobodyさん
2008/09/07(日) 17:33:58ID:???$k1=0;
$k2=0;
$k3=0;
$k4=0;
…
Parse error: syntax error, unexpected T_LNUMBER, expecting T_VARIABLE or '$' in C:\xampp\htdocs\saikoro.php on line 2
なんだろう、初心者なんだけどすげー初歩的な事で間違えてる気がする
今までこんな所でエラー出た事ないのに
0174nobodyさん
2008/09/07(日) 17:40:11ID:???0175nobodyさん
2008/09/07(日) 18:19:48ID:???0177nobodyさん
2008/09/07(日) 19:14:14ID:???0179nobodyさん
2008/09/07(日) 19:44:10ID:???おまえのコードが書いたコードよりすごいもの書いてる奴が多いんだから
自分のコードを見せたくないために嘘かくんじゃねーよ
0180nobodyさん
2008/09/07(日) 20:06:53ID:???0181nobodyさん
2008/09/07(日) 20:09:51ID:???0182nobodyさん
2008/09/07(日) 20:12:38ID:???<?php
$1=0;
$2=0;
$3=0;
$4=0;
…
こう書いたら、
シンタックスエラーの
行数はどうなる?
0184nobodyさん
2008/09/07(日) 21:02:50ID:???書いてるエラーが嘘だと言っている
予期せぬT_LNUMBER,のトークンエラーなんだから 原因は$1とかのエラーしかない
ご丁寧にT_VARIABLEや$が原因じゃないか?ってPHPが言ってるし
0185nobodyさん
2008/09/07(日) 21:23:22ID:???0186nobodyさん
2008/09/07(日) 22:04:44ID:SxjUkprG0187nobodyさん
2008/09/07(日) 22:09:12ID:SxjUkprG{}ブロックの中で宣言された変数は{}ブロックの中でしか使えないんだ! !
だから、function r{}の中で$test1変数は使用できない! !
以上だ!
0188nobodyさん
2008/09/07(日) 22:10:57ID:SxjUkprG俺のDVDドライブに入れるとほこりがたくさん飛び散って故障しそうなんだ。
CDの鏡面ってなにで拭けばいいのかな?CDレンズクリーナーはあっても
CDを拭くやつって売ってないんだよね。
教えてちょんぴろげ。
0189nobodyさん
2008/09/07(日) 22:11:46ID:SxjUkprG0190nobodyさん
2008/09/07(日) 22:12:58ID:SxjUkprGそれまでに、答えを書いておいてくれると助かるなあ。
0191nobodyさん
2008/09/07(日) 22:14:33ID:SxjUkprG0192nobodyさん
2008/09/07(日) 23:30:09ID:???彼女に振られたか?
0194nobodyさん
2008/09/08(月) 00:30:46ID:???0195nobodyさん
2008/09/08(月) 02:39:49ID:HHcRl2tq??
<?php
$to = "xxx@xxxx";
$subject = "fefeあふぁえ";
$message = "bげkgべ";
$add_header = "FROM:xxxx@xxxxxx";
if(mb_send_mail($to,$subject,$message,$add_header))
{print "うむ";}
else{print "むり";}
?>
という実行をしたら一番上のエラーがでました
php.iniのSMTP = localhostにしてあるし
;sendmail_fromも設定はしてあるのですが
なぜエラーが出るのでしょうか
よろしくお願いします
0196nobodyさん
2008/09/08(月) 03:09:11ID:???0197nobodyさん
2008/09/08(月) 03:11:19ID:HHcRl2tqメールサーバというのはよく分からないのですが
apacheでやっていますのでlocalhostです
0198nobodyさん
2008/09/08(月) 03:13:40ID:???SMTP = localhost はそのXPってことだぞ
0199nobodyさん
2008/09/08(月) 03:15:16ID:HHcRl2tq一回調べて出直してきます
ありがとうございます
0202nobodyさん
2008/09/08(月) 04:08:41ID:???0203195
2008/09/08(月) 04:17:19ID:HHcRl2tq>>196さんの
>SMTP = localhost はそのXPってことだぞ
というのはいまだよく分からないですが
メールサーバとはyahooなどのメアドを取得するときに
もらうサーバみたいなものですね
どこにあるのか分からないので実行は出来なかったですが
やっと理解しました
ありがとうございます
0204nobodyさん
2008/09/08(月) 04:21:07ID:???0205nobodyさん
2008/09/08(月) 04:22:25ID:???http://www.xmailserver.jp/download/
0206nobodyさん
2008/09/08(月) 11:34:29ID:???ttp://www.mmrhome.net/mars/wiki/index.php?MercuryMail
0207nobodyさん
2008/09/08(月) 13:59:01ID:???0208nobodyさん
2008/09/08(月) 14:15:56ID:???0209nobodyさん
2008/09/08(月) 16:38:52ID:0Z9R+jtT(
[option_value] => Array
(
[1-1] => 10
)
[option_value_row] => Array
(
[0] => S
)
[option_value_col] => Array
(
[0] => 赤
)
[1] => Array
(
[option_value] => Array
(
[1-2] => 0
)
[option_value_row] => Array
(
[0] => S
)
[option_value_col] => Array
(
[1] => 赤
)
0210nobodyさん
2008/09/08(月) 16:41:07ID:0Z9R+jtTarray_merge($配列[0] ,$配列[1])
とすると
Array
[option_value] => Array
(
[1-2] => 0
)
[option_value_row] => Array
(
[0] => S
)
[option_value_col] => Array
(
[1] => 赤
)
このようになってしまいます。
0211nobodyさん
2008/09/08(月) 16:43:30ID:0Z9R+jtTArray
(
[option_value] => Array
(
[1-1] => 10
[1-2] => 0
)
[option_value_row] => Array
(
[0] => S
)
[option_value_col] => Array
(
[0] => 赤
[1] => 赤
)
)
0213nobodyさん
2008/09/08(月) 17:02:20ID:0Z9R+jtT思った動きができました。ご丁寧な誘導ありがとうございました。
0214nobodyさん
2008/09/08(月) 22:35:06ID:HHcRl2tq<html>
<head>
<title>テキスト送信のテスト</title>
<meta http-equiv="content-type"content="text/html;charset=shift_jis">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<font size="4">テキスト送信のテスト</font>
<form name="form1" method="post" action="view.php">
名前:<br>
<input type="text" name="onamae">
<br>
本文:<br>
<textarea name="honbun" cols="30" rows="5"></textarea>
<br>
<input type="submit" value="送信">
</form>
</body>
</html>
0215214
2008/09/08(月) 22:36:31ID:HHcRl2tq<html>
<head>
<title>PHPテスト</title>
</head>
<body>
<?php
print $_POST["onamae"]."さんどもー";
?>
</body>
</html>
という二つのプログラムをつくって view.phpに送ると
山下清?????[となり 文字化けします
htmlはシフトJISで phpはEUCです
本にはPHPはEUCでも文字化けしないと書いてあったのですが
どこがいけなかったのでしょうか?
よろしくお願いします
0216nobodyさん
2008/09/08(月) 22:44:51ID:???phpで吐くソースもshift_jisにしなくちゃならんだろ。
0217214
2008/09/08(月) 22:54:59ID:HHcRl2tq今色々してたら htmlはshiftで phpはEUCで出来ました
理由は分からないのですが こんなことはありえるのでしょうか?
あと phpをshiftで試したところ 逆に文字化けしてしまいました
山下清???@???[ という風になりました
ブラウザは シフトになっています
0218nobodyさん
2008/09/08(月) 23:59:20ID:???その色々とは何をやったのか。
ブラウザにキャッシュが残ってればプログラム更新しても正常に表示されないこともあるし、
みたところview.phpには、metaタグでcharsetをshift_jisにするように書いてないね。
もう一度HTMLとPHPのファイルのcharsetが更新されているか、ブラウザにキャッシュが残ってないか
確認してみたらいいんじゃないの。
0219nobodyさん
2008/09/09(火) 00:05:22ID:???0220214
2008/09/09(火) 00:25:42ID:hWjgO1tEphpファイルとhtmlファイルの言語コードをともに変えた程度です
一度確認してみます
>>219さん
本に書いてあったまま書いたのですが
printはまずいんでしょうか?
0221nobodyさん
2008/09/09(火) 00:26:01ID:???テストなんだから放置でいいんじゃね?
>> 214
mb_internal_encoding
mb_http_input
mb_http_output
とかも見とけよ
自動変換効いてるとハマるぜ
0222214
2008/09/09(火) 00:42:54ID:hWjgO1tEありがとうございます
大変勉強になります
もう1つだけ質問させてください
form.htmlのあとに確認画面を作りたいのですが
<input type="submit" value="確認">
<input type="hidden" name="used_id" value="<?=$_POST["user_id"]?>">
<input type="hidden" name="onamae" value="<?=$POST["onamae"]?>">
<input type="hidden" name="honbun" value="<?=$_POST["honbun"]?>">
というのが本に書いてあったのですが
実行すると 確認ボタンの横に『 "> "> "> 』となります
しかも値が代入されずに
これを直す方法はありますでしょうか? またこの記述で本当にあっていますでしょうか?
0223nobodyさん
2008/09/09(火) 00:50:42ID:???■ このスレッドは過去ログ倉庫に格納されています