【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カテゴリ)の各スレで
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:???0225nobodyさん
2008/09/09(火) 00:53:00ID:???本に書いてあって、それを書いたら
うまくいったからリリースする
とか、最悪のプログラマだろ。
0227nobodyさん
2008/09/09(火) 01:04:11ID:???そこまで言わなくても。
まだ始めたばかりなんだろうし。
ただ、>>222の人は、もし何らかのアプリケーションが出来ても
現時点では、ローカルで動作確認するところまでにしておいたほうがいい。
セキュリティのこととかその他もろもろ理解出来てきてくるまでは。
また、
くだすれPHP(超初心者用)4
http://pc11.2ch.net/test/read.cgi/php/1213356756/
というスレもあるので、こちらのほうがいいかも。
0228nobodyさん
2008/09/09(火) 01:11:55ID:???0229214
2008/09/09(火) 01:13:38ID:hWjgO1tE>>223さん
空白を入れろということですか?入れても変わりませんでした
>>224さん
onにしましたが換わらずです
>>225さん
本質というか基本のために本を買ったのですが
本質は基本をしていけば分かってくるかな って思ってます
>>226さん
とりあえず 自分が出来るところまでやってみたいと思います
>>227さん
はい とりあえずは迷惑をかけないためにローカルでやるつもりです
そちらのスレのがよさそうですね ありがとうございます
とりあえず <?= ?>の部分が実行できたらそちらに移動したいと思います
いじっくていても変化なしです
0230nobodyさん
2008/09/09(火) 01:31:25ID:???とりあえず、その確認画面を、PHPとして実行してないんじゃない。
サーバ設定がどうなっているかわからんけど、とりあえず拡張子を.phpにしたら。
0231214
2008/09/09(火) 01:36:16ID:hWjgO1tE拡張子はphpです
<html>
<head>
<title>PHPテスト</title>
<meta http-equiv="content-type"content="text/html;charset=shift_jis">
</head>
<body>
確認画面
<form name="form1" method="post" action="view.php">
<?php
print "名前";
print $_POST["onamae"];
print "<br><br>";
print "本文";
print nl2br($_POST["honbun"]);
?>
<br>
<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"]?>">
</form>
</body>
</html>
です
0232nobodyさん
2008/09/09(火) 01:49:06ID:???そのソースでPHP実行したら、syntax error出ると思うんだけど。
その確認画面は、何から呼び出してんの?
form.html⇒confirm.php(確認画面)⇒view.php
って流れになってる?
まさかWindowsでPHPファイルをダブルクリックでブラウザで開くとかはやってないと思うけど、
さっきいってた現象は、HTMLを直たたきしているようにしか見えない。
サーバ環境を教えてよ。
0233nobodyさん
2008/09/09(火) 01:49:17ID:???> <input type="hidden" name="onamae" value="<? =$POST["onamae"]?>">
ほんとにソースをコピペしてるの?
俺、素人だけど、onamaeの$POSTに
アンダーバーあるのと無いのと、意味あるの?
0234214
2008/09/09(火) 01:58:42ID:hWjgO1tEform.html⇒confirm.php(確認画面)⇒view.phpになっています
formのソースをview.phpのところをconfirm.phpに変えたりしましたから
サーバというかapacheでやっております
エラーは出なかったですが 実行してもconfirmのソースを見ると値が代入されてません
>>233さん
$_POSTで値を受け取るみたいです 下のはいじってたときに取れたみたいです
ご指摘感謝します
0235nobodyさん
2008/09/09(火) 02:07:31ID:???ソースをそのままコピペしたほうが良いよ
0236214
2008/09/09(火) 02:08:52ID:hWjgO1tEエラーメッセージは出ないんですが ソースと出る画面をのせます
form.html
<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="confirm.php">
名前:<br>
<input type="text" name="onamae">
<br>
本文:<br>
<textarea name="honbun" cols="30" rows="5"></textarea>
<br>
<input type="submit" value="送信">
<input type="hidden" name="user_id" value="0001">
</form>
</body>
</html>
0237214
2008/09/09(火) 02:09:54ID:hWjgO1tE<html>
<head>
<title>PHPテスト</title>
<meta http-equiv="content-type"content="text/html;charset=shift_jis">
</head>
<body>
確認画面
<form name="form1" method="post" action="view.php">
<?php
print "名前";
print $_POST["onamae"];
print "<br><br>";
print "本文";
print nl2br($_POST["honbun"]);
?>
<br>
<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"]?>">
</form>
</body>
</html>
0238214
2008/09/09(火) 02:14:13ID:hWjgO1tE<html>
<head>
<title>PHPテスト</title>
<meta http-equiv="content-type"content="text/html;charset=shift_jis">
</head>
<body>
<?php
print $_POST["onamae"]."さん どもー";
print "<br><br>";
print "本文:<br>";
print nl2br($_POST["honbun"]);
?>
</body>
</html>
confirm.phpの時点で
確認画面
名前山下 清
本文あいうお
あええあ
確認 "> "> ">
とでます
0239nobodyさん
2008/09/09(火) 02:47:31ID:???<?= を <? = って書いてるからじゃね?(?と=の間にスペース)
普通はParseエラーだが
0240nobodyさん
2008/09/09(火) 02:49:56ID:???ブラウザの「表示」とかにある「ソースを表示」でどう出力されてるか見るべきだな
0241nobodyさん
2008/09/09(火) 02:53:13ID:???0242214
2008/09/09(火) 02:54:42ID:hWjgO1tE>>239さん
>>223さんが言っていたのでやりました 実行しても変化はありませんでした
>>240さん
ソースを表示しても 同じソースが出ます
ただcomfirmに渡されたとき
<html>
<head>
<title>PHPテスト</title>
<meta http-equiv="content-type"content="text/html;charset=shift_jis">
</head>
<body>
確認画面
<form name="form1" method="post" action="view.php">
名前山下 清<br><br>本文あいうお<br />
あええあ<br />
<br>
<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"]?>">
</form>
</body>
</html>
となります
0243nobodyさん
2008/09/09(火) 09:07:59ID:???0245214
2008/09/09(火) 09:43:03ID:hWjgO1tE<input type="hidden" name="used_id" value="<? =$_POST["user_id"]?>">
にPOSTの値が
入らない
>>244さん
サーバの文字コードが違うだけで 上記の部分が変換されないことってあるんでしょうか?
apacheでやってます
0246nobodyさん
2008/09/09(火) 09:46:15ID:???<?php
var_dump($_POST);
?>
<form action="" method="post">
<input type="text" name="name" value="">
<input type="submit" value="send">
</from>
フォームに文字入れて送信したときの実行結果は?
0247nobodyさん
2008/09/09(火) 09:47:06ID:???おそらく>>241で
そんでもって>>239が解る
phpinfo();でshort_open_tag確認してみ
試しにこうしたら動くはず
<input type="submit" value="確認">
<input type="hidden" name="used_id" value="<?php echo $_POST["user_id"]; ?>">
<input type="hidden" name="onamae" value="<?php echo $_POST["onamae"]; ?>">
<input type="hidden" name="honbun" value="<?php echo $_POST["honbun"]; ?>">
0248214
2008/09/09(火) 10:04:04ID:hWjgO1tEよく分かりませんが
それをしたら実行されます
>>247さん
ありがとうございます
そのソースで実行できました
本では私が書いたソースでしたが
そのソースを見て <?php print $_POST… ?>とやったら動いてくれました
みなさん ありがとうございました
本当に感謝してます
今度からは超初心者スレにいきます
ありがとうございました
0249nobodyさん
2008/09/09(火) 10:05:50ID:???がんばってね。
0250nobodyさん
2008/09/09(火) 10:44:31ID:???じゃ
<input type="hidden" name="used_id" value="<? =$_POST["user_id"]?>">
にPOSTの値が入ってるじゃん
0251nobodyさん
2008/09/09(火) 15:59:14ID:???0252nobodyさん
2008/09/09(火) 21:36:28ID:???現在サイトを閲覧中の人数を表示するものがあるんですけど、
あれってどういう原理なんでしょうか?
IP:アクセス日時を記録しておいて、
たとえばアクセス日時から1時間経過していたら記録削除
のようにしてアバウトに算出、でよいんでしょうか?
0253nobodyさん
2008/09/09(火) 22:13:26ID:???0254252
2008/09/09(火) 22:20:18ID:???でもセッションの数を数えてもそれが有効なものとは限らないと思うんですよ
セッションの有効期限が3時間として、訪問者は5しかいなくても3時間有効になりますよね
いま過去スレみたら乗ってたので解決しました
0256252
2008/09/09(火) 22:51:37ID:???なんですかこの人たち?
できるだけラグが無いようにページの中に
ミニチャットを作って何人いるか、挙手させるようにします。
ありがとうござました
0257nobodyさん
2008/09/09(火) 22:56:09ID:vtOW4TkMすみません、id出し忘れました
>>253のやり方ではアバウトな数しかカウントできませんが
過去ログを見る限りでは、ログファイルからカウントすればいいということでした
0258うんこ
2008/09/09(火) 23:10:44ID:ucSg9LPyもしかしたらmySQLの質問スレで聞いた方がいいのかもしれないんですが
俺のPCに色々ファイルが増えてきて、整理する為にbase64でmySQL流し込みました。
デコードしたらちゃんと元通りのファイルになったんですが、
取り出す為には一度file_put関数とかでファイルにしなきゃいけないんですか?
ファイルにせずデコードした文字列でダウンロード画面出せないですよね
結局フォルダがファイルだらけになると
SQLに入れた意味が無くなってしまうし、定期的に消すのもめんどいし、最終的にはネットで公開したいから、ダウンロード中のファイルを消すのもまずいし、
同名ファイルで上書きもできないし。
なんかいい方法あったら教えて下さい
0259nobodyさん
2008/09/09(火) 23:20:19ID:???0260nobodyさん
2008/09/10(水) 00:26:31ID:Tibtc90vマジですか?
まずDBを検索して、ファイル名一覧を出し
リンクでファイルをダウンロードしようと思うのですが
リンク先にファイルが無いと404になっちゃうので
ファイルを作らないといけないのかなぁと。
0261nobodyさん
2008/09/10(水) 00:36:36ID:???ファイルをPOSTしてmove_uploaded_fileで移動させるphpスクリプトを書いています。
約400Mbyteを超えるファイルを送信すると、400Mbyte程度で、サーバ上でHDDへの保存が
止まってしまいます(/tmp以下の一時ファイルのサイズが増えなくなる)。
ただその後も伝送は続いていて、etherealで見る限り、最後まで行われているようです。
何が問題かご存知ないでしょうか?
クライアントはfirefoxやie6でどちらも同じ症状、
サーバはdebianでapache2.2.9-7 php5.2.6-3を使用しています。
phpでは以下の設定をしています。
post_max_size = 3000M
upload_max_filesize = 3000M
0262261
2008/09/10(水) 00:43:24ID:???ケアレスミスでした
お騒がせしました
0263261
2008/09/10(水) 01:00:23ID:kMMWGo2y今さらですが出します
すいませんが引き続き、何かご存知の方よろしくお願いします。
0264261
2008/09/10(水) 01:04:15ID:???質問取り下げます
0265nobodyさん
2008/09/10(水) 01:16:18ID:???次の質問まってる
0266nobodyさん
2008/09/10(水) 01:40:36ID:???0267258
2008/09/10(水) 02:20:38ID:Tibtc90v0268nobodyさん
2008/09/10(水) 02:33:03ID:???0270nobodyさん
2008/09/10(水) 09:09:12ID:???>>258
content-type履いてdecodeしたやつをechoしてみれ
あと強制ダウンロードとかは
php header Content-Disposition
とかで検索すればすぐ出てくる
0272nobodyさん
2008/09/10(水) 09:17:59ID:???0274nobodyさん
2008/09/10(水) 09:43:18ID:???どっちも迷惑だからおとなしくしとけ
■ このスレッドは過去ログ倉庫に格納されています