【PHP】下らねぇ質問はここに書き込みやがれ 27
■ このスレッドは過去ログ倉庫に格納されています
00011様
2006/08/23(水) 00:54:52ID:uM5Jzzy0まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆質問する場合の注意
1. 自分のIDを表示させること。(メール欄に何も記述しないでください)
2. サーバーのOS、WebサーバーとPHPの種類やバージョン等を明記すること。
3. 己の行った操作、変更などを詳しく明記すること。
4. エラーメッセージはそのまま表記すること。「エラーが出ます」では絶対分かりません。
5. 質問者としても態度をわきまえること。
6. 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・質問者は必ずIDを表示させてください。(メール欄に何も記述しないでください。)
・2回目以降は最初に質問した際のレス番号を名前欄に入れてください。
(逆に回答者は質問者に対して>>(アンカー)をつけて答えてください。)
・解決しなくても回答をもらった場合はお礼を言う。
(荒らし、煽りは除く。逆に煽られたときも、無闇に反論せずスルーすべし)
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークはそれぞれの該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
・オブジェクト指向については良スレがないから本を買え。理解できないならムリに使うな。
・速さについては自分でベンチをとってここに書け(違う環境の人も調べてくれるかも)
0322nobodyさん
2006/08/28(月) 10:24:25ID:???世の中こんな人もまだまだいるんだなぁとちょっとほっとした。
私は配列。
0324nobodyさん
2006/08/28(月) 11:19:40ID:???if($Cid==$line[1] or $Cid==$line[2] or $Cid==$line[3] or $Cid==$line[4] or
$Cid==$line[5] or $Cid==$line[6] or $Cid==$line[7] or $Cid==$line[8] or.................
$Cid==$line[100]) {
をなんとか一文ですっきりする方法はないのでしょうか?
例えば
if($Cid==$line[1から100]) {
のような感じです。
0326nobodyさん
2006/08/28(月) 11:38:06ID:???0327nobodyさん
2006/08/28(月) 11:44:09ID:???見た目はすっきりと良くなるよ
0328nobodyさん
2006/08/28(月) 12:13:01ID:???for($i=0 ; $i<100 ; $i++){
if($Cid == $line[$i]){
$flag = "hogehoge";
break;
}
}
つーことね。
in_arrayで考えてたから逆に思いつかなかったw
0329nobodyさん
2006/08/28(月) 12:40:13ID:???0332309
2006/08/28(月) 12:55:31ID:tNKhmn4zID変更になりますが…309です。
仮のテーブルを作って早くなるなら作ろうと思います。
申し込みはフィックスされたら変更されないのですが重みは
何回も抽選するのでそのたびに変更されます。
なので重みを先に計算させるのはむずかしそうです…
なんとか分散する方法を考えてみます。
当選番号から元の申し込みの添字を見つける計算アルゴリズムもいいのが
浮かびそうな気がしてきました
0333204
2006/08/28(月) 13:42:22ID:Uc4lvqbTUrlEncode()したURLをhotmailに送るとメール画面ではきちんと表示されてるのに
クリックするとエンコード部分が文字化けしています。
やっぱり直りません。orz
0335nobodyさん
2006/08/28(月) 13:52:23ID:???たとえばこんなの
$sxml=simplexml_load_string($xmlstr) ;
$ar=get_object_vars($sxml) ;
0336nobodyさん
2006/08/28(月) 14:25:31ID:???JpGraphを利用することで簡単に表示できる
しかし、リアルタイム(例:Tickデータを受け取ったら即表示)が
できるのかは不明
他の方法があるかもしれない
それは俺も教えて君だ
0337nobodyさん
2006/08/28(月) 14:45:10ID:???あれだ、幅1px、高さ1pxのGIFを用意して、実際表示させる時に
高さと幅を指定しなおせば、グラフに見えるんじゃないかな?
0338nobodyさん
2006/08/28(月) 14:57:14ID:???と、思ったが陰陽で色分けて横5pxで真ん中に1px書いたgifなら伸ばすだけでOKか。
高さはCSSで調整すればいけそうだな。
0339nobodyさん
2006/08/28(月) 15:26:56ID:???0341nobodyさん
2006/08/28(月) 15:55:40ID:6Eu/aWep0343nobodyさん
2006/08/28(月) 16:15:37ID:???パターンで絞込みたいだけならpreg_grepでいいんだけど、
それ以外の何かフィルタ的な処理をしたい時に使えないんです
0344nobodyさん
2006/08/28(月) 16:29:31ID:???Perlのgrepってパターンしか使ったこと無かったけど、
grep(評価式, 配列)
の評価式ってパターンマッチ以外でもいいのか?
0349nobodyさん
2006/08/28(月) 19:16:03ID:Fg0vDOCrWindowsだと /(半角スラッシュ),UNIXだと \(逆スラッシュ)
と展開されるような。
0350nobodyさん
2006/08/28(月) 19:48:39ID:???0353nobodyさん
2006/08/28(月) 20:00:19ID:???テストするのが面倒なのでマニュアルの定数のページだけ見て答えるが、
DIRECTORY_SEPARATOR じゃまいか?
0355nobodyさん
2006/08/28(月) 20:03:27ID:B31oQAMbねぇ、in_array って何さ? 意地悪しないでいい加減教えろよっ
0357nobodyさん
2006/08/28(月) 21:58:27ID:???何で>>347に聞いてるのか分からんがコレドゾー
つ【http://jp2.php.net/in_array】
0359nobodyさん
2006/08/29(火) 01:35:18ID:???登録ボタンを押したあとINPUTのTEXTの中の文字列をurlencodeするのってどうやればいいんでしょう?
なんか、POSTで文字列を取ってきたら一部漢字が文字化けしちゃうんです。
0363nobodyさん
2006/08/29(火) 02:04:58ID:???0364359
2006/08/29(火) 02:08:11ID:???<input type="text" name="aaa">
<input type="submit" value="OK">
こうなってる奴のOKを押したあと
再度よみこむ前に変換作業などするにはどうしたらいいのか分からなくて。
0365nobodyさん
2006/08/29(火) 02:46:04ID:???どうせ、お前の言ってる文字化けとかいうのは「表\示」とかそんなレベルだろ。
0366359
2006/08/29(火) 03:02:21ID:???をやるとすでに文字化け(?)してるんですよ。
化けるのは
予→?
予定→予定
無→?
無事→無事
無敵→?遵・BR>
こんな感じです。
表示は表\示には化けませんでした。
というか、たぶんそれ以前の問題で
INPUTのtextの値をどうやっていじって変換するのかが分からない状態でして。
0367nobodyさん
2006/08/29(火) 03:03:24ID:???つくづくバカだなお前も。
PHPの勉強をする前に、質問の仕方を勉強しろ。
俺たちはエスパーじゃないから、お前の心の中を読み取ることは出来ない。
0368nobodyさん
2006/08/29(火) 03:10:39ID:???多分、してないんだろう。
0369nobodyさん
2006/08/29(火) 03:12:56ID:???<META http-equiv="Content-Type" content="text/html; charset=EUC-JP">
これは書いてるんですけど他にも指定が必要です?
0370nobodyさん
2006/08/29(火) 03:16:27ID:???Winな「メモ帳」で
<?php
phpinfo();
?>
を呼ばれるファイル名で保存してサーバにアップ
呼ぶファイルを呼び出してsubmitすると下のほうにPOSTされた
データが表示されるからどうなってるか確認
0372nobodyさん
2006/08/29(火) 03:37:51ID:???php.ini の mbstring.encoding_translation や mbstring.http_input、mbstring.http_ouput あたりの設定かもな。
0373nobodyさん
2006/08/29(火) 03:45:10ID:???phpinfoを見ると
mbstring.encoding_translation on on
mbstring.http_input auto auto
mbstring.http_output EUC-JP EUC-JP
mbstring.internal_encoding EUC-JP EUC-JP
になってました。
0374nobodyさん
2006/08/29(火) 06:25:04ID:N+TQF1f0$l = "2ch\nhtml\nxml\nphp\nperl";
explode("\n",$l);
$fp = fopen(log.txt , w);
while(!feof($fp)){
fputs($fp , $l[$b]);
$b++;
}
fclose($fp);
こんな風にしてみたんですが、実行すると、「致命的なエラー」が発生してしまいます。
fputs($fp,$l[$b]);
の変がおかしいと思うのですが、原因がわかりません。
どなたか教えてください。、
0376nobodyさん
2006/08/29(火) 06:48:28ID:???0377nobodyさん
2006/08/29(火) 06:56:09ID:???このループは読み込む時に使う
foreachをexplodeで出来た配列に使うべし
0378nobodyさん
2006/08/29(火) 06:59:08ID:???$l = "2ch\nhtml\nxml\nphp\nperl";
$fp = fopen('log.txt', 'w');
fputs($fp, $l);
fclose($fp);
でよくね?
0379nobodyさん
2006/08/29(火) 07:11:38ID:???入力文字が短すぎて文字コードの自動判定に失敗している
入力文字コードを変換する必要はまずないので
mbstring.encoding_translation を offにしる
php.iniも.htaccessもいじれないならformの一番最初に判定用のダミーデータを入れる
<input type="hidden" name="autodetect" value="美乳">
0381nobodyさん
2006/08/29(火) 10:22:40ID:N+TQF1f0>>375
え。、、私explode関数すごい変な思い違いしてたかもしれないです。
$lを\nで区切ってくれるような関数だった気が・・・
>>376
やってみたんですが・・・
>>377
そうなんですか
すいません無知で><
>>378
確かにそれで良いのですが、最終的にフォームから送信された名前とコメントを結合して云々候みたいな
ことがしたいので、できればexplode関数使いたいのです。
0382nobodyさん
2006/08/29(火) 10:31:05ID:???explodeは確かに区切る関数だが、区切った結果は戻り値で返る。
× explode("\n", $l); // $lは何も変化しない
○ $l = explode("\n", $l); //$lは改行ごとに分割された配列に変わる
0383nobodyさん
2006/08/29(火) 10:34:57ID:???あとちなみに、「致命的エラー」になるのはwhile()の条件のせいだと思う。
それだと絶対に終了できないので永久ループになる。
0384nobodyさん
2006/08/29(火) 10:37:17ID:N+TQF1f0>>375さん、ありがとうございます><
解決しました^^
ありがとうございます
0386nobodyさん
2006/08/29(火) 11:22:48ID:???たとえば3行分のデータがあるとして、
1.こぶた
2.ろば
3.ちんぱんぢー
ある指定した行を消す場合はどのようにしたらいいのでしょうか?
0387nobodyさん
2006/08/29(火) 11:26:20ID:???0389nobodyさん
2006/08/29(火) 12:07:31ID:???$fp = fopen("log.txt" , "w");
文字列は引用符でくくれ
お前にはerror_reporting(E_ALL);を進める
0390nobodyさん
2006/08/29(火) 12:34:04ID:OWMs78pdなどでインストールした場合、php を make した時の configure オプションってどうやって調べればいいのでしょうか?
とある理由により、PHPをバージョンダウンさせたいのですが、既存のPHPがどのようなconfigureオプションでmakeされたのかがわからないので、どうやって調べたらいいのかなぁ、、、と彷徨っているところです...
0391nobodyさん
2006/08/29(火) 12:38:38ID:K0UosIpnphpinfo();
0393nobodyさん
2006/08/29(火) 13:00:47ID:???0396nobodyさん
2006/08/29(火) 13:34:47ID:???別に使えない命令じゃないのに避けてしまいそうなオレがいる
0397nobodyさん
2006/08/29(火) 14:32:44ID:???<input type="checkbox" name="fC[]" value="hoge"> hoge <br>
<input type="checkbox" name="fC[]" value="foo"> foo <br>
<input type="checkbox" name="fC[]" value="bar"> bar <br>
<input type="submit" value="OK">
</form>
でfc[]を$_POSTで取得したいのですが、
$a = $_POST[fc[]]では取得できませんでした。
どなたかご教授お願いいたします。
0399nobodyさん
2006/08/29(火) 14:49:10ID:???0403nobodyさん
2006/08/29(火) 14:55:17ID:jUXXd5I9extract($_POST)と展開して行いたいと思っていますがセキュリティ的に見て危ない点とかありますでしょうか??
0404397
2006/08/29(火) 14:56:33ID:???0405397
2006/08/29(火) 14:57:31ID:???0407397
2006/08/29(火) 15:16:06ID:???<form action="hoge.php">
<input type="checkbox" name="fC[]" value="0"> hoge <br>
<input type="checkbox" name="fC[]" value="1"> foo <br>
<input type="checkbox" name="fC[]" value="2"> bar <br>
<input type="checkbox" name="fC[]" value="2"> bar <br>
<input type="submit" value="OK">
</form>
<?php
if (isset($_POST['fC[]'])) {
$array = file(hoge.txt);
$del = $_POST["new_data[]"];
array_splice($del_array,$del]);
}
?>
チェックしたところのデータを配列から消したいのですが、これだとうまくいきませんでした。
不適切な箇所ございましたらご指摘お願いいたします。
0409nobodyさん
2006/08/29(火) 15:39:15ID:???0410nobodyさん
2006/08/29(火) 15:41:41ID:???鏤?
な感じの文字化けが出てくることがあるんだけど、どんなときに出るかわかる人います?
途中でUTF8で書いてるphpを呼んでるから出るのかな?
0414397
2006/08/29(火) 16:13:38ID:???修正してみました。
<form action="hoge.php">
<input type="checkbox" name="fC[]" value="0"> hoge <br>
<input type="checkbox" name="fC[]" value="1"> foo <br>
<input type="checkbox" name="fC[]" value="2"> bar <br>
<input type="checkbox" name="fC[]" value="2"> bar <br>
<input type="submit" value="OK">
</form>
<?php
if (isset($_POST['fC'])) {
$array = file(hoge.txt);
$del = $_POST["new_data"];
array_splice($del_array,$del]);
}
?>
array_spliceの使い方ま間違えているのでしょうか?原因がわかりません。
ご教授おねがいいたします。何度も長文すみません。
0415nobodyさん
2006/08/29(火) 16:21:48ID:???$_POST['fC'] を isset() 以外で使って無いじゃないか。
$_POST['new_data'], $del_array がどこから来てるかも分からないし。
原因どころか、何がしたいか分からない。
何でもここで訊く前に、しばらく自分で考えた方がいいぞ。
0416nobodyさん
2006/08/29(火) 16:39:49ID:???if($_POST['fC'][$i] === "") { unset($_POST['fC'][$i]); }
}
0417nobodyさん
2006/08/29(火) 16:44:05ID:???if($_POST['fC'][1] !== 1) { unset($_POST['fC'][1]); }
if($_POST['fC'][2] !== 2) { unset($_POST['fC'][2]); }
if($_POST['fC'][3] !== 2) { unset($_POST['fC'][3]); }
print_r($_POST['fC']);
0421397
2006/08/29(火) 17:56:30ID:???やりたいことは、WEBメールにあるような、
チェックボックスにチェックを入れてsubmitボタン押すと
チェックされたデータを削除する動作を行いたいです。
データはテキストファイルに一行ずつ格納してあります。
何度も申し訳ございません、ご教授願います。
■ このスレッドは過去ログ倉庫に格納されています