2ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

【PHP】くだらねぇ質問はここに書き込みやがれpart2

1 :nobodyさん:05/01/09 06:01:24 ID:tJkdKk+e

お前の下らない質問に回答があるかも知れないスレッドです。


2 :nobodyさん:05/01/09 06:02:05 ID:???
過去のスレ

【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/

3 :nobodyさん:05/01/09 06:07:02 ID:???
マニュアル読め

4 :nobodyさん:05/01/09 06:10:42 ID:yJi8rWX7
過去ログを漁ってみるがいい

5 :nobodyさん:05/01/09 06:13:01 ID:???
>>6 質問の仕方
>>7 SFAQ

6 :nobodyさん:05/01/09 08:14:08 ID:2fyg0lN1
フリーCGIでフリー鯖に使える携帯用うpロダない?
メール投稿とか出来たらよいかも
よろしくおにいちゃん!

7 :nobodyさん:05/01/09 09:04:50 ID:???
CGI探しは板違い。web製作板の該当スレへ行け

8 :nobodyさん:05/01/09 09:36:09 ID:O+gxswgn
配列を使った循環参照がうまく行きません!
──────────────────
<?php
class mother{
  var $childs = array();
}
class child{
  var $age;
  var $mother;
  function child($age, &$mother){
    $this->age = $age;
    $this->mother =& $mother;
    $this->mother->childs[] =& $this;
  }
}
$mother = new mother();
$x = new child(15, &$mother);
$y = new child(10, &$mother);
$x->age ++;
$y->age ++;
print_r($mother);
?>
──────────────────
これで、motherの中のchildのageがそれぞれ16と11になってほしいのですが
実際は15と10のままです。何か良い方法はありますか?

9 :nobodyさん:05/01/09 10:03:48 ID:???
$x =& new child(15, $mother);
$y =& new child(10, $mother);

10 :nobodyさん:05/01/09 10:35:19 ID:9fxwJrgA
$abcが "abc数字3文字"の時はエラー出したいんだが、
これは正規表現使って出来ますでしょうか?
正規表現複雑すぎてさっぱりなので、
誰か分かる人構文を書いていただけたら感謝感激なんですが。

例えば、
if(abc数字3文字の形かどうか){exit();}
という風にしたいのです。

abc数字3文字とは例えば、
abc123やabc555などをさします。

11 :nobodyさん:05/01/09 12:04:30 ID:???
Smarty使えるレンタルサーバーってありませんか?


12 :nobodyさん:05/01/09 16:39:44 ID:???
>>11
自分で勝手に入れろ

13 :nobodyさん:05/01/09 17:07:07 ID:???
>>10
([a-zA-Z])+([0-9]){3,3}$

14 :nobodyさん:05/01/09 17:09:16 ID:F+PYukjE
>>13
m9(^Д^)プギャーーーッ

15 :nobodyさん:05/01/09 17:40:07 ID:???
>>10
/^abc\d\d\d$/


16 :nobodyさん:05/01/09 18:09:14 ID:F+PYukjE
>>15
m9(^Д^)プギャッ

17 :nobodyさん:05/01/09 22:01:45 ID:???
日付をYmdHis形式(20050101000000)の文字列として保存しています。

この文字列と現在のシステム日付の差分を計算し、
1時間以上経っていたら処理を行うようにしたいのですが、
YmdHis形式の日付文字列をdate型に変換できなくて困っています。

strtotimeとかでも上手くいかなかったのですが、何かいい方法は無いでしょうか?

18 :nobodyさん:05/01/09 22:02:35 ID:hHfQCbQy
二次元配列に値をfor文で代入したいのですけどうまくいきません。
Cのように
int x[10][10] ;
int count=0 ;
for(int i=0 ; i<10 ; i++){
 for(int j=0 ; j<10 ; j++){
  count++;
 x[i][j] = count;
 }
}
とこのようなものをPHPで行いたいのですがどようにすればよいのですか?

19 :nobodyさん:05/01/09 22:19:01 ID:???
>>18
そのままのロジックだと何か問題が?

$count = 0;
for($i=0; $i<10; $i++) {
for($j=0; $j<10; $j++) {
$count++;
$x[$i][$j] = $count;
}
}

てか、Cって for(int i=0 とかできるんだっけか?

20 :nobodyさん:05/01/09 22:56:26 ID:???
>>17
list($year,$month,,,) = scanf($YmdHis,'%4d%2d,,,,');

とかできたはず
あとは単純にsubstr()を使うとか、どうとでもなるでしょ。

21 :nobodyさん:05/01/09 22:56:32 ID:???
質問させてください。初心者です。
ttp://syokunin.no-ip.org/sample/cart/view.php

ここのショッピングカートを少しいじって使用するつもりです。
オプションの項目をちゃんと改行して表示したいのですが、
view.phpの中身のどのあたりをどうすればいいのかがよく分かりません。
ここかな?ってところに<br> タグをいれてみたけどうまくいきません。
例えば3段目の商品だと、
_________
生産国(日本)太さ
(10mm)

となっているのを
_________
生産国(日本)
太さ(10mm)

という感じにしたいのです。

ご教授ねがいます。


22 :nobodyさん:05/01/09 22:57:01 ID:F+PYukjE
$str = '20050101000000';
$time = strtotime(preg_replace('/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})/', '$1-\2-\3 $4:$5:\6', $str));

23 :nobodyさん:05/01/09 22:58:53 ID:???
質問させてください。初心者です。
ttp://syokunin.no-ip.org/sample/cart/view.php

ここのショッピングカートを少しいじって使用するつもりです。
オプションの項目をちゃんと改行して表示したいのですが、
view.phpの中身のどのあたりをどうすればいいのかがよく分かりません。
ここかな?ってところに<br> タグをいれてみたけどうまくいきません。
例えば3段目の商品だと、
_________
生産国(日本)太さ
(10mm)

となっているのを
_________
生産国(日本)
太さ(10mm)

という感じにしたいのです。

ご教授ねがいます。


24 :17:05/01/09 23:27:35 ID:???
>>20,22
ありがとうございました。
やっぱり文字列操作をしないとダメみたいですね。試してみます。

25 :17:05/01/09 23:41:43 ID:???
>>20,22
ありがとうございました。
やっぱり文字列操作をしないとダメみたいですね。試してみます。

26 :nobodyさん:05/01/09 23:47:21 ID:???
>>19
C99仕様のコンパイラじゃないと無理と思われ

>>21,23
Selectタグ吐いてるとこにBrを追加するだけ
ありえないけど、もしそれすら出来ないなら丸投げ改造スレに移動

27 :nobodyさん:05/01/09 23:53:05 ID:???
>>19
C99仕様のコンパイラじゃないと無理と思われ

>>21,23
Selectタグ吐いてるとこにBrを追加するだけ
ありえないけど、もしそれすら出来ないなら丸投げ改造スレに移動

28 :nobodyさん:05/01/09 23:54:47 ID:???
>>19
C99仕様のコンパイラじゃないと無理と思われ

>>21,23
Selectタグ吐いてるとこにBrを追加するだけ
ありえないけど、もしそれすら出来ないなら丸投げ改造スレに移動

29 :nobodyさん:05/01/09 23:56:48 ID:???
>>19
C99仕様のコンパイラじゃないと無理と思われ

>>21,23
Selectタグ吐いてるとこにBrを追加するだけ
ありえないけど、もしそれすら出来ないなら丸投げ改造スレに移動

30 :nobodyさん:05/01/09 23:57:43 ID:???
>>19
C99仕様のコンパイラじゃないと無理と思われ

>>21,23
Selectタグ吐いてるとこにBrを追加するだけ
ありえないけど、もしそれすら出来ないなら丸投げ改造スレに移動

31 :23:05/01/10 00:14:21 ID:???
>>26
おお、できました!
ありがとうございました!場所をまちがってたみたいです。

32 :nobodyさん:05/01/10 00:14:43 ID:???
連投できるのか?

33 :nobodyさん:05/01/10 00:17:11 ID:???
連投できるのか?

34 :nobodyさん:05/01/10 00:18:00 ID:???
連投できるのか?

35 :nobodyさん:05/01/10 00:19:20 ID:???
連投できるのか?

36 :23:05/01/10 00:22:20 ID:???
>>30
おお、できました!!
ありがとうございます!ふう、これで進める・・・

なんだか板調子悪いすね

37 :nobodyさん:05/01/10 00:22:52 ID:???
>>21>>23 >>24>>25
処理までにちょっと時間がかかるからもちでもついて待て。

>>26-30
オマイはぜってーわざとだろ。削除されろ。

38 :nobodyさん:05/01/10 00:30:37 ID:???
今日はbbs.cgiの様子がおかしいから、
書き込みエラーが出たりタイムアウトしてても
実は書き込めてるらしい。

しかも、書き込みが反映されるまでに10分以上かかるというすばらしい仕様だ(w

39 :nobodyさん:05/01/10 01:57:18 ID:???
質問させてください。掲示板で検索結果を表示する際、検索文字をPOSTで
送信して検索結果をGETの結果(result.php?k=XXX)で表示したいのですが
なにか方法はありますか?

40 :nobodyさん:05/01/10 01:57:45 ID:???
>>39
リダイレクトでもすれば?

41 :39:05/01/10 02:21:44 ID:???
>>40
すいません。リダイレクトってどのようにすればいいんですか?
ググってみましたけどrequire使うんですか?


42 :39:05/01/10 02:31:38 ID:???
すいません。header("location:");で飛ばすんですね。解決しました。
ありがとうございます。

43 :nobodyさん:05/01/10 03:06:48 ID:???
宣言して無いメンバ変数を作るのは不味いかな?
例えば、
class hoge{
function make($name, $value) {
$this->$name = $value;
}
}

44 :nobodyさん:05/01/10 04:17:00 ID:FH4yAxR1
HTML部分
<FORM ACTION="xxx.php" METHOD="POST" name="MainForm">
<SELECT NAME="q01">
<OPTION value="0">---お選びください---</OPTION>
<OPTION value="1type">1タイプ</OPTION>
<OPTION value="2type">2タイプ</OPTION>
<OPTION value="3type">3タイプ</OPTION>
</SELECT><br>
<INPUT TYPE="TEXT" NAME="q02" SIZE="30"><br>
<INPUT TYPE="TEXT" NAME="q03" SIZE="90"><br>
<INPUT TYPE="SUBMIT" NAME="Submit" VALUE="実行">
</FORM>

上のようにHTMLを記述し、下のプログラムからそれぞれq1,q2,q3の値を取り込
むプログラムを作ったつもりですが、実行してもq1の値だけ空で値を選択した値を
取り込みません。(q2,q3は正常に取り込んでくれます)
どのようにしたらq1の値も正常に読み込むようになりますか?

$q01 = $_POST["q01"];
$q02 = $_POST["q02"];
$q03 = $_POST["q03"];

45 :nobodyさん:05/01/10 06:20:30 ID:???
>>43
そういうキャラクターのオブジェクトならOK。そうでないならNG。
ちなみに、生成済みのプロパティにアクセスしないためには__set()を

46 :nobodyさん:05/01/10 06:27:53 ID:???
>>44
コードは間違ってないように見える。
var_dump($_POST['q01']);とやって変数の中身を確認してみたら。

47 :nobodyさん:05/01/10 06:45:40 ID:???
44の言う通り「空」なら string(0) "" のはずだがどうだろうね

48 :18:05/01/10 10:39:49 ID:???
遅レスすいません。
なんとか自己解決しました。
echoを使って生成された配列の中身を確かめていたので勘違いしていました。
printを使ったら期待通りの値を得ることができました。

49 :nobodyさん:05/01/10 11:43:04 ID:???
無茶言うな

50 :nobodyさん:05/01/10 12:29:13 ID:???
>>45
ありがとう。__set()って使ったことなかったけど、こういう事もできたんだな…。
色々とありがたいヒントも得ました。2つぐらいしか思いつかなかったパターンが倍に増えたかんじ。

51 :nobodyさん:05/01/10 15:04:58 ID:V+OrI4PO
JpGraph-1.16の日本語化ができず困っています。インストール後にグラフを表示
できる事を確認し、日本語が化ける問題に対処しようとgoogleで調べました。
まず、fonts用のディレクトリを作成し、そこにsazanami-gothic.ttfなどのフォント
を入れて、jpgraph.phpで
DEFINE('TTF_DIR','/usr/local/lib/php/jpgraph-1.16/japanese_fonts/');
このように参照できるようにしました。
次に
// Japanese font
DEFINE("FF_JPN_START", 40);
DEFINE("FF_JPN_END", 50);
DEFINE("FF_GOTHIC", 40);
DEFINE("FF_MICHO", 50);
DEFINE("FF_JPN_DEFAULT", FF_GOTHIC);
DEFINE("TF_JPN_DEFAULT", "sazanami-gothic.ttf");
を追加しました。


52 :nobodyさん:05/01/10 15:06:34 ID:V+OrI4PO
次に
function TTF() {
$this->style_names=array(FS_NORMAL=>'normal',FS_BOLD=>'bold',
FS_ITALIC=>'italic',FS_BOLDITALIC=>'bolditalic');
// File names for available fonts
$this->font_files=array(
FF_COURIER => array(FS_NORMAL=>'sazanami-gothic.ttf', FS_BOLD=>'sazanami-gothic.ttf',
FS_ITALIC=>'sazanami-gothic.ttf', FS_BOLDITALIC=>'sazanami-gothic.ttf' ),
FF_GEORGIA => array(FS_NORMAL=>'sazanami-gothic.ttf', FS_BOLD=>'sazanami-gothic.ttf',
FS_ITALIC=>'sazanami-gothic.ttf', FS_BOLDITALIC=>'' ),
FF_TREBUCHE =>array(FS_NORMAL=>'sazanami-gothic.ttf', FS_BOLD=>'sazanami-gothic.ttf',
FS_ITALIC=>'sazanami-gothic.ttf', FS_BOLDITALIC=>'sazanami-gothic.ttf' ),
FF_VERDANA => array(FS_NORMAL=>'sazanami-gothic.ttf', FS_BOLD=>'sazanami-gothic.ttf',
FS_ITALIC=>'sazanami-gothic.ttf', FS_BOLDITALIC=>'' ),
FF_TIMES => array(FS_NORMAL=>'sazanami-gothic.ttf', FS_BOLD=>'sazanami-gothic.ttf',
FS_ITALIC=>'sazanami-gothic.ttf', FS_BOLDITALIC=>'sazanami-gothic.ttf' ),
FF_COMIC => array(FS_NORMAL=>'sazanami-gothic.ttf', FS_BOLD=>'sazanami-gothic.ttf',
FS_ITALIC=>'', FS_BOLDITALIC=>'' ),
FF_ARIAL => array(FS_NORMAL=>'sazanami-gothic.ttf', FS_BOLD=>'sazanami-gothic.ttf',
FS_ITALIC=>'sazanami-gothic.ttf', FS_BOLDITALIC=>'sazanami-gothic.ttf' ),
FF_GOTHIC => array(FS_NORMAL=>'sazanami-gothic.ttf',FS_BOLD=>'sazanami-gothic.ttf',
FS_ITALIC=>'sazanami-gothic.ttf', FS_BOLDITALIC=>'sazanami-gothic.ttf'),
);
このように修正しました。グラフを描画させてみたのですが、インストール直後と同じで日本語が
化けてしまっています。どなたかアドバイスをいただけませんでしょうか。

53 :nobodyさん:05/01/10 15:17:21 ID:iCuvDIZ1
http://www18.big.or.jp/~toshi/cgi-bin/board10/yybbs.cgi
みんなあらそうぜ!

54 :nobodyさん:05/01/10 18:22:36 ID:2LPzHX5s
セキュ板にそれらしいスレがなかったので、ここで聞いてみます。
SSLの有効範囲がよくわからないのですが、
例えば、AサイトのSSLフォームでID/PASSを入力し、
SSL無しBサイトのPHP+MySQLと照合する、といった場合、
暗号化されてない状態で盗み見されてしまう可能性があるのでしょうか?

図では
A ----------------> B
という状況になると思うのですが、
この-----の部分もAでSSLを使用するだけで暗号化されるのでしょうか?
イマイチ理解できないのです

55 :nobodyさん:05/01/10 19:00:53 ID:MMRXO/4k
文字列
$a =
"あいうえお
かきくけこ
さしすせそ
たちつてと";

変数$aの各行にアクセスしたいのですが、
どうすればいいでしょうか?

56 :nobodyさん:05/01/10 19:09:18 ID:???
>>55
$lines = explode("\n", $a)

57 :nobodyさん:05/01/10 19:09:20 ID:???
>>55
改行をデリミタとしてexplodeで分割する。

58 :nobodyさん:05/01/10 19:12:48 ID:MMRXO/4k
OK牧場でした。
>>56さん,>>55さんどうもありがとうございました。

59 :nobodyさん:05/01/10 19:17:08 ID:???
$sql = "SELECT COUNT(*) FROM b_table "
."WHERE subject LIKE '%".$search."%'"
." OR message LIKE '%".$search."%'";
$count_result = mysql_query($sql, $object);
$row = mysql_num_rows($count_result);
print($row);
でヒットした数が出ると思うのですがなぜか全部「1」になってしまいます。
なぜでしょうか?アドバイスお願いします。

60 :nobodyさん:05/01/10 19:23:46 ID:???
>>59
mysql_num_rowsはSELECTで取得できる件数を返す。
つまり、COUNT(*) とやっている以上は必ず「1」になる。

61 :60:05/01/10 19:26:28 ID:???
書き方が分かりにくかった。
件数っていうのはCOUNT(*)の値じゃなくてレコード数のこと。
SELECT COUNT(*) だと COUNTの結果が1レコードだけ返るから
mysql_num_rowsは常に「1」。

62 :nobodyさん:05/01/10 19:28:22 ID:???
>>60
ありがとうございます。
trueが帰ってきてたんですね。
SELECT COUNT(*)をSELECT * に変えたところちゃんと表示できました。

63 :nobodyさん:05/01/10 19:29:06 ID:???
あ、trueではないんですね(;・∀・)

64 :nobodyさん:05/01/10 19:48:51 ID:???
>>62
てか、SELECT * にしてmysql_num_rowsを使うよりは
素直にSELECT COUNT(*) の値を取得したほうがいいんじゃないか?

65 :nobodyさん:05/01/10 19:53:42 ID:???
>>64
素直にといいますと?

66 :nobodyさん:05/01/10 19:54:35 ID:nGVUH1Bq
文字列中で$ってどう使えばいいっすか?
echo '$test';
ってして
$test
って表示させたいのに実際はブランクになっちまうっすよ。
どうか夜露死苦

67 :nobodyさん:05/01/10 19:54:52 ID:MMRXO/4k
フォームでポストして
var_dump($_POST);
したら、カタカナの'ソ'の文字の後ろに
¥マークなどが付加されました。
ページのエンコーディングはshift-JISです。
PHPはmbstring.internal_encodingEUC-JPです。
なぜでしょうか?

68 :nobodyさん:05/01/10 19:58:26 ID:MMRXO/4k
>>66
\$test

69 :nobodyさん:05/01/10 20:00:24 ID:nGVUH1Bq
>>68
できたっすよ。
あんたすげーよ!!
アリガトさん

70 :nobodyさん:05/01/10 20:04:04 ID:???
>>65
COUNT(*) ってのはヒット数を取得するための関数なんだから、
わざわざROWSを取得しなくてもCOUNT値を取得するほうが
本来の意味としては正しいんじゃないの?ってこと。

71 :nobodyさん:05/01/10 20:04:18 ID:MMRXO/4k
>>69
おいおい
echo '$test';ホントこれか?
echo "\$test";これじゃないのか?

72 :nobodyさん:05/01/10 20:08:08 ID:nGVUH1Bq
>>71
おいおい、あんまこまけーこと気にしてっとはげるぞ
ここに書くときちょっと書き間違えてるだけじゃねーか
じゃあな、ベイビーちゃん

73 :nobodyさん:05/01/10 20:11:41 ID:???
香ばしいな(w

74 :nobodyさん:05/01/10 20:13:24 ID:???
>>70
いえ、それのやり方を聞いてるのです。
$result = mysql_query("SELECT COUNT(*)〜);
で$resultにint型として数値が入るならいいですけどそうじゃないですし。

75 :nobodyさん:05/01/10 20:22:06 ID:???
>>74
例えば SELECT subject FROM b_table とかやって
subject の値を取得したい場合はどうするよ?

取得する対象が subject か COUNT(*) かの違いだけで、やり方は一緒。
そのやり方すら分からないなら、素直にマニュアル読んでらっしゃい。

76 :nobodyさん:05/01/10 20:29:15 ID:???
>>75
やり方一緒?
それじゃあ>>59の質問はでてこないだろう。

77 :nobodyさん:05/01/10 20:30:50 ID:???
結局行数は同じなんだからどっちでもいーじゃん。

78 :75:05/01/10 20:34:00 ID:???
>>77 まぁね。

79 :nobodyさん:05/01/10 20:37:37 ID:???
漏れはCOUNT(*)は見た目的にキライだな。
だから普段はselect * formだ。
でもヒット数用の関数といわれると使わないとかなとか思ってしまった。

80 :nobodyさん:05/01/10 20:38:07 ID:???
○from
×form
;y=ー(゚д゚)・∵. ターン

81 :nobodyさん:05/01/10 20:42:17 ID:???
どうでも良いけど(*)アナルっぽいね

82 :nobodyさん:05/01/10 20:44:17 ID:???
レンタルで借りている鯖がPHP4とPHP5を両方積んでいるらしく
PHP5は.php5という拡張子じゃないと動かないらしいんですが
.phpという拡張子で動くように設定できないでしょうか?
今の設定では.phpでPHP4が動くようです。

83 :59:05/01/10 20:47:39 ID:???
COUNT(*)を使う方法と言うのは
mysql_fetch_rowsを使うのですか?
それとも他に何か綺麗な方法があるのでしょうか。

84 :nobodyさん:05/01/10 20:50:31 ID:???
>>82
PHP5入れてる鯖ってどこ?

85 :nobodyさん:05/01/10 20:55:04 ID:???
>>83
mysql_fetch_rowsでも構わないし、
カウント値しか取得しないならmysql_resultでもいいと思う。

86 :nobodyさん:05/01/10 21:02:22 ID:???
mysql_result($result, 0, "COUNT(*)");

87 :nobodyさん:05/01/11 00:22:14 ID:???
2ちゃんねるのまとめサイトをやっているのですが、
文書数が1500を少し超えてしまいました。
php使えばと言われたのですが、何をどうやっていいか全然わかりません。
参考にするべき書籍やサイトがあれば教えてください。

88 :nobodyさん:05/01/11 00:45:40 ID:???
>>54
クライアント(ブラウザ)から鯖AまでがSSL。鯖Aと鯖Bの通信経路は別。

89 :nobodyさん:05/01/11 00:46:51 ID:???
>>87
何をどうしたいのか分からん。

90 :nobodyさん:05/01/11 00:54:00 ID:???
>>87
>>89に禿胴

91 :nobodyさん:05/01/11 01:14:12 ID:kHqHs+F6
処理する内容が多すぎて300秒のブラウザタイムアウトを食らってしまいます。
どのように解消すればよいですか?

92 :nobodyさん:05/01/11 01:23:59 ID:???
>>89-90
すいません。自分でもよくわかりません。
というかなんでPHPを使えといわれたのかもよくわかりません。

とりあえず今サイト内検索にmserchというCGIを使っていて、
一昨日lime-wというページランキングのCGIを置いたところ
ものすごく重くなったので、コンピュータ関係の仕事をしている親戚に電話すると
PHPのことを言われました。が、忙しいので相談に乗る時間がないとのことで
ここに書き込んでみましたが、PHPで何がどうなるのかもそもそもわかりません。

93 :nobodyさん:05/01/11 01:53:11 ID:???
>>92
2chのまとめサイトなんだろ?
ならURI晒せ。
暇なヤツが見てくれるだろ。

94 :nobodyさん:05/01/11 01:55:38 ID:???
>>93
LimeCounter+Wのことでいいのか?
たぶん集計じゃなくてカウントが重いんだと思うが、アクセスがあるたびにログファイルをリライトしてるから、
ここがボトルネックのように見える。一アクセスの度に、千数百件のログデータを精査してまるごと更新する
のはページ数アクセス数が多いサイトでは無理がある。
しかし1500行程度でものすごく重くなることはないはずだけどなあ。

PHPで書き直してもプロセス立ち上げるロスが軽減される程度なんで、本質的な解決にはならんと思う。
例えばアクセス過多でログの更新が重くなってるなら、カウントとログ更新のロジックを変えてみるしか。
ページごとにログファイルを分ければ集計は遅くなるけど、アクセスの度に千数百件のデータを精査して
更新する負荷は軽くなる、とか。

95 :nobodyさん:05/01/11 02:53:54 ID:???
>>93
晒してみます。
ttp://n2ch.lazy8.info/moe/

>>94
そのcgiです。1500というのはhtml文書の数ですが、それくらいでは重くならないと
いうことでしょうか。ちなみに今は削除しました。
今はhttp://lily.boo.jp/php/tool.php?id=pv-ranking を使ってみようか思っているのですが、
結局imgタグでのカウント、アクセスログの精査とやることは同じようなので、
ロジックを変えないと結局同じということになりそうな気がしてきました。
ただ、そのロジックの変え方というのがちょっとよくわからないです。

96 :nobodyさん:05/01/11 02:56:33 ID:???
書き忘れましたが、LimeCounter+Wは数時間毎にログがリセットされてしまうので削除しました。

97 :nobodyさん:05/01/11 04:28:46 ID:???
>>95
そっちのはページごとにログファイルを作ってるし、カウントアップ時にページリストを
読み込むこともないから、ずっとまともだと思われ。(Lime counterは毎回全リスト全ログを読み書きするというトンデモ仕様のようだ)

それでもログが壊れるなら、なんか別の原因だろうね。

98 :nobodyさん:05/01/11 04:32:58 ID:???
>>95
何をどうしたいのか、箇条書きでいいからまとめてくれ。

一応、漏れが理解できたのは、

現在1500ほどhtml文書がある。
それぞれのファイルに対するアクセス数のランキングを
知りたかったのでLimeCounter+Wを入れてみたが使い物にならなかった。
知り合いに尋ねたところ「PHP使え」と言われたが、どうしたらいいかさっぱりわからん。

と言うところまで。

#DB使ってみるとかになるのかな。

99 :nobodyさん:05/01/11 04:34:20 ID:???
>>97
ページの数だけログファイルがあるとなると、集計結果を表示するときのファイルIOがすごそうだけどな
ランキングが頻繁に参照されるなら集計データをキャッシュするようにしたほうがいいだろう
作者じゃないので口だけだが

100 :nobodyさん:05/01/11 08:11:19 ID:???
>>54
セキュ板行け、この板はセキュリティとは名ばかりですよ

101 :100:05/01/11 08:12:31 ID:???
>>この板は

この板のやつは

102 :nobodyさん:05/01/11 09:46:04 ID:???
>>97
ありがとうございます。
とりあえず新しいほうを試してみます。

>>98
ありがとうございます。整理してい頂いた
>それぞれのファイルに対するアクセス数のランキングを知りたかった
というのがやりたかったことです。
ただ、これと「PHPを使え」という指示がどうリンクするのかわからないです。

103 :nobodyさん:05/01/11 09:56:56 ID:???
☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
★                                               ★
☆ 質問者が返信する際は、名前欄に「最初に質問したレス番号」を入れろ  ☆
★                                               ★
☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆


104 :nobodyさん:05/01/11 10:43:39 ID:???
1000を越えるログファイルがあるなら>>99の言うように集計のファイルI/Oが馬鹿にならないよ。
なさそうな気もするけどDB使ってるのを探したほうがいい。
あるいはHTMLファイルをグループごとにわけて、一ランキングリストあたりの登録ページを減らすとか、、、

105 :nobodyさん:05/01/11 10:49:14 ID:???
>>99>>104
ランキング一覧は手動で更新してるみたいだから大丈夫じゃね?
リクエストの度に大量のログを読むわけじゃないなら鯖管もおおめにみてくれるかもよ

106 :87:05/01/11 10:52:11 ID:???
>>103
すいません。
>>92 >>95-96 >>102が自分です。


107 :nobodyさん:05/01/11 10:59:28 ID:???
>>105
ならXreaのアクセス解析を流用すればいいのでわないだろうか、、、

108 :nobodyさん:05/01/11 11:00:20 ID:???
>>102
Apacheのログを解析した方が早いとおもわれ。

109 :nobodyさん:05/01/11 12:30:43 ID:J22T2QN3
perlの @pairs = split(/;/,$hoge);
phpでどう書けばいいですか?


110 :nobodyさん:05/01/11 12:39:04 ID:???
$pairs = explode( ';', $hoge );


111 :109:05/01/11 12:46:01 ID:???
>110 (n‘∀‘)ηうおぉぉぉお即レス多謝!!

112 :nobodyさん:05/01/11 16:12:17 ID:/YomWmAv
mySQL+PHPで掲示板を作成してます。
「\」を投稿するとエラーになってしまいます。
原因はエスケープしてないため、とは思うのですが
現在使っている参考書には「\」を「\\」に変換するなどの記述はありません。
これはどのような原因が考えられるでしょうか?
よろしくお願いします。

113 :nobodyさん:05/01/11 16:38:10 ID:???
>>112
文字コード
magic_quote

114 :112:05/01/11 17:24:28 ID:???
>>113
当然magic_quoteは同じ設定です。(試したのはoff)

115 :nobodyさん:05/01/11 17:31:09 ID:???
>>112
mysql_escape_string()

116 :nobodyさん:05/01/11 17:32:23 ID:???
PHPの勉強をしています。
Smartyのインストール方法がよくわからなくて。
PHPは自宅のFedoraCore3サーバーにyumコマンドでインストールしました。
なので、個別にSmartyをダウンロードして展開・設定を行う、などの
手順が難しいです。
ご教授願えないでしょうか?

ちなみにPHP4の環境です。PHP5にしたいのですが、そうすると、
xoopsが動かなくなってしまいます。
PHP5環境には、下記サイトを参考に一度してみました。
http://www.sera.desuyo.net/php5/

117 :112:05/01/11 17:42:16 ID:???
>>115
いえ、エスケープの仕方はわかってるのですが、
なぜ参考書のサンプルではエラーにならないのかと思って質問しました。
ソースを見なければわからないとは思うのですが、
「\」をエスケープした記述はなくて不思議に思ってます

118 :nobodyさん:05/01/11 18:04:27 ID:???
横レス失礼します。
mysql_escape_string()をやればmysqlのエラーになるような文字は全部エスケープできるのですか?
それと掲示板に表示する際問題なく表示するためには
mysql_escape_string,nl2br,strip_tagsを使えば大丈夫でしょうか。

119 :nobodyさん:05/01/11 18:26:03 ID:hD8Gr+rz
問題なく動作すると思われます。
ただしmysql_escape_string()においてperlからphpsへの変更により
FedoraCore3をSmartyをダウンロードして展開・設定するには
天ぷらを$pairs = explode( ';', $hogeへ変換し関連させなければ
mysql_escape_string,nl2br,strip_tagsを使うことはできません

120 :nobodyさん:05/01/11 19:02:17 ID:???
ほんとくだらない質問なんですが、XHTMLを組む場合、PHPの挿入も<? 〜 ?>と略さず
<?php 〜 ?>と書くように、という記事を見つけました。

でも実際XHTML部分の解釈はブラウザ側、PHP部分の解釈はサーバ側なんだから
XHTMLなんかにとやかく言われる筋合いはない!と思うのですがどうですか。

121 :nobodyさん:05/01/11 19:08:25 ID:???
>>120
キモイ

122 :アップロードについて:05/01/11 20:01:43 ID:/7ZGSc21
すみません。PHPの、ファイルのアップロードの仕方について教えて下さい。
環境はPHP4.3.8+Apache1.3.31+WindowsXP なのですが、下記のように書いた
datetime.phpの「送信」ボタンを押しても、「$upfile_name」や「$upfile_size」
が表示されず、何もアップロード出来ません。、「$upfile_name」や「$upfile_size」
を表示させるにはどうすれば良いのでしょうか。どなたか教えて下さい。お願
い致します。

<form method="POST" enctype="multipart/form-data" action="datetime.php">
<input type="hidden" name="MAX_FILE_SIZE" value="10000">
ファイル名を入力して下さい
<input size="30" type="file" name="upfile"><br
<input type="submit" name="submited" value="送信">
</form>
<?php
$MAX_FILE_SIZE=$_POST['MAX_FILE_SIZE'];
$upfile=$_POST['upfile'];
$submited =$_POST['submited'];
if($submited !="")
{
//ファイルの情報を表示する
print("ファイル名:$upfile_name<br>\n");
print("ファイルサイズ:$upfile_size<br>\n");
print("ファイルタイプ:$upfile_type<br>\n");
}
?>

123 :nobodyさん:05/01/11 20:06:44 ID:???
>>122
そこでマニュアルですよ。
ずばり「ファイルアップロードの処理」なんて章があります

124 :nobodyさん:05/01/11 21:16:37 ID:???
掲示板の検索フォームを作ってるのですが
2頁目以降にいくときにsearch.php?search=検索文字とGETで渡してるのですが
全角だと文字化けしてしまいます。
何かいい方法はないでしょうか?

125 :nobodyさん:05/01/11 21:19:09 ID:???
urlencode('脳味噌使ったら?')

126 :122:05/01/11 21:19:38 ID:/7ZGSc21
>123
ありがとうございます!下のように書いたら出来ました!マニュアルって、
ttp://www.phpspot.net のことですよね?

<?php
$submited=$_POST['submited'];
$uploadfile =$_FILES['userfile']['name'];
if($submited !="")
{
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
print($_FILES['userfile']['name'] . "<br>");
print($_FILES['userfile']['size'] . "<br>");
print($_FILES['userfile']['type'] . "<br>");
print("<a href=\"" . $uploadfile . "\">$uploadfile</a><br>");
}

127 :nobodyさん:05/01/11 21:19:49 ID:???
>>124
urlエンコードというものをご存知ですか?

128 :124:05/01/11 21:33:08 ID:???
>>125>>127
ありがとうございます。
脳みそが少しマシになりますた

129 :nobodyさん:05/01/11 23:18:56 ID:blFDrsTZ
あのショップ作成のPHPのプログラムをSOHOの方に頼みたいと思うのですが、
相場は大体おいくらでしょうか?

130 :nobodyさん:05/01/11 23:22:42 ID:???
業者に訊けよ

131 :nobodyさん:05/01/11 23:24:06 ID:blFDrsTZ
いい業者はどこよ?

132 :nobodyさん:05/01/11 23:25:40 ID:???
ツヤがよくて湿ってるのがいい業者

133 :nobodyさん:05/01/12 00:17:30 ID:???
>>129
糞マルチ死ねよ

134 :nobodyさん:05/01/12 00:24:21 ID:???
>>129
見積もりとか大抵あるので聞いてみては?

135 :nobodyさん:05/01/12 05:58:33 ID:aUwThzOF
仮想パスから絶対パスを取得したいんですが、うまくいきません。

相対パス(realpath("../dir/file.ext"); )とかだとうまくいくんですが、
絶対パス(realpath("/dir/file.ext"); )とかだとダメです_| ̄|○
(c:\inetpub\wwwroot\dir\file.extが返ることを期待してるのにfalseが返る)
どうやらルート(/)がC:\と解釈されちゃうみたいなんですが…
何か設定が悪いんでしょうか? php.iniで(doc_rootをc:\inetpub\wwwrootにしてもダメでした)

要はASPのServer.MapPathと同じことをしたいんです。
環境はWIN XP+IIS+PHP4.3.10です。よろしくお願いします。

136 :nobodyさん:05/01/12 06:17:30 ID:???
>>135
環境変数 PATH_TRANSLATED

137 :nobodyさん:05/01/12 06:43:57 ID:???
> どうやらルート(/)がC:\と解釈されちゃうみたいなんですが…

当たり前

138 :nobodyさん:05/01/12 10:36:03 ID:2Rwu3ejI
処理する内容が多すぎて300秒のブラウザタイムアウトを食らってしまいます。
どのように解消すればよいですか?

139 :nobodyさん:05/01/12 10:50:06 ID:5IhIpMX9
phpで、ランダムに文字を表示する方法があればおしえてください
こんにちわ とか うぃっす とか こんちゃーっす とかいろんなバリエーションで出したいんです
とりあえず
<?php
print('こんにちは','うぃっす','こんちゃーっす');
?>
これでやってみたんですがだめでした(´・ω・`)

だれかおしえてください

140 :nobodyさん:05/01/12 10:57:56 ID:???
>>139
http://jp.php.net/array_randを使って味噌

>>91>>138
残念ながらここにいるのはゴッドやエスパーばかりではない

141 :nobodyさん:05/01/12 11:06:04 ID:???
ファイルマン(ttp://fileman.n1e.jp/)のように、
Flashの再生や停止ボタンを自動でつけるためのスクリプトはどのように書けばいいでしょう?
もしくは、Flash外部から再生や停止コマンドを送信、ということは可能でしょうか?


142 :nobodyさん:05/01/12 11:21:18 ID:???
「エスパーきぼんぬ」「氏ね」「(゚Д゚)ハァ?」等のレスを貰う八ヶ条。
1. ハードウェア、OSのバージョン等には一字一句触れない。
2. 大切な個人情報が漏れるとまずいので、己の行った操作、変更などは秘密。
3. エラーメッセージの類は決して書かない。「エラーが出るんです」で留める。
  目の前で生じている現象をそのまま具体的に書くなどもっての外。
  事実より俺様の脳内解釈を優先すべし。
4. 独り言文体で必勝。
  「…なんだけど、どうすればいいのかなぁ」「何が悪いんだろう?」
5. 「急いでいます」「困っています」等、自分の都合を全面に押し出す。
6. もう試したことを得意げに指摘してくる奴には、厳しく対応。
  「それが駄目だったから質問してるんです」「それはもう試してみて駄目でした」
  "どう"だめだったのか、本当に実際それを行ったかどうかなんか問題じゃない。
7. ストレートに答えを書かないもったいぶったレスには、逆切れで対応。
  「だからどうすればいいんですか?」「分からないなら引っ込んでろやゴルァ」
  示されたURL等を参照するなんて態度は、回答者を甘やかすことに他ならないので
 絶対に避ける。
8. 情報は小出しに。

「エスパーきぼんぬ」 補足
上の八ヵ条を「一つでも」満たす者は質問者として不適格だということだ。
そのような悪い質問に対して答えられるのは,
質問者の意図をすべて汲み取ることのできるエスパーでもなければムリ,
という意味であって,決して,高度な技術を持つユーザに対する尊称でなはい。
まちがっても「エスパーの方,回答お願いします」
なんて痛い質問するな。つうか氏ね。

143 :nobodyさん:05/01/12 12:17:16 ID:o9cou9UP
PHP+mySQLで掲示板を作っています。
検索機能をある程度作ったところなのですが
検索ワードに「b」など入れるとスペース( )が引っかかります。
さらに文字色を変えるために置換をしてるのでスペースの部分が&n<FONT>b</FONT>sp;みたいになり
文字として表示されてしまいます。

スペースがヒットしてしまうのはとりあえずはいいとしてるのですが、文字として表示されるのは困ってます。
置換するときに(^ )などを検索条件に入れれば解決するとは思いますが
他の特殊文字など全部入れるのは汚いので何か簡単に解決する方法はないでしょうか?

144 :143:05/01/12 12:24:14 ID:???
投稿したときに消えてしまいましたが、

3行目 スペース(&nbsp;)
8行目 (^&nbsp;)です。

145 :nobodyさん:05/01/12 12:29:48 ID:EzxAhEkT
東京ゲス女論

都市部にゲス女は集中してる
これには理由があって、都市には働き盛りの若い男が集まってくるよな学生とか
当然、都市部には男ばっかりになる。
都市は慢性的な女不足なんだ
そこに住んでる男は女がいなくて大変。女はウハウハ
そういうところですごした女はタカビー女・ゲス女となる
でも、男で東京に住んでるからって悲観することはない
東京に住んでるってことは毎日ゲス女に鍛えられてるってことだからだ
俺自身生涯で一番もてたのは東京を離れてすぐの頃だった
東京ゲス女に鍛えられてたからな。 地方の女は女神に見えた
だから東京ゲス女に関わるなと、ちょっと地方に行けばいくらでもいい女はいる
東京で鍛えられてる男なら、モテモテだよと
「都会風吹かせて気取らないこと」
それさえ、気をつければ女なんていくらでも寄ってくる

この考えに賛同する人はこのスレを色んなとこに貼り付けてくれ
そんで、これ以上女日照りの東京に無謀な男が来ることを防ごうじゃないか!!
もしかしたら、コレを見て上京してくる女の子が増えるかもしれないしな
協力頼むぜ!


146 :nobodyさん:05/01/12 12:35:12 ID:???
>>143

/&.+;/


147 :nobodyさん:05/01/12 12:35:17 ID:???
>>143
スペースを&nbsp;にしてDBにINSERTするんじゃくて
スペースはスペースのままDBにINSERTしておいて
DBからSELECTしたときに
htmlspecialcharsでもつかって変換しておけばよいのでわ?

148 :nobodyさん:05/01/12 12:39:19 ID:???
&amp;nbsp → &nbsp;

149 :143:05/01/12 13:17:46 ID:???
>>146
ありがとうございます。
アタマが堅かったですね…

>>147
insertする時にmysql_escape_string();だけ使って
表示するときにhtmlspecialcharsってことですね。
nl2br や strip_tagsもDBから呼び出す時の方がいいでしょうか?

150 :nobodyさん:05/01/12 13:47:33 ID:???
XSS対策のHTMLエンティティ変換なんかは、静的なドキュメントの出力直前にやるのが
よいとされている。
http://www.ipa.go.jp/security/awareness/vendor/programming/a01_02_main.html

が、実際には毎回処理するのはコストになるということで永続化直前にやってしまう。

ハイライトがどういうロジックになってるか知らんけど、&.*; に含まれる文字列を除外したいだけなら
正規表現でなんとかなる。このくらいは捨ててもいいと思うけどね。

$string = 'foobar hoge'';
$keyword = 'b';

$keyword = preg_quote($keyword);

$hl = preg_replace('/((?:^|&.+?;)[^&]*?)('.$keyword.')/', '$1<font>$2</font>', $string);

あと一文字だけの検索ってあんまり意味ない上に負荷かかるから、
記号以外2文字以上とか基準を設けて弾くのも手。

151 :150:05/01/12 13:49:19 ID:???
$string = 'foobar hoge''; じゃなくて $string = 'foobar&nbsp;hoge'; ね

152 :nobodyさん:05/01/12 13:54:12 ID:???
Flashの縦サイズ、横サイズ(原寸)を知るにはどうすればいいでしょう?


153 :150:05/01/12 14:18:40 ID:???
すまんバグってた
preg_replace('/((?:^|&.+?;)[^&]*?)('.$keyword.')|((?:^|&.+?;)&.+)('.$keyword.')(?!:.+?;)/', '$1$3<font>$2$4</font>', $string);

154 :nobodyさん:05/01/12 14:19:23 ID:PPEzW4f4
>>152
フラッシュに原寸てあるんでしたっけ。

現在、テンプレとなるhtmlの中に<?echo $title;?><?echo $comment;?>のようにDBなどから取得した
データを表示しているのですが、
これを、静的なページにしたいので、出力されたhtmlを別ファイルに書き出したいのですが、
どうすればよいのでしょう。

155 :150:05/01/12 14:25:14 ID:???
最終的にこうなりますた・・・(´∀`* )
preg_replace('/([^&]*)('.$keyword.')(?![^&]+?;)/', '$1<font>$2</font>', $string);

156 :nobodyさん:05/01/12 14:27:29 ID:???
>>154

例えば

ob_start();
include('template.html');
$buffer = ob_get_contents();
ob_end_clean();
file_put_contents('static.html', $buffer);


157 :nobodyさん:05/01/12 14:30:19 ID:???
>>154
普通に書き出せば?

158 :154:05/01/12 14:31:32 ID:PPEzW4f4
Call to undefined function: file_put_contents(、、

ああー。、PHP5専用でしたか。。
PHP4でいける方法ってないですかね。。

159 :nobodyさん:05/01/12 14:34:55 ID:???
>>158
file_put_contents();はデータをファイルに書き出してるだけだぞ。しっかりしろ。

160 :nobodyさん:05/01/12 14:36:36 ID:???
>>158
普通に書き出せば?

ファイルオープン
ファイル書込
ファイルクローズ
ウマー

161 :nobodyさん:05/01/12 14:37:42 ID:???
>>158
つか、くだ質イケよ。
ここは、オマエが存在していい場所じゃない

162 :154:05/01/12 14:38:07 ID:???
うわ、ほんとでした。。もうしわけないありがとうございます。

163 :nobodyさん:05/01/12 14:40:54 ID:???
>>161
ここが、そのくだ質のように見えるのですが・・・

164 :nobodyさん:05/01/12 14:41:32 ID:???
上の
>XSS対策のHTMLエンティティ変換なんかは、静的なドキュメントの出力直前にやるのが
>よいとされている。
をやると書き込み時の1回変換だったのが
読み込み時だとレス数回変換になりますよね。
これは推奨されてるとなっているがどの程度の負荷になってしまうのでしょう。
素人考えかもしれませんがものすごい負荷になりそうでコワヒのですが。

165 :150:05/01/12 14:42:50 ID:???
やっぱり>>155じゃ駄目だわ。>>155取り消しで>>153をアンサーにして下さい。
ごめんね。お母さん初めて回答者したから沢山レスしてごめんね。

166 :nobodyさん:05/01/12 14:45:15 ID:???
>>164
 一 家 離 散 

167 :nobodyさん:05/01/12 14:55:51 ID:???
>>164
レスを全部一つの変数に突っ込んでから変換すりゃー(゚з゚)イインデネーノ?

168 :nobodyさん:05/01/12 14:56:59 ID:???
>>165
うるさいくたばれ、回答すんな

169 :sage:05/01/12 14:59:25 ID:1cdGeyac
PHPのクラスについて勉強になるサイトを御存知のかた教えてください。
基礎は習得したつもりなのですが、配布されているソースには理解できない部分がたくさんあって、
困っています。


170 :nobodyさん:05/01/12 15:13:56 ID:???
>>169
「PHPのクラス」と言えるほど風変わりなものはPHPにはないことないか。
オブジェクト指向そのものについて学んでおかないと直感的にソースを読み書きできないよ。
OOPの基礎が出来てるならオフィシャルのマニュアルで十分なような。

171 :nobodyさん:05/01/12 15:15:06 ID:???
>>154さん
ぐは、ありがとうございます。
原寸って無いんですね…
Flashについてあまりに無知でした、すみません。


172 :nobodyさん:05/01/12 15:18:29 ID:???
>>164
そう負荷にならないんじゃないの?
1ページに数百件もレスがあるってのなら話はベツだけど…
100件くらいなら…大丈夫なのかな?
その辺は(  ′∇ソ ヨーワカラン

173 :nobodyさん:05/01/12 15:21:51 ID:???
ビューの生成パターンやコンテンツの大きさなんてマチマチなんだから、
負荷がどのくらいですなんて言えるわけないでしょ。ケースバイケースだよ。

174 :nobodyさん:05/01/12 16:00:11 ID:1cdGeyac
>>170
お返事ありがとうございます。
オブジェクト指向関係が甘いのでそれを固めてから再トライします。

175 :nobodyさん:05/01/12 16:21:56 ID:???
オブジェクト指向なんて習得するにはイパーン人なら10年かかるぜ

176 :nobodyさん:05/01/12 16:25:11 ID:???
つまり習得してるヤツは大抵が30くらいの親父か。

177 :nobodyさん:05/01/12 16:29:57 ID:???
変数に""で囲まなくても文字が入ってしまうのですが
このような時にエラーが出るようにできるのでしょうか?

$str = abc;
エラーが出ずにabcが入る
print $str;
abcと出力される

178 :nobodyさん:05/01/12 16:31:16 ID:???
>>174
PHPはメソッド名の大文字小文字を識別できないwので
そこだけは気をつけろよw


179 :nobodyさん:05/01/12 16:41:46 ID:???
>>177
>未定義の定数を使用した場合、ちょうどstringとして コールしたかのように
>(CONSTANT vs "CONSTANT")、 PHPはその定数自体の名前を使用したと
>仮定します。 この際、E_NOTICE が発生します。
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~

ってことでerror_reporting(E_ALL);で表示させられるはず

180 :nobodyさん:05/01/12 17:03:16 ID:???
このスレをたまたま見つけて>>150さんが言ってたようにエンティティ変換を
出力直前にしてやってます。
しかし何故かフォームから投稿した改行が\nとなって<BR>では表示されません。

DBに書き込むときmysql_escape_string();
HTMLで表示するときnl2br,htmlspecialchars,strip_tagsを使っています。
手作業で\nを<BR>に変換するしかないのでしょうか?

181 :177:05/01/12 17:05:23 ID:???
ありがとうございます。
無事解決しました。
これでaspからの変換作業が楽になります。

182 :nobodyさん:05/01/12 17:22:30 ID:KZ/Cebye
phpでショッピングカートや管理システムを構築するとしたら
どれぐらい、時間がかかりますか?

183 :nobodyさん:05/01/12 17:45:53 ID:???
>>182
自分で料理を作るとしたら
どれぐらい、時間がかかりますか?

184 :nobodyさん:05/01/12 18:39:51 ID:???
>>180
nl2brしたタグが
strip_tagsで消去されちゃってるんじゃないの?

185 :nobodyさん:05/01/12 20:18:19 ID:???
>>182
山田花子でせんずりするとどのくらいで
イキますか?

186 :nobodyさん:05/01/12 20:36:05 ID:???
規模等の具体例無し + 個々の技量の指定無し、つー時に
山田花子なんて具体例を出してくるのはイカガ谷^hなものかと。
高見盛似の妹 なら可。

187 :nobodyさん:05/01/13 02:34:30 ID:hKLwSoTE
phpでショッピングカートや管理システムを構築するとしたら
どれぐらい、時間がかかりますか?

188 :nobodyさん:05/01/13 03:04:39 ID:???
>>187
マジレスすると、1日〜5年ぐらい

189 :nobodyさん:05/01/13 04:10:37 ID:???
>>186
亮子のことかーーーーーーー!!!!

190 :nobodyさん:05/01/13 06:30:57 ID:???
HTML_QuickForm_ControllerってPOSTするとurlに変な文字列加えるね
あれはどうにもならないでつか?

191 :nobodyさん:05/01/13 11:09:03 ID:???
でつ

192 :nobodyさん:05/01/13 11:40:46 ID:eU6aIcYN
phpで作ったカウンタを
abc.htmlで表示させたいのですが、何かよい方法はないでしょうか?
.htmlなのでincludeもできず困ってます

193 :192:05/01/13 11:41:57 ID:eU6aIcYN
ちなみに<IMG src="phpカウンタのアドレス" border="0">と
やってみましたが、表示されませんでした。
カウンターはテキストカウンタです


194 :nobodyさん:05/01/13 11:51:55 ID:NtIaNDXJ
PHPのprint関数ってprintの後に半角スペースは絶対いるんですか?

195 :nobodyさん:05/01/13 11:58:01 ID:???
>>192
オブジェクトもしくはスクリプトエレメントで

>>194
試せ

196 :nobodyさん:05/01/13 11:59:38 ID:???
>>192-193
PHPと関係ねーだろがw

197 :192:05/01/13 13:38:39 ID:eU6aIcYN
>>193
スクリプトエレメントは分かったのですが、
オブジェクトが良く分かりません。
オブジェクト指向のオブジェクトでしょうか?

198 :nobodyさん:05/01/13 13:46:18 ID:Im2hBt0b
<?
・・・・
<img src="../pic/hinomaru.gif">
・・・・
?>

↑これを仮に"hinomaru.php"として保存するとしましょう。
その後このphpをよそのphpファイルからincludeして呼び出すとき、
../pic/hinomaru.gif
というファイルの相対指定は呼び出したphpファイルの居場所によって
まちまちになってしまいます。こういうのを防ぐにはどうファイルを指定したら
いいでしょうか?

呼び出される側のphpファイルが基準になればそもそもこんな問題は
起こらないんですがね・・・

199 :nobodyさん:05/01/13 13:58:28 ID:???
>>198
相対パスじゃなくて ウェブサーバのルートディレクトリ からの絶対パスにしましょう。

200 :198:05/01/13 14:06:00 ID:???
>>199
私も初めウェブサーバーのルートからの絶対パスにしてみました。
リンクに関してはルートからの絶対パスで問題なかったんですが
<img src="">
に関してはルートからの絶対パスではうまく表示されませんでした。
<img src="">
は絶対パスサポートしていないのでしょうか?


あと万が一現在借りているウェブサーバーを引っ越さなければならないとき、
ルートの絶対パスも変わってしまうので全部記述し直さなければなりません。
できれば相対パス表記の方が汎用性があっていいかなぁと思っているのですが・・・

201 :nobodyさん:05/01/13 14:10:42 ID:???
>>193
画像データを作成したプログラムにしないと表示されんよ。

202 :nobodyさん:05/01/13 14:11:23 ID:???
dirname(__FILE__)

203 :nobodyさん:05/01/13 14:11:53 ID:???
>>197
どっちもタグだろ

204 :nobodyさん:05/01/13 14:15:27 ID:???
>>198,200
意味不明

205 :nobodyさん:05/01/13 14:21:43 ID:???
>>198
hinomaru.phpにはパス情報をもたせず、常にinclude側からパスを指定すれば解決

206 :nobodyさん:05/01/13 14:22:24 ID:???
「サーバルート」と「ホームディレクトリ」の違いが判らん奴が(ry

207 :198:05/01/13 14:22:45 ID:???
<?
$real_path = realpath ("../pic/hinomaru.gif");
echo '<img src="$real_path">';
?>

としてみたんですがダメでした。画像は表示されませんでした。

208 :nobodyさん:05/01/13 14:25:59 ID:???
>>207
お前の脳はクラゲかw

209 :nobodyさん:05/01/13 14:28:14 ID:???
結論としては

> というファイルの相対指定は呼び出したphpファイルの居場所によって
> まちまちになってしまいます。

なってしまいません。

210 :nobodyさん:05/01/13 14:29:29 ID:???
オマイら釣られすぎ。

211 :nobodyさん:05/01/13 14:29:39 ID:???
おもしれえw

212 :198:05/01/13 14:32:16 ID:???
>>208
(;´Д`)?

213 :nobodyさん:05/01/13 14:35:05 ID:???
>>208
目はみかんだな。

214 :nobodyさん:05/01/13 14:47:38 ID:???
>>207
http://localhost/img/pic/hinomaru.gif
というURLで当該画像ファイルにアクセスできるなら
<img src="/img/pic/hinomaru.gif">

215 :nobodyさん:05/01/13 14:51:04 ID:???
相対パスでもええやん。どうせパスが間違ってるだけなんだから。

216 :nobodyさん:05/01/13 14:54:00 ID:???
セルフサービスで丑の刻参りかよ

217 :nobodyさん:05/01/13 14:54:54 ID:???
>>215
includeは、指定したファイルの中身を貼り付けるだけだよ。
相対パスじゃincludeで>>205のように処理しないと呼び出したとき対処出来ないだろ。

例えば、/title.php を /test/index.phpからincludeで呼び出したら、相対が変わってくる。

218 :nobodyさん:05/01/13 15:00:07 ID:???
つーかディレクトリ構成変えるつもりならハードコーディングするなよ

219 :nobodyさん:05/01/13 15:01:30 ID:???
>>209
どさくさ紛れに変なこと書くんじゃない

220 :nobodyさん:05/01/13 15:05:31 ID:???
>>198
俺もかつて同じ問題にぶち当たったことがある。
そのときは呼び出した側から呼び出された側の相対パスを
検出するfunctionを作ることで解決した。
__FILE__変数使えばできなかないぞ。
一度作ってしまえば使い回しもできるし便利なもんだよ(´ー`)y−~~~

221 :nobodyさん:05/01/13 15:06:19 ID:???
>>202
クライアントに提示する方のパスですから、

222 :nobodyさん:05/01/13 15:06:28 ID:???
つーかおまいらnobodyknows

223 :nobodyさん:05/01/13 15:08:48 ID:???
+

224 :198:05/01/13 15:14:09 ID:???
>>207にあるとおり

<?
$real_path = realpath ("../pic/hinomaru.gif");
echo '<img src="$real_path">';
?>
はひょうじされませんでしたが

<img src="../pic/hinomaru.gif">

はちゃんと表示されました。
何ででしょう(;´Д`)・・・

225 :nobodyさん :05/01/13 17:52:04 ID:???
RedHatLinux 7.3
PHP Version 4.3.3
Configure Command
'./configure' '--with-apxs=/usr/sbin/apxs' '--enable-mbstring' '--with-pgsql' '--enable-xslt' '--with-xslt-sablot=/usr' '--with-sablot-js=/usr' '--with-expat-dir=/usr' '--without-mysql' '--with-ldap' '--with-gd' '--with-zlib-dir=/usr'
という環境です。

[質問]
session_start()を使用しているプログラムなのですが、キャッシュコントロールに
おおはまりしております。

php.iniでは
session.cache_limiter => nocache
になっていますが、あるプログラムの部分だけキャッシュさせたいと思っています。
ネットで調べたところ
session_start()の前で
ini_set("session.cache_limiter","none");
または
ini_set("session.cache_limiter","private");
としたのですが、どうもHTTP_CACHE_CONTROLにno-cacheが設定されてしまいます。

そもそもPOSTではキャッシュさせることができないのでしょうか。
どうぞヒントをいただけますようお願いもうしあげます。


226 :nobodyさん:05/01/13 19:54:01 ID:obCi5PQG
PHPとmysqlの掲示板の検索フォームで躓いております。
空白で区切ったときにandまたはor検索をしたいのですがどのようにやればよろしいでしょうか?
置換で空白部分に「 and 」と入れたのですが'%a and b %'となるのでそのまま文字として認識されちゃいますし…

227 :nobodyさん:05/01/13 19:57:57 ID:???
$keylist = explode(' ', $key);
$tmp = '';
foreach ($keylist as $key) {
if ($key) $sql .= $tmp . " hoge like \"%$key%\"";
$tmp = ' and';
}

228 :226:05/01/13 20:00:21 ID:???
とても速いレスありがとうございます!
助かりました

229 :nobodyさん:05/01/13 20:51:18 ID:???
>>224
Webサーバのルートとファイルシステムのルートの違いもわからんのか?

230 :nobodyさん:05/01/13 21:25:01 ID:eW3QGjHb
eAccelerator使ってる人いますか?
使用感(速度・安定性)はどうでしょう

231 :nobodyさん:05/01/13 21:28:01 ID:mcYFj/Gd
PHP5+SimpleXMLについての質問です。
[test.xml]
<?xml・・・?>
<aaa file="c:\hoge">
 ・
 ・
 ・
</aaa>

[スクリプト]
$xml = simplexml_load_file('test.xml');
$attr = $xml->attributes();
foreach($attr as $key=>$var)
{
echo "$key -> $var\n";
}

・・・と、こんな感じでXMLを読み込んでfileの属性値を取得しています。
その属性値を表示してみると\記号以降が文字化けしてしまうのですが、
どうやって解消すればよいのでしょうか?

232 :nobodyさん:05/01/13 22:05:41 ID:???
>>231
マルチバイトの文字がエンティティ化されてるだけじゃないの?
もともとtext.xmlのどういう文字がどう化けるの?

233 :231:05/01/13 22:46:01 ID:mcYFj/Gd
>>232
>マルチバイトの文字がエンティティ化されてるだけじゃないの?
すみません、知識不足の為この部分がよくわからないのですが、
文字化けとエンティティ化というのはどのように関係してくるのでしょうか?


実際に発生している文字化けは上記の例だと「c:\hoge」が「c:ツ・hoge」となります。
どうやら「\」が 0xc2a5 という値に置き換わっているようなので
今のところ、上記コードのforeach内部で
str_replace(chr(0xc2).chr(0xa5), "\\",$var);
とすることで文字化けした部分を無理やり\記号に置き換えている状況です。


234 :198:05/01/13 23:06:37 ID:???
>>229
そうでしたか・・・両者は違ったんですか・・・

235 :nobodyさん:05/01/13 23:16:47 ID:???
>>234
http://foo.com/etc/passwd

とかできたら怖いだろうが

236 :nobodyさん:05/01/13 23:29:54 ID:???
>>235
それは、ドザの>198に言っても意味ないよ。
確かに出来たらちょっと怖いけど。

237 :nobodyさん:05/01/13 23:48:56 ID:???
PHPにとある変数に何か値がセットされているかどうかチェックする関数ってある?

238 :nobodyさん:05/01/13 23:55:36 ID:???
>>237
isset

チェック系関数は殆どがisから始まるから覚えておくといいかも

239 :nobodyさん:05/01/14 00:09:39 ID:???
>>238
激しくサンクス
あとdefineでセットした変数はdefined()で調べられるみたいだね

240 :nobodyさん:05/01/14 01:17:18 ID:???
自家製MVCでサイト作ってるけど
それでもmojaviつかったほうがいいでつか?

241 :nobodyさん:05/01/14 02:31:33 ID:???
フォームでsubmitした後、ブラウザの戻るを押したときに
値を残したいんですけどどうすればいいのでしょうか

242 :nobodyさん:05/01/14 02:37:25 ID:???
>>241
不可能。っつーかブラウザ側の問題だろそれ。。

243 :nobodyさん:05/01/14 02:38:55 ID:???
>>241
クッキー

244 :nobodyさん:05/01/14 03:07:54 ID:gDcK7oTt
>>241
そこでセッションですよ。

245 :nobodyさん:05/01/14 03:13:28 ID:???
which prefer cookie or session?

246 :nobodyさん:05/01/14 03:25:56 ID:???
サーバリソースを消費するのは得策ではない。
クライアント側で完結させてしまうのがいい。
そうなるとこの板のネタじゃなくなってしまうけど。

247 :nobodyさん:05/01/14 04:05:45 ID:???
マジレスすると引きこもりにMojaviは必要ない

248 :nobodyさん:05/01/14 04:21:16 ID:???
なんでひきこもりってわかったんだよ〜

249 :nobodyさん:05/01/14 05:13:18 ID:???
stristrを使って、「い」で検索すると「中欧の」という文字にもヒットしてしまいます。
文字コードはEUCです。
UTF-8に変える以外でこれを回避する方法は無いでしょうか。

250 :nobodyさん:05/01/14 05:22:33 ID:???
くだらなくないじゃん

251 :nobodyさん:05/01/14 05:32:53 ID:???
なんか、PHP質問スレがとまってるんで
書き込みにくかったんです。・゚・(ノД`)・゚・。

252 :nobodyさん:05/01/14 08:57:31 ID:???
PHPの環境変数にサーバの容量を参照できるものはありますか?

253 :nobodyさん:05/01/14 08:59:31 ID:???
ない。disk_free_spaceかシェルコマンドで

254 :nobodyさん:05/01/14 09:05:06 ID:???
>>252
あるかないか知りたいなら、phpinfo()で一覧表示できるだろ

255 :nobodyさん:05/01/14 10:00:26 ID:???
>>254
見たけどなかったから聞いた
>>253
助かりました。

256 :nobodyさん:05/01/14 10:10:46 ID:???
phpinfo(INFO_VARIABLES);
> Shows all predefined variables
      ~~~
ここに全部あるわけ
http://jp.php.net/manual/ja/language.variables.predefined.php

257 :nobodyさん:05/01/14 10:53:57 ID:dc+qAGeZ
<html>
<form enctype=multipart/form-data action=upload.php method=post>
<input type=hidden name=max_file_size value=10000>
画像:<input name=userfile type=file>
<input type=submit value=送信>
</form>
</html>

<?php
$uploadfile = $_FILES['userfile']['name'];
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
print "アップ成功";
} else {
print "アップ失敗";
}

画像アップローダーを作ろうとし
上のように記述して送信ボタンを押したところ、
Warning: Unable to create 'xxxx.gif': Permission denied in /home/xxxx/xxxx/upload.php on line 15
Warning: Unable to move '/tmp/php49xHiN' to 'tohowww.gif' in /home/xxxx/xxxx/upload.php on line 15
のようなエラーが発生しました。
このエラーを回避するにはどのように直したらよいですか?。


258 :nobodyさん:05/01/14 11:06:23 ID:???
>>257
みたまんまだ!バカ!
>Permission denied

259 :nobodyさん:05/01/14 11:12:48 ID:gDcK7oTt
>>258 まぁ待て。257はPermissionの意味が解らないと見た。
メッセージをExcite翻訳してやったから、257はチラシの裏にでもコード書いてろ。な?

警告: 'xxxx.gif'を作成することができません: 許可は稼働中な/home/xxxx/xxxx/upload.phpで15を否定しました。
警告: 線15の上の/home/xxxx/xxxx/upload.phpの'tohowww.gif'に'/tmp/php49xHiN'を動かすことができません。


260 :nobodyさん:05/01/14 11:25:30 ID:???
>>257みたいなチンカスでもアップローダを作ろうという気にさせるPHPは凄いな。
まさに、1億総プログラマ化の兆しか・・・

261 :nobodyさん:05/01/14 11:46:48 ID:???
cgiと違って、あぷした後にパーミッションの変更をしなくて(も)良い
PHPならではの、弊害だな。

262 :初心者:05/01/14 11:54:21 ID:a1cFeSEO
Warning: Unexpected character in input: ' in /usr/home/xx/HTML_DOC/11-2.php on line 67

↑よくこんなのが出てきたり出てこなかったりするのですが、
プログラムを見ると ' とかは見当たらないのですが、
これってどうしてでしょうか?

263 :nobodyさん:05/01/14 12:31:04 ID:???
Redhat + Apache
PHP4.2で文字コードEUCにてテキストフォームをつくりました
入力された結果をメールでとばし、かつDB(PostgreSQL)に蓄積、というものです。
鰍ニか汲ニかの機種依存文字を入力されてしまった時にメール、DBとも文字化けしてしまうので
用途から括汲フ2文字だけは頻出しそうなので
(株)と(有)にそれぞれereg_replaceしたいのですが
http://www.shurey.com/Soft/JavaScript/font2.html
にある表の8780の行のAとBはどう表記していいのか教えていただけますか

264 :nobodyさん:05/01/14 14:14:23 ID:???
>>263
A, Bはそれぞれ一ケタ目
梶ィ\x87\x8A
求ィ\x87\x8B

>>262
引数に文字を受け付けない関数に文字列を渡してるんだろ
つーかなぜ肝心の67行目を隠すかねえ

265 :nobodyさん:05/01/14 14:15:12 ID:sj4KYmxy
>>262
単なる記述ミス。
'とか"の閉じ忘れだったり、;で行を終らせてなかったりするとよく出る。

対処:
コードをよく見る。
それか、PHPコード中の文字列や関数、変数、コメントを色換えしてくれるエディタにする。


266 :nobodyさん:05/01/14 14:17:51 ID:???
>>264
残念。それは別のエラーだ

267 :nobodyさん:05/01/14 14:18:18 ID:???
PHP4ではじめて動かしました。
すると、同じphpファイルなのに、ファイル名で挙動が違います。

「index.php」の場合、プラウザに表示されず、ファイルをダウンロード
しようとします。
「foo.php」の場合、正常に動作します。

なにが問題で、このような動作をするのでしょうか?




268 :nobodyさん:05/01/14 14:23:22 ID:???
>>262
NixならEUC-JPかUtf-8だろうから、閉じ忘れが有力なあ
エディタがないならhighlight_file()とか

269 :nobodyさん:05/01/14 14:32:39 ID:???
>>267 Apacheの設定かと思われ。
httpd.confか.htaccessファイルを見れ
よくわからなかったらサバ管理者に聞いてくれ。

270 :263:05/01/14 14:40:17 ID:???
>>264
ありがとうございました
$hoge = ereg_replace("\x87\x8A","(株)",$hoge);
$hoge = ereg_replace("\x87\x8B","(有)",$hoge);
のようにしてみましたがダメでした、もうちょい格闘してきます

271 :nobodyさん:05/01/14 14:48:34 ID:???
>>270
そのコードで動くはずだけどね。
$hogeの中身がSJISじゃないんじゃない?

272 :263:05/01/14 14:59:05 ID:???
>>271
ファイルエンコーディングはEUCです、ってーことは
参照する文字コード表が間違ってる…んですね。
orz
ごめんなさい、探してきます

273 :nobodyさん:05/01/14 15:02:52 ID:???
(・∀・)ニヤニヤ

274 :nobodyさん:05/01/14 15:04:06 ID:???
print bin2hex('');

275 :263:05/01/14 15:11:46 ID:???
>>274
http://www.rtpro.yamaha.co.jp/RT/docs/misc/kanji-euc.html
とかいくつかみたんですが(株)がない…。
print bin2hex('');
したら"adae"とでました
http://jp2.php.net/manual/ja/function.bin2hex.php
イミがよく分からないながらも
$hoge = ereg_replace("\xad\xae","(株)",$hoge);
なんてやってみましたがorzでした、もうちょっと弄ってみます

276 :nobodyさん:05/01/14 15:20:15 ID:???
対象をEUC=JPに変換してるなら
$hoge = ereg_replace("", "カブ", $hoge);
でいいじゃないか

277 :nobodyさん:05/01/14 15:53:14 ID:???
奥義を伝授しよう
mb_regex_encoding("EUC-JP");
mb_ereg_replace("\xAD\xAE", "(株)", $hoge);

278 :263:05/01/14 16:16:06 ID:???
>>276-277
自分はmacで制作しているんですが
自機ではOKなんですがwin機で変換できないです
win機でbin2hex('');してもmacでも同じ"adae"なのに…
bin2hexはASCII文字列を返してくれるようなのですが
EUCのコードを返してくれる関数ってないんでしょうか?

279 :nobodyさん:05/01/14 16:21:40 ID:???
マクの特殊文字ってWInとはコードが違わないか?

280 :nobodyさん:05/01/14 16:24:49 ID:???
釣れますかな

281 :231:05/01/14 16:50:07 ID:???
すみません、また質問です。PHP5+SimpleXMLでてこずってます。

外部実体エンティティが上手くオブジェクト化されないようです。
simplexml_load_file()でxml文書を読み込み、print_rで内容を表示してみると外部実体は展開されているように見えますが
実際にオブジェクトをたどってみると途中でNULLとなってしまい、外部実体の内容を取得できません。
これはPHPのバグなのでしょうか?

[hoge.xml]
<?xml version="1.0" encoding="Shift-JIS" ?>
<hoge>
test
</hoge>

[test.xml]
<?xml version="1.0" encoding="Shift-JIS" ?>
<!DOCTYPE test [
<!ENTITY hoge SYSTEM "hoge.xml">
]>
<fuga>
&hoge;
</fuga>

[PHP]
<?php
$xml = simplexml_load_file('test.xml');
var_dump($xml); // ここでは展開されて見える
var_dump($xml->hoge); // これだと見えない
?>


282 :231:05/01/14 16:52:53 ID:???
スミマセン、test.xmlのDOCTYPEが間違いです。

誤:<!DOCTYPE test [
正:<!DOCTYPE fuga [

283 :nobodyさん:05/01/14 18:25:31 ID:???
>>281
なんだ?ここはオマエの学校か?

284 :nobodyさん:05/01/14 18:53:07 ID:???
>>283
さっさと答えんかい

285 :nobodyさん:05/01/14 18:58:03 ID:???
すみません。>>284は、俺じゃないです。

>>283
それが俺の掲示板の使い方です。
お金を払わずにわからない所があれば誰かが教えてくれる場所だと思っています。
なので、わからない人は返事しないで頂けませんか?

ここにいる人たちだって、わかる質問があれば答えるべきです。
それがこのスレの住人としての責務じゃないですか?
質問に回答がこないようじゃ質問スレとしては成り立たないと思います。

286 :nobodyさん:05/01/14 19:27:47 ID:???
>>285
死ね

287 :nobodyさん:05/01/14 19:28:59 ID:???
>>285
ごめん、俺が間違ってたよ。
お前の言うとおりだ。悪かった。

288 :nobodyさん:05/01/14 19:37:03 ID:???
文字列中の「&」について、
「&」→「&amp;」と変換したいです。

でも、&quot;や&#8745;や&#x2020;
文字実態参照・数値文字参照として用いられる「&」
は変換したくないです。

preg_replace("/&(?![A-Za-z]{0,4}\w{2,3};|#[x0-9a-f]{2,6};)/",
"?", strtr($string, $trans));

こういうのを見かけたんだけど、マニュアルよんでも
strtrのあたりとかがよくわかりません。

こういう処理は必要なくて、ただhtmlentitiesに食わせるだけでいいんでしょか?

289 :nobodyさん:05/01/14 20:07:23 ID:???
マークシートには専用の鉛筆を使いましょう。
効率が断然上がり、解答により多くの時間をかけることができるようになります。

290 :263:05/01/14 22:15:28 ID:???
できたー
$hoge = ereg_replace("\xad\xea","(株)",$hoge);
$hoge = ereg_replace("\xad\xeb","(有)",$hoge);
知り合いがもってる文字コード表の本でみてもらったorz
そのあとで
print bin2hex('');
print bin2hex('');
した結果を入れている事に気がついた。
"\xad\xeb"は264さんの書き方をまんまコピーしただけなんで
\x○○の書き方を見直してきます
ありがとうございました

291 :nobodyさん:05/01/15 00:49:47 ID:???
文字列のある文字列と別のある文字列の間の文字列を
取得するにはどうすればいいですか?

function GetText($word,$wstart,$wend){
preg_match("/($wstart)([^\n]+)($wend)/i",$word,$text);
return $text[2];
}

文字列$word内の$wstartと$wendの間を取得する
ような処理をさせようとしています。
なんか検索する文字によって↓のエラーがでる
Warning: Unknown modifier 'a'
とか
Warning: Unknown modifier 't'

対処方法またはエロイ人用のすばらしいものを教えてください。

292 :nobodyさん:05/01/15 02:17:50 ID:???
なんとなく。

function GetText($word,$wstart,$wend){
 $pattern = "/$wstart([^\n]+)$wend/i";
 preg_match($pattern,$word,$text);
 return $text[1];
}




293 :nobodyさん:05/01/15 02:18:03 ID:wU+VTC+T
配布サイトからリンク集phpをダウンロードさせて頂きました。
全てのファイルをアップロードし、パーミッションも設定が終わりましたが、

Warning: array_shift(): The argument should be an array in /*/*/***.php on line 25
Warning: Invalid argument supplied for foreach() in /*/*/***.php on line 26

というエラーが出ます。
この前に出た絶対パスのエラーは原因を自力で探せたのですが、↑が分かりません。
ぐぐっても参考になるものは出て来なかったのですが、バグなのでしょうか?
ちなみに***.phpの25、26行目はさわっていません。
教えてください!お願い致します。

294 :nobodyさん:05/01/15 02:21:54 ID:???
>>291
引数をエスケープしてみたら?

295 :nobodyさん:05/01/15 02:22:42 ID:???
>>293
ごめん、全く意味がわからない。
せめて、そのスクリプトのコードを見せて貰わないことにはどうにもならない。

#エスパーキボンヌなら帰って下さいね

296 :nobodyさん:05/01/15 02:25:29 ID:wU+VTC+T
>295さん
説明不足ですみません。どこまで書けばいいのか分からず・・・
コードは25、26行目でよろしいでしょうか?

$this->total = trim(array_shift($nums));
foreach ($nums as $tmp) {

となっています。ファイル名はcommon.phpとなっています。

297 :nobodyさん:05/01/15 02:26:58 ID:???
>>293
それだけじゃわかんないなぁ。
25行目のarray_shiftの引数が配列じゃないんだろうから、
その引数となってる変数をスクリプトから検索してみて、
定義されてるところを見てみたらいいかな。

298 :nobodyさん:05/01/15 02:27:53 ID:???
で、ググる以前にwarningの部分を訳してみたのかい?

299 :nobodyさん:05/01/15 02:31:00 ID:???
>>296
とりあえず、>297の言うとおり$numsが一番最初に出てくる場所を探してみ。
foreachのエラーはそれを解決したら自ずと解決するような気がする。

どっかから落としたものなら、配布元に聞くのが一番手っ取り早いんだけどな。

300 :nobodyさん:05/01/15 02:32:36 ID:wU+VTC+T
お答えくださりありがとうございました。
で、せっかく答えてくださったのになんなんですが、
phpスクリプトのことはさっぱりなので・・・、作者さんに問い合わせてみることにします。
今後の為にこれから勉強していきます。
初心者が設置するなって感じですが、どうしても使いたかったものなので・・
すみません。

301 :nobodyさん:05/01/15 02:36:47 ID:wU+VTC+T
わ、リロードし忘れました!
>298さん
エキサイトで訳してみると
シフトを整列させてください、
供給された根拠のない議論とでました。

>297
phpファイルがたくさんあるんですが、
全部を検索すれば良いのでしょうか?
設置の際のエラーではなく内部のものなら、作者さんに問い合わせた方が良いとのお答えなので、
質問しつつ検索してみます。

302 :nobodyさん:05/01/15 02:42:53 ID:???
>>301
まぁ…くだ質だから答えるけど、
common.phpから探してみてないようなら、
他のファイルでcommon.phpをincludeしてたり
requireしてたりするスクリプトの中から検索する。

ただ、検索して見つかったところで何もわからないんだったら、スレ違いになるのかな。

303 :nobodyさん:05/01/15 02:52:08 ID:???
> Warning: array_shift(): The argument should be an array in /*/*/***.php on line 25
警告 : array_shift()関数: /*/*/***.phpの25行目、引数は配列でなければなりません。
> Warning: Invalid argument supplied for foreach() in /*/*/***.php on line 26
警告 : /*/***.phpの26行目、foreach()に正しくない引数が渡されています。

304 :nobodyさん:05/01/15 03:00:36 ID:wU+VTC+T
>302さん
common.phpには$numsも$tmpの文字はありませんでしたし、
ほんとに何も分からない状態です。
さわって変なことになるのは怖い気もするので大人しく作者さんからの回答を待ってみます。
その間、皆さんのレスを元にphpマニュアルと格闘します・・

お手数お掛けしてすみませんでした。
お知恵を貸してくださった方々に感謝致します。


305 :nobodyさん:05/01/15 06:26:23 ID:8dAi9b4C
グローバル変数って関数内ではglobalしないと見えないんですよね…
なんかめんどっちぃなぁ。よく忘れてエラー出まくり…_| ̄|○

306 :nobodyさん:05/01/15 06:31:03 ID:???
メモ帳にでも書いてろ

307 :nobodyさん:05/01/15 08:32:14 ID:???
>>305
本当に変数じゃないといけないのか良く考えて
値が変わらないヤツは定数にするとか

308 :nobodyさん:05/01/15 19:10:23 ID:6vuxoIpW
トラックパックって何?


309 :nobodyさん:05/01/15 19:21:51 ID:???
>>308
ピーッピーッ バックします
ピーッピーッ バックします
ってやつ

310 :nobodyさん:05/01/15 19:44:59 ID:6vuxoIpW
>>309
なるほどよく分かりました・・・ってチッガーウよ
        
トラック/ \”ックでは無くてトラック/ \゚ックです


311 :nobodyさん:05/01/15 19:59:06 ID:???
ピーッピーッ pack()しますじゃね?

312 :nobodyさん:05/01/15 20:10:10 ID:vOEqqKZU
質問させていただきます。
最近HPを作り始めたのですが、
FTPで画像をアップロードしてHPに貼り付けた画像の、
プロパティを見たらURLが普通のフォルダ名とかになってるんです、
どうやってHTTPになるんですか?
教えてください。お願いします


313 :nobodyさん:05/01/15 20:11:20 ID:???
素でトラックバックだと思ってた…
反応を返す意味合いだと。

314 :nobodyさん:05/01/15 20:11:36 ID:???
>>312
回答者に対する挑戦がきたぁ〜〜〜〜

315 :nobodyさん:05/01/15 20:11:42 ID:???
>>312
釣りか?

316 :nobodyさん:05/01/15 20:20:56 ID:???
>>312
まずは、そのHPとやらのURLを晒せ。
話はそれからだ。

317 :nobodyさん:05/01/15 20:26:02 ID:???
てか板違いだろ

318 :nobodyさん:05/01/15 20:54:30 ID:6vuxoIpW
ああっわてはアホやった〜〜〜
トラックバックやった〜〜スマン。
パソコンの解像度が悪いんや、わてがわるいんとちゃうで。
まっ下らない質問のスレだからゆるしてたもれ。


319 :nobodyさん:05/01/15 20:56:54 ID:B4Q78ZKG
>>312
超初心者の典型だな
imgタグのURLの書き方を勉強しなおした方が良いぞ

320 :nobodyさん:05/01/15 20:58:00 ID:???
あげてもた;

321 :nobodyさん:05/01/15 21:10:28 ID:???
>>319-320

同レベルが 現れた

322 :nobodyさん:05/01/16 11:46:47 ID:iPhUnTdV
おまえら、ちょとすれ違いゴメソ。
PHP中心に今後使用していきたいのですが、
資格の基本情報技術者でプログラム開発言語って
アセンブラとC言語どっちがよかとでしょうか?
アセンブラが一番点を取りやすいそうですが、
個人的にはC言語を身に付けたいと考えています。
PHPやる場合、どっち覚えた方がとくでしょうか?
ヨロシコ!!

323 :nobodyさん:05/01/16 11:57:12 ID:???
>>322
PHPはアセンブラよりCに似てる。
アセンブラを本当の意味で理解できればPHPなど屁でもない。(たぶん)

324 :nobodyさん:05/01/16 13:15:37 ID:???
>>322
PHPなら1週間で覚えられる。

PHPを勉強して「こんなもの・・・」というものを漠然とつかんだら、Javaに移行した方がいい。
実際に使うのも、資格をとるのも、飯の種にするにも、Javaの方が数段有利。

Javaを覚えれば、CやC++なんかも簡単に使えるし、万が一、今後C#やらが伸びてきたとしてもほぼ完全に対応できる。
逆に、PHPを覚えてもPHPしか使えない。


325 :nobodyさん:05/01/16 13:37:25 ID:???
>>322
CがかけるとPHPをソースハックでけるぞ

326 :nobodyさん:05/01/16 13:37:54 ID:???
>実際に使うのも、資格をとるのも、飯の種にするにも、Javaの方が数段有利。
は同意するが、

>Javaを覚えれば、CやC++なんかも簡単に使える
はちと無理がないか。Javaを覚えてるならCやC++で同じように使える
といえそうな部分は、PHPを覚えてるならCやC++も…と同じ程度で
そんな程度で「CやC++を使える」なんて言えないでしょ。

327 :nobodyさん:05/01/16 13:38:39 ID:???
一匹目w

328 :nobodyさん:05/01/16 13:42:15 ID:???
^^;

329 :nobodyさん:05/01/16 14:02:46 ID:???
>>326
そうかなぁ〜
変数の扱いとか、その他の文法や作法はJavaもC++も同じだと思うけどな。
PHPとC++やJavaの文法や作法には大きな違いっていうか、根本的に違う。

文法・作法を覚えれば、あとは、その言語固有のロジックを覚えればいいだけであって、それは至極簡単なもの。
もっとも、アルゴリズムやデザインパターンを網羅した上での話しだが。

330 :329:05/01/16 14:03:44 ID:???
×それは至極簡単なもの
○それは至極簡単な事

331 :324,329:05/01/16 14:11:53 ID:???
俺のプログラム遍歴

Fortran(大学の授業)
C(大学の授業&実務)
VB(趣味)
C++&VC++(実務)
Java(実務)
Delphi(実務)
Ruby(趣味)
PHP(趣味)
C#(今後万が一の為・趣味)



332 :nobodyさん:05/01/16 14:46:09 ID:???
文法や作法でブッた切って分けちゃうと
手続き型(C)、関数型(Lisp)、論理型(Prolog)をやっときゃいい、
って話で終わっちゃうからなぁ。
オブジェクト指向型でSmalltalkも混ぜてもいいかな。

(未来は分からんが今現在の)WebProg向けの入り口としては
Java、PHP、Perlのどれかでいいっしょ。
上の3つともアセンブラで必要になってくる知識(レジスタとか)は
(制御できないという意味で)必要無いし、演算子や制御構造の書き方に
慣れるくらいの心積もりでCをやっとけばいいんじゃないかなぁ。

で、続くようならプログラム板へGo。

333 :nobodyさん:05/01/16 14:49:25 ID:???
>>332
綺麗にまとめましたね。乙

334 :nobodyさん:05/01/16 15:18:51 ID:???
PHPとJavaScriptってベン図を書くとどちらがどちらに内包されていますか?

335 :nobodyさん:05/01/16 15:38:31 ID:???
そういう関係にはならんだろ

336 :nobodyさん:05/01/16 16:04:24 ID:???
PHPの挙動についての質問です。
PHPは、XXXX.phpにコードを埋め込みますが、これは、そのページが呼び出される度にコンパイルしているのでしょうか?
JavaServletやJSPでは、コンパイルされるのは、最初に呼び出された一回のみで、
あとは、コンパイル済みのクラスファイルを用いるんですが、PHPの挙動はどうなんでしょう。

呼び出される度にコンパイルしていたんじゃ、かなり不合理っていうか鯖側の負担が大きいと思うのですが。
いらぬ心配なんでしょうか?

337 :nobodyさん:05/01/16 16:24:56 ID:???
http://ja.wikipedia.org/wiki/%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%97%E3%83%AA%E3%82%BF

338 :nobodyさん:05/01/16 16:29:24 ID:???
>JSPでは、コンパイルされるのは、最初に呼び出された一回のみ

どのJSPを使ってるんだ?

339 :nobodyさん:05/01/16 16:37:09 ID:???
>>338
厳密さを求めるとアレだが、Servletのライフサイクルを考えればそう表現しても問題ないだろ。
#それを言い出すとOSの実装上、PHPも逐次処理のインタープリタではなくなってしまうが・・

340 :nobodyさん:05/01/16 16:47:16 ID:???
Javaはバイトコードを実行時コンパイルするからマジ効率悪い立ち上がり遅せえ
フォートラン最強

341 :nobodyさん:05/01/16 16:50:14 ID:???
>>336
だからコンパイラとか(中間)コードキャッシュのソリューションが存在する。
有名どころだとZend社かionCube社の製品群。

342 :nobodyさん:05/01/16 16:53:52 ID:???
【PHP】くだらねぇ言語談義は他所に書き込みやがれpart1

343 :nobodyさん:05/01/16 16:55:42 ID:???
>>340
Javaは汎用言語だからね。
そもそもPHPのように高速に逐次コンパイルできる仕様じゃないから負荷比較するのが間違い。
って比較対象フォトランかよ

344 :nobodyさん:05/01/16 17:05:37 ID:???
【FNN】滝川クリステル結婚談義はここに書き込めPart1

345 :336:05/01/16 17:10:54 ID:???
皆さん、ありがとうございます。
う〜ん、効率の面から言えば、どっちもどっちって事なんですね。

PHPは、簡単に作れて、簡単に実行できるが、変数などの定義が甘くまたインタプリタ言語のため、処理と表示が完全には分離できない。
昔作ったプログラムや他人が作ったプログラムをメンテする時は、地獄を見るかも。

Javaは、別途tomcatなどのサーブレットコンテナが必要になるが、
制御・処理・表示のロジックが完全に分離できてメンテが楽。
時間が経過しても、他の人が作ったものでも、見れば一発で何が何をしているかがわかる。

やはり、対象プロジェクトの規模によって使い分けるのが正解のようですね。


346 :nobodyさん:05/01/16 17:29:51 ID:???
それ以上恥を晒す前にどの言語でもいいから勉強しろ。話はそれからだ。

347 :nobodyさん:05/01/16 17:31:11 ID:???
>>346
??

348 :nobodyさん:05/01/16 17:32:25 ID:???
くだスレはワナビー君も歓迎しますよ

349 :nobodyさん:05/01/16 17:36:02 ID:???
そこなハードゲイも熱烈歓迎ですよ

350 :nobodyさん:05/01/16 18:53:47 ID:???
連想配列のキーの値を変えた連想配列を作りたいと考えているのですが
array_walkですと第二引数に渡す関数の第一引数を参照で渡せばよいのですが

function change_val(&$val, $key)
{
     $val = $val + 5;
}

array_walk($array, 'change_val');

同様にキーを変更する時に参照で渡せばできるかもと考えやってみたのですができませんでした。

function change_key($val, &$key)
{
     $key = 'prefix_' . $key;
}

array_walk($array, 'change_key');

foreachを使って新しい配列に入れるということならできるのですが
上手くできる方法・関数をご存知の方がいらっしゃいましたらご教授頂けないでしょうか。
どうかよろしくお願い致します。

351 :nobodyさん:05/01/16 19:13:50 ID:???
残念ながらキーのみ書き換えることはでけん

352 :nobodyさん:05/01/16 23:22:06 ID:???
無理ですかorz
ありがとうございました

353 :nobodyさん:05/01/17 01:03:31 ID:???
php5が本格的に商用サイトで使われるようになるのは、いつくらいだとおもいますー?

354 :nobodyさん:05/01/17 01:20:21 ID:???
おととい

355 :353:05/01/17 01:26:26 ID:???
やまだくん、 >>354 のざぶとん5枚もってって

356 :nobodyさん:05/01/17 11:25:58 ID:???
マニュアル見てたらSPLで汎用的な例外クラスが定義されてた。
どこぞの商用ライブラリなんかが出してくるという話もあったけど、
オフィシャルで対応してくれるのはありがたいな。
ファイルI/Oなんかも扱ってくれる予定はないんだろか。

6) Exceptions
SPL provides a set of standard exception classes each meant to indicate a certain problem type.

class LogicException extends Exception
class BadFunctionCallException extends LogicException
class BadMethodCallException extends BadFunctionCallException
class DomainException extends LogicException
class InvalidArgumentException extends LogicException
class LengthException extends LogicException
class OutOfRangeException extends LogicException
class RuntimeException extends Exception
class OutOfBoundsException extends RuntimeException
class OverflowException extends RuntimeException
class RangeException extends RuntimeException
class UnderflowException extends RuntimeException

357 :281:05/01/17 11:55:23 ID:???
>>284>>285は俺じゃないです。

すみません、>>281の件ですが、本当にわからないんです。
XMLに詳しい方どなたか教えてください。
SimpleXMLのバグならバグであきらめますので・・・

358 :nobodyさん:05/01/17 14:09:25 ID:SCuNVMMV
この仕事って学歴関係ある?完全に実力主義?

359 :nobodyさん:05/01/17 14:19:20 ID:???
>>358
どの仕事??

360 :nobodyさん:05/01/17 14:27:40 ID:???
>>358
まぁマジレスすると、他の職種よりは、学歴は重視されない。
っが!若かりしころに勉強を放棄して低学歴になったような奴では、絶対にできない仕事。

こつこつマジメに努力してようやく勤まるか?って感じだ。
そもそも、こつこつマジメに努力するような奴に低学歴は少ないってこった。

学歴不問でプログラミングを仕事にするには、
最低 C/C++/VC/VB/Javaの5つの言語、そしてRDBを根本から理解し完全マスターしない限り採用されないだろ。
PHPだけ覚えても全くの無駄。

361 :nobodyさん:05/01/17 14:44:23 ID:???
アルゴリズムと物理コンポーネント構成・ハードウェアは必須じゃね?
サーバサイドだとVB/VBSは微妙だなあ。うちがMSで固めた仕事をあんま受けてない所為かも知れんけど。
*nixの勉強したほうがよさげ。PCばっかり弄ってて大学卒業できませんでしたって履歴は諸刃ですなあw

362 :nobodyさん:05/01/17 15:09:11 ID:???
>>361
個人で弄ってても業務のコアな知識は身につかんだろ

363 :358:05/01/17 16:26:52 ID:???
むう・・。なるほど。
専門学校より大学のほうがよさそうですね。
親切さんどうもでした。


364 :291:05/01/17 17:32:22 ID:???
興味ない人がほとんどだろうけど、
原因がわかったので書いときます。
$word,$wstart,$wendのいずれかに" / "(スラッシュ)があったから
エラーが起きてたみたいです。

Warning: Unknown modifier 'a'
→</a>を含んでいた

Warning: Unknown modifier 't'
→</td>を含んでいた

preg_match()を理解してなかったのが原因か・・・汗
まだまだPHP初心者だけどがんばります。

365 :nobodyさん:05/01/17 18:16:10 ID:???
>>294で気づいてくれ

366 :291:05/01/17 18:25:01 ID:???
>>365
すまそ

367 :nobodyさん:05/01/17 18:30:39 ID:???
>>291と同じネタで躓いた未来の君へ。
http://jp.php.net/preg_quoteを参照のこと。

368 :nobodyさん:05/01/17 22:24:38 ID:???
20050117.dat
等の日付を名前にして作られたファイルが存在すれば
<p> 2005/01/17</p>
と、正しい日付表示を書かせる方法は無いでしょうか?

369 :nobodyさん:05/01/17 22:47:04 ID:???
ナニ人?

370 :nobodyさん:05/01/17 23:26:56 ID:???
>>368
readdir()を勉強して後は自分の頭で考えれ
ヒント!

371 :nobodyさん:05/01/17 23:54:36 ID:rYi/da2g
プログラムのプの字もわからない人間です。
板違いでしたらご指摘お願いします。
perlで書かれたあるプログラムを使おうとすると以下の様なエラーが出ます。

Can't locate Config/Simple.pm in @INC

色々とサイトを巡ってConfig::Simple;とやらをインストールすれば改善されることがわかったのですが、

ppm install Confing-Simple

でインストールすることが出来ませんでした。
行き詰まってしまったのでどなたか手を差し伸べていただけないでしょうか。
宜しくお願いします。

372 :371:05/01/17 23:55:39 ID:???
上げてしまいました。
申し訳ありません。

373 :nobodyさん:05/01/17 23:56:58 ID:???
はいはい

374 :だいすけ ◆P0//Gikoow :05/01/18 00:14:23 ID:5AwhPu67
4,2,2ですが、
コマンドラインのphpで、

foreachのなかでsprintfしたら、
<sprintfの中身の最後に「\n」いれる>か<sprintfの直前に print "\n";をいれる>かしないと、
無限ループしてしまいます?

いや、sprintfの返値をprintしても表示されないから、無限ループじゃないのかな?

これってバグですかね???

375 :nobodyさん:05/01/18 00:37:49 ID:???
お客さんに納品するスクリプトでmojavi使ってる人いますか?

376 :nobodyさん:05/01/18 00:48:36 ID:???
>>371 >>374
みんな学校始まったの?

377 :nobodyさん:05/01/18 00:50:15 ID:???
>>375
で?っていう

378 :nobodyさん:05/01/18 00:56:19 ID:VNKbaYT9
imageで作成した画像を
バイナリとしてDBに入れたいのですが、
バイナリとして取り出す関数がないようです。
いったんファイルに落としてから読み込むしか方法はないのでしょうか?

379 :nobodyさん:05/01/18 01:16:44 ID:???
DBによる

380 :262初心者:05/01/18 11:14:56 ID:RETkWYls
答えてくれた方、ありがとうございます。
warningですが、出るときと出ないときがあって
あまりよくわからなくなってます。エディタは「サクラディタ」ってのを
使っています。warning部分ですが、

$password           = $_POST["password"          ];

POSTされたものを変数に入れるところです。
たまに出るくらいなのであまり気にしてませんけど。

381 :nobodyさん:05/01/18 11:50:56 ID:???
380 名前:262初心者[] 投稿日:05/01/18(火) 11:14:56 ID:RETkWYls

わざわざ「初心者」って書いてあるのを見ると「ムカッ」っと来るのは俺だけですか?

382 :nobodyさん:05/01/18 12:49:11 ID:???
>>381
初心者と書かれるより質問の内容が・・・・笑
ある意味、面白いけどね

383 :nobodyさん:05/01/18 14:03:59 ID:???
>>371
スレタイトルに丁寧にも【PHP】って書いてあるのにPerlの質問をするところがステキ。

384 :nobodyさん:05/01/18 14:10:36 ID:???
>>381
うぜーと思うが我慢しよる。

385 :nobodyさん:05/01/18 17:31:03 ID:bJTxBb/g
if文に関しての質問なのですが、
if ($chara == "a"){} 
上のようにアルファベットとの比較なら可能なのですが、これが
if ($chara =="あ"){}
とひらがなになると比較ができません
なにか方法はないでしょうか?

386 :nobodyさん:05/01/18 17:43:02 ID:???
>>385
if( mb_ereg("^あ$",$chara) )

たぶん・・・

387 :nobodyさん:05/01/18 18:01:05 ID:???
>>385
$charaに入っている「あ」と、スクリプトが書かれているPHPソースの
文字コードが違うんざしょ。

388 :385:05/01/18 18:25:58 ID:bJTxBb/g
>>387さん
ご指摘の通りどうやら文字コードが違うのが原因のようです。
$charaにはmysqlのデータベースから読み込んだ文字列が入っています。
mysqlのdefault-char-setはsjisで、phpのファイルもsjisで保存してあるんですが
原因がよくわかりません。php.iniの設定も見直す必要があるんでしょうか?


389 :nobodyさん:05/01/18 19:17:33 ID:???
なぁ。PHPがあればJavaScriptなんてイラネーなんて思ったりしたこと無い?
JavaScriptはブラウザ側でスイッチ切られちゃうけどPHPは有無を言わさず
佐波川で実行しちゃうでしょ?

390 :nobodyさん:05/01/18 19:29:03 ID:???
アホか・・・

391 :軟式PHP:05/01/18 19:59:09 ID:???
>>389
お前頭いいな・・・夢がひろがりんぐww

392 :nobodyさん:05/01/18 20:24:25 ID:???
>>389
君の脳内は天気がいいようだな。

393 :nobodyさん:05/01/18 21:05:03 ID:???
>>389を読んで、目からウコロが落ちた

394 :nobodyさん:05/01/18 21:07:03 ID:???
>>389
化学調味料つかってるな このえさ。

395 :nobodyさん:05/01/18 22:31:12 ID:yzPT/NPi
JSで書かれたmd5.jsやsha1.jsなどを見つけたので,PHPのmd5関数
やsha1関数と比較してみたのですが、アルファベットや数字だけなら
JSもPHPも同じハッシュ値になるのですが、ひらがなや漢字などの入力
ではJSとPHPでハッシュ値が違っているのですが、これは何が原因なのでしょう?


396 :nobodyさん:05/01/18 22:42:06 ID:???
>>395
文字コードが違うんじゃねーの?

397 :nobodyさん:05/01/18 23:56:43 ID:???
md5等がどういうものか考えればわかるとおもわれ

398 :nobodyさん:05/01/19 00:00:54 ID:/wCL7Oot
ファイルのアップロードについてなのですが。

PHP4+Apache1+FreeBSD4という組み合わせでやってます。
この環境だと、LAN内でのファイルアップロードが非常に遅いのです。
OSがRedHat9だとLANとしての速度が出ます。
Sambaもインストールしてあるのですが、これもLANの速度でコピーできました。
Apacheを2に代えてみても現象変わらず。

PHP側の設定で速度を速くするものがあるのでしょうか?
RedHatのphp.iniをそのままコピーしてFreeBSDの方へ入れてみたのですが
やはり現象変わらずでした。

399 :nobodyさん:05/01/19 00:04:13 ID:???
phpの設定にはないんじゃない?

400 :nobodyさん:05/01/19 01:23:26 ID:???
>>398
鯖コンフィグレーションの問題

401 :nobodyさん:05/01/19 14:02:01 ID:???
変数に関数名を入れて
その変数から関数のコールって可能?

$func = 'getAAA';
xxxxx($func); <-- getAAA()がコールされる

402 :nobodyさん:05/01/19 14:15:46 ID:???
>>401
ttp://jp.php.net/manual/ja/functions.variable-functions.php

もっと間単にできるよ。基本部分のマニュアルには目を通しときましょう。
わかりづらくなるから、限定的に使うのが吉だと思うけどね。

403 :nobodyさん:05/01/19 14:16:48 ID:???
>>401
無理じゃないの?
どうせ、予め特定できる関数なんだから、
もう一個、関数呼び出しようの関数でも作って、
その中でcaseでも使って個々の関数を呼び出せば?

ってか、なんか関数の使い方間違ってない?
>xxxxx($func); <-- getAAA()がコールされる


404 :nobodyさん:05/01/19 14:20:59 ID:???
>>401
call_user_func()
とか

405 :nobodyさん:05/01/19 14:31:08 ID:???
>>402,404
サンクス!
出来ないかと思ったら意外と簡単に出来てビックリ



406 :nobodyさん:05/01/19 14:39:56 ID:???
>>405
calll_user_funcのほうは
配列つかえばオブジェクトのメソッドも呼べるよ

407 :nobodyさん:05/01/19 15:29:26 ID:???
>>406
聞いてないことまで喋るな!

408 :nobodyさん:05/01/19 16:34:37 ID:???
>>407
せっかく教えてくれてるんだろ。お前こそ喋るな!
エク○ルでもやって喜んでろ

409 :nobodyさん:05/01/20 03:24:24 ID:???
telnetでログインし 階層下の.phpファイルすべての属性を755にしたいんですけど
どうすればいいのでしょうか。

410 :nobodyさん:05/01/20 03:46:34 ID:???
>>409
どうすればって何が?

411 :nobodyさん:05/01/20 03:56:24 ID:???
>>409
何がわからんのかわからんけど、そんなこと聞いているようじゃ
危険だから、FTPでやれ。

412 :nobodyさん:05/01/20 03:58:44 ID:???
find ./ -name "*.php" | ???

413 :nobodyさん:05/01/20 15:29:09 ID:n01d2Bgc
数字を昇順に並び替えようと「sort」(以下プログラム)を実行したところ、Aのようになってしまいました。
Aを
array(5) { [0]=> int(0) [1]=> int(1) [2]=> int(2) [3]=> int(3) [4]=> int(4) }
のような結果にするにはどのように書き換えればよいですか?


$array = array(3,4,2,0,1);
var_dump($array); // ←@
$array = sort($array);
var_dump($array); // ←A


@の結果
array(5) { [0]=> int(3) [1]=> int(4) [2]=> int(2) [3]=> int(0) [4]=> int(1) }

Aの結果
bool(true)

414 :nobodyさん:05/01/20 15:40:59 ID:???
sort($array);

415 :nobodyさん:05/01/20 15:47:10 ID:???
>>413
マニュアルをジーーーーーっと10分間。

416 :nobodyさん:05/01/20 16:50:43 ID:???
void sort ( array array [, int sort_flags])



417 :nobodyさん:05/01/20 20:48:12 ID:???
ぶっちゃけこの仕様の方がどうかと思う木曜日の夜

418 :nobodyさん:05/01/20 20:59:14 ID:???
配列をコピーしまくるのはイカガ谷^hなものかと。

419 :nobodyさん:05/01/20 21:46:00 ID:???
>>398の件ですが、FreeBSDのRWINが小さすぎるのが原因と判明しました。
増やしたら直りました。

420 :nobodyさん:05/01/20 23:10:09 ID:???
>>417
何のためのハッシュか

421 :nobodyさん:05/01/21 00:20:31 ID:???
配列関数ってまだ開発途中まきがする。
引数の順番とかあきらかにまちまち

422 :nobodyさん:05/01/21 09:50:11 ID:???
PHPの配列関数は、
each(), reset(), current(), next()などの内部ポインタを使った
古い関数群からはじまって、あとからあとから考えなしに
そのとき便利だろうと思いついた関数が追加されまくっているのだよ。

統一性も思想もなにもあったもんじゃないぞ。


423 :nobodyさん:05/01/21 10:13:18 ID:???
だがそれがいい

424 :nobodyさん:05/01/21 11:48:09 ID:???
システム入れ替えでPHPのバージョンがズガーンと上がってしまい
仕様変更による書き換えに苦しんでいまつ・・・・・・

すまん、裏が白いチラシがなかったもんで。

425 :nobodyさん :05/01/21 11:53:33 ID:3XYRh2Rh
ページにアクセスしたときに今月のログファイルが無かったら
自動でログファイルを生成する方法はないでしょうか?

今は空ファイルをコピーすることで対応しています。

$getmon = gmdate("Ym", time()+9*3600);
$monlog = "./log/$getmon.log";
$empdata = "./log/empty.log";

if(!file_exists("$monlog")){
copy($empdata, $monlog);
chmod($monlog, 0666);
}

しかし、この方法だとエラーが起きてしまいます。
何かいい方法があれば教えてください。

426 :nobodyさん:05/01/21 11:58:15 ID:???
>>425
aでいけたんじゃなかったっけ?

427 :nobodyさん:05/01/21 12:17:21 ID:???
エラー内容は?

428 :425:05/01/21 12:19:23 ID:3XYRh2Rh
>>426
aとは?なんでしょう?
PHP5だとOKなんですがPHP4だとだめみたいで、
ちなみnレンタルサーバーがPHP4なんで…orz イミナイ

429 :425:05/01/21 12:22:16 ID:3XYRh2Rh
>>427
パーミッションなんたら…
./log/200501.logファイルが見つかりません

ちなみにempty.logのパーミッションは666です。

430 :nobodyさん:05/01/21 12:52:06 ID:???
質問です。

あるサイト(全部php4とmysql)で、
IDとパスワード(Basic認証でなくformの)で入れるページがあり、
入ったあと、特定のURLのページのソースをまるごとゲットしたいのですが、
どう新しくスクリプトをかけばいいのでしょうか?


なお、「あるサイト」と「新しいスクリプト」は同じサーバ上にあり、
fopenやソケット通信は許可の設定になってます

431 :nobodyさん:05/01/21 13:05:57 ID:???
>>428
http://jp2.php.net/manual/ja/function.fopen.php
のオプションかと。
でもそれ以前に
"./log"ディレクトリが見えてないとおもわれ

>>430
http://pear.php.net/package/HTTP_Request
これでも使ってブラウザをエミュレートしれ。
 ログイン→受け取ったCookieをセットして欲しいページへリクエスト
でできるかと

432 :nobodyさん:05/01/21 13:37:16 ID:???
>>429
logディレクトリのパーミッションを707とかにすればいいと思う

433 :nobodyさん:05/01/21 13:53:35 ID:???
>>425
なんでログ生成時に書き込みしないの?
空ログだけを作りたいの?

434 :430:05/01/21 14:01:27 ID:???
すみません、pearいれてない(キマリでいれられない)んです。。。
で、lynxコマンドはいってません(いれなれない)
で、wgetははいってます。
systemコマンドは使えます。

なお、4.9-RELEASE FreeBSD です


435 :430:05/01/21 14:14:16 ID:???
ちなみに、perlでhttpクライアントを自作したことはあります


436 :nobodyさん:05/01/21 14:29:35 ID:???
>>430
ならperlでやれ。
それかPEARを入れられない理由を述べよ。
入れられなくてもコードを参考にすることはできるんだから見てみれば。

#我ながら支離滅裂w

437 :nobodyさん:05/01/21 14:29:57 ID:???
>>435
それができるならperlのをphpに書き直せばいいだでは。。。
ttp://jp2.php.net/manual/ja/function.fsockopen.php
でソケット開いてHTTPをしゃべればいいだけかと

438 :nobodyさん:05/01/21 14:36:13 ID:???
>>430
fopen()ぢゃ駄目なの?

439 :nobodyさん:05/01/21 14:57:51 ID:???
$a = array('12', '40', '9', '01');
var_dump($a); //←natsort前

$a[] = natsort($a);
var_dump($a); //←natsort後

natsort前
array(4) { [0]=> string(2) "12" [1]=> string(2) "40" [2]=> string(1) "9" [3]=> string(2) "01" }

natsort後
array(5) { [3]=> string(2) "01" [2]=> string(1) "9" [0]=> string(2) "12" [1]=> string(2) "40" [4]=> bool(true) }

以上のように、配列を並び変えを行ったところ、
並び替えは正常に行われるのですが、配列の一番最後に「[4]=> bool(true)」のようなものが加わってしまいます。
natsort後の結果を
array(5) { [3]=> string(2) "01" [2]=> string(1) "9" [0]=> string(2) "12" [1]=> string(2) "40" }
のようにするには、どのようにすればよいのでしょうか?

440 :nobodyさん:05/01/21 15:02:50 ID:???
>>439
413と同じやつか?それともネタか?
$a[] = natsort($a);

natsort($a);

441 :nobodyさん:05/01/21 15:03:53 ID:???
ネタだろ…

442 :425:05/01/21 15:04:50 ID:???
>>431-432
その通りですね。
家帰ったら試してみます

443 :nobodyさん:05/01/21 15:08:05 ID:???
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

コード以前の質問はここ。

具体的なPHPのコードに関する質問は↓

【PHP】質問スレッドpart26【php】
http://pc5.2ch.net/test/read.cgi/php/1103636095/

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
★                                               ★
☆ 新規質問は名前欄・メール欄を空にして行え                  ☆
★                                               ★
☆ 質問者が返信する際は、名前欄に「最初に質問したレス番号」を入れろ  ☆
★                                               ★
☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆

444 :nobodyさん:05/01/21 16:48:01 ID:???
オブジェクトをセッション変数にして持ち回りって 

$hone = new Hogehoge;
$_SESSION['hoge'] = &$hoge;

ではできないんでしょうか?

445 :nobodyさん:05/01/21 16:48:51 ID:???
間違えた 一行目は

$hoge = new Hogehoge;

です。 >>444

446 :nobodyさん:05/01/21 17:25:19 ID:???
できなかったの?

447 :nobodyさん:05/01/21 18:00:33 ID:???
横やりで申し訳ありませんが、出来るものなの?
なんか前にやって失敗した気がするんだけど
効率面ではどうなんだろう

448 :425:05/01/21 18:11:38 ID:???
空ログだけ作りたいんです。
ひと月に一度だけ生成するので。
書き込みもしたほうがよいです?

449 :軟式PHP:05/01/21 18:12:36 ID:???
普通に出来るよ。

450 :軟式PHP:05/01/21 18:17:14 ID:???
>>447
ショッピングカートを作る際に実装したけど便利だったよ。

451 :nobodyさん:05/01/21 18:19:27 ID:???
遷移先でHogeHogeクラスの定義が見つからないとか

452 :nobodyさん:05/01/21 18:46:00 ID:???
セッション変数にする場合、そのセッション使うページでクラス定義読み込まないとデータが壊れる罠。

453 :nobodyさん:05/01/21 18:49:02 ID:???
>>448
空ファイルを作るならtouchでいいじゃん

454 :425:05/01/21 20:36:15 ID:???
>>453
そんな関数があったんですね。
今回の場合、どんな記述をするのがスマートですかね?

455 :425:05/01/21 20:53:04 ID:???
あ、touch(空ログ);でいいのね。
ごめんなさいm(_ _)m

456 :nobodyさん:05/01/21 22:20:06 ID:???
とてつもないバカ質問かもしれませんが、
PHPのバージョンアップをする際、
バックアップしておくべきファイル・フォルダはどれですか?

457 :nobodyさん:05/01/21 22:24:55 ID:???
php.ini

458 :nobodyさん:05/01/21 22:33:11 ID:???
>>456
バージョンアップで上書きされるファイル全部。
該当ファイルの調べ方は、インストールの仕方によるし
場合によっては調べる方法が無い(or泥臭い方法しか無い)場合もある。

459 :nobodyさん:05/01/21 23:56:35 ID:???
PHPとpostgresでアップロード掲示板みたいな物を作っています
アップしたファイルをpostgresにラージオブジェクトとして登録したり
取り出すといった一連の動きは分かったのですが、
私の作った物だとダウンロード後、すべて同じ名前になってしまいます
ダウンロードする時に名前を変える方法がどうしても思い浮かびません
どなたか救いの手をお願いします
(以下作成した物)

<a href="./Get_Object.php?loid=".$file_loid."&type=".$file_type.">ダウンロード</a>


<以下、Get_Object.php内部>
/* PostgreSQL接続 */
$database = 接続用の自作関数が入ります;

/* HTTPヘッダの送信 */
header("Content-Type: ".$_GET['type']);

/* ラージオブジェクトの取得 */
pg_query($database, "BEGIN");

$handle = pg_lo_open($database, $_GET['loid'], "r");
pg_lo_read_all($handle);
pg_lo_close($handle);

pg_query($database, "COMMIT");

/* PostgreSQL切断 */
DB_Close($database);

460 :nobodyさん:05/01/22 00:10:34 ID:???
>>459
move_uploaded_file

461 :nobodyさん:05/01/22 00:15:27 ID:???
>>459
headerでfilename指定したらどうかね

462 :nobodyさん:05/01/22 00:18:26 ID:???
>>460
早速の返事ありがとうございます
move_uploaded_file は確かアップロード時に
TEMPに入っているファイルを指定ディレクトリに
移動させる物ですよね?
今回はラージオブジェクトとしてファイルを管理したいのですが
ダウンロード時にも使用する事は出来るんでしょうか?

463 :nobodyさん:05/01/22 00:23:03 ID:???
>>462
>>461が言ってるようにheaderを使ってファイル名をブラウザに渡す。
こんな感じ。
header ("Content-Disposition: attachment; filename=$filename");
ブラウザの種類やバージョンによって効果が無い場合があるので、
更に幾つかヘッダーを付け足す必要があったかと。

464 :nobodyさん:05/01/22 00:26:08 ID:???
>>462
ファイル名はどんな形で保存しているの?

465 :nobodyさん:05/01/22 00:32:52 ID:???
返信遅くなって済みません

>>461
なるほど!
調べたら出てきました
ありがとうございます

>>463
そうですね
header("Content-Disposition: attachment; filename=ファイル名");
で行けそうですありがとうございます

>>464
ファイル名はアップロード時に$_FILES['file']['name']
で取ってきて同じくDBに保存してます

466 :nobodyさん:05/01/22 04:20:49 ID:j0dmlBBw
459で質問した物です。もう1つ分からない部分が出てきたので
お分かりになる方よろしくお願いします

先ほどまではDBに$_FILES['file']['name'] でとった名前をそのまま
上げていたのですが、バグ取り中に日本語名のファイルをアップロード
しようとしたらInvalid EUC_JP character sequence found (0x8e51)
と言われて怒られてしまいました
とりあえず怒られている内容はEUC_JPなファイル名じゃないからダメって
事だと思ったので、エンコード関数使ってエンコードして見たり
色々して見たのですがさっぱりダメでした
仕方ないので
ereg('[0-9A-Za-z._]',$flie_name)
として英字だけに限定しようかとも思ったのですが、今度は半角英数
だけを入れても上記の判定の部分で止まって上手く行きませんでした。
ファイル名はテキスト文字と何が違うのでしょうか?
回避策を知ってる方教えていただけ無いでしょうか

467 :nobodyさん:05/01/22 05:01:04 ID:???
>>466
Invalid 〜 は、PHPではなくPostgreSQLが出してるエラーで、
「EUC-JPのキャラクタセットでは無いものを見つけた」という意味。

enctype=multipart/form-data の時の入力文字に関しては
PHPのバージョンによって違いがあって、
ttp://www.php.net/manual/ja/ref.mbstring.php#mbstring.http あたりを参照。

468 :nobodyさん:05/01/22 07:34:39 ID:???
>色々して見たのですがさっぱりダメでした
>色々して見たのですがさっぱりダメでした
>色々して見たのですがさっぱりダメでした

469 :nobodyさん:05/01/22 12:46:47 ID:???
ログファイルの3行目だけを空っぽにしたいんだが、どうすればいいんだ?
こんな感じ。

name<>title<>comment<>date<>ip
name<>title<>comment<>date<>ip

name<>title<>comment<>date<>ip

470 :nobodyさん:05/01/22 12:51:15 ID:???
>>469
悩む要素が見当たりません

471 :nobodyさん:05/01/22 13:18:00 ID:???
>>467
ありがとうございます
さっそく参照して解決したいと思います

472 :nobodyさん:05/01/22 13:26:29 ID:T4jXVQZN ?
SQLをSELECT * FROM UserにしてRecordsetをOpenするとFrom句の構文が間違ってると言われます。
データベースへのパスその他フィールド名などは間違ってないんですが、何で?

473 :nobodyさん:05/01/22 13:33:43 ID:???
           _,,. -‐‐‐‐‐- 、
           lヽ ヽ ヽヽヽ ヽ
           ノ::::゙、 ヽヽヽヽ ゙、
           ヘ:::::::::;;: -‐''''""( )1
            ゙、::::::::-‐''""" ̄"'i
            :V;;||:::: '~ニ=ッ, r='| >>472
             i!f !:::::      ゙、i ピィエィチピィ
             i!ゝ!::::     ‐/リ  PHP 曰く、
             i::/:、 :::、  /''ii'V   オレと関係ねーじゃん
             ハ::::‐-、_"''il|バ''

474 :nobodyさん:05/01/22 15:28:44 ID:T4jXVQZN

スマン、書くとこ間違えたな。しかも自己解決したし。
スレ汚しスマソ

475 :nobodyさん:05/01/22 17:43:32 ID:???
>>458
レスありがとうございます。
諦めてHDDまるごとバックアップします。

476 :nobodyさん:05/01/22 18:38:07 ID:vE/RUN9v
20050122っていう数字を
$year = 2005;
$month = 01;
$day = 22;
って分けるにはどうしたらいいんですか?

477 :nobodyさん:05/01/22 18:49:03 ID:qBMTLwGZ
PHPのリダイレクトで質問。
下記のようなサンプルプログラムを実行してみましたが、リダイレクトされません。
何か別に設定が必要なのでしょうか?

<?php
header("Location : http://XXXXXX/XXXX/XXX.php");
?>

478 :nobodyさん:05/01/22 18:51:13 ID:???
>>476
文字列に変換して、mid系の関数使えばいい。


479 :476:05/01/22 18:57:00 ID:???
なるほど!やってみます。ありがとうございます

480 :nobodyさん:05/01/22 19:00:33 ID:???
>>479
おまえ、プログラムの才能(というほどでもないレベルだが)無いと思う

481 :nobodyさん:05/01/22 19:01:37 ID:???

$full = '20050122';
var_dump(strftime('%d',strtotime($full)));

482 :nobodyさん:05/01/22 19:02:18 ID:???
質問させてください。
.htaccessで自作のエラー画面を表示させています。
どのファイルへのアクセスなのかを調べたいため、
エラーページをPHPで作成して解析を埋め込んだのですが、
肝心のファイル名を取得することができません。
$_SERVER['PHP_SELF']を使用すると
エラーファイルの絶対パスが返り、
せめてリファラからファイルが推測できないかと
$_SERVER['HTTP_REFERER']を使ってみましたが、
こちらは値が取れないようです。

483 :nobodyさん:05/01/22 19:03:04 ID:???
>>480
おまえ、プログラムの才能(というほどでもないレベルだが)無いと思う

訳:おまえは、馬鹿だ

484 :nobodyさん:05/01/22 19:06:53 ID:???
>>482
質問させてください。
Apacheのドキュメントも読んでからの質問ですか?

485 :nobodyさん:05/01/22 19:12:13 ID:???
>>477
>リダイレクトされません
じゃあどうなってるのかぐらい書け

486 :nobodyさん:05/01/22 19:19:04 ID:???
ttp://ponk.jp/flash_php/index.php?page=1
このサイトを見て、FlashとPHPの連携を作ってみました。
ランキングに送信した時のURLが名前がnullpo、記録が100の場合
jump.php?name=nullpo&meter=100
となるのですが、このURLの名前と数値を変えるだけで自由にスコアが登録できてしまいます。
これを防ぐにはどのようにすれば宜しいのでしょうか?

487 :nobodyさん:05/01/22 19:20:03 ID:???
書かなくても分かる。
その記述ではLocationヘッダは送信されない。
まあ視力検査だな。

488 :nobodyさん:05/01/22 19:26:55 ID:???
>>479
・・・sscanfのサンプルをミロ

489 :480:05/01/22 19:31:20 ID:???
自己解決、失礼しました。

>484
Apacheのことは微塵も思いつきませんでした。

490 :nobodyさん:05/01/22 19:32:45 ID:???
>489
>482の間違いでした
>480さん、騙ってスマソ


491 :nobodyさん:05/01/22 19:33:31 ID:???
>>486
スコアを登録できないようにすればよい。

492 :486:05/01/22 19:36:04 ID:???
>491氏
素早い御返答有難う御座います。
申し訳御座いませんが、もう少々詳しく教えて頂け無いでしょうか。

493 :nobodyさん:05/01/22 19:37:02 ID:???
>>486
そんなのは設計上の問題だろ。
暗号化して送って復号するとか好きに考えれ。

494 :nobodyさん:05/01/22 19:50:15 ID:???
誰も>>67に答えないのか?

495 :nobodyさん:05/01/22 20:07:05 ID:???
うん

496 :nobodyさん:05/01/22 20:28:10 ID:???
>>285こいつ好きだ

497 :nobodyさん:05/01/22 20:33:31 ID:???
おれは嫌いだな

498 :nobodyさん:05/01/22 20:54:19 ID:???
うを、>>444 の「オブジェクトをセッション変数で持ち回り」は自己解決しますた。
ふつうにできました。 ありがとうございました。

499 :nobodyさん:05/01/22 22:10:58 ID:???
気が合わないな>>497
やっとこのスレ全部読み終えた(仕事ty

500 :nobodyさん:05/01/22 22:30:07 ID:???
>>477
Locationのあとにスペース入れちゃだめ

501 :nobodyさん:05/01/22 23:50:03 ID:???
>>487
>>500
ありがとうございます。
できました。
神様です。
のべ数週間も悩んでました。
本当にありがとうございました。

502 :nobodyさん:05/01/22 23:57:58 ID:/UkhSKsY
新しくphpの参考書っつーか、そういうものを買ったんだが、
それを読んでいて衝撃を受けた。

PEARやらSmartyやらよくわからんが、色々と使いまわせる便利な機能がたくさんあるらしい。

今までhtml埋め込みとしてしか使ってきていなかった俺はなんだったんだ。
必死になってlogファイルで管理してきたのに。。。

かなりのカルチャーショックだったよ。やっぱりそういう便利な機能って使っていったほうが良いのかな?

503 :nobodyさん:05/01/22 23:59:58 ID:???
>>502
よくわかんないなら使わない方が良い。
ただし、使わないとわかるようにはならない。

504 :nobodyさん:05/01/23 00:02:14 ID:???
>>503
結局使って覚えるor使えるようにならないとだめだな。。。
でも、環境によってソフトの有無もあるしなぁ…(´・ω・`)

505 :だいすけ ◆P0//Gikoow :05/01/23 00:38:01 ID:myKN9oc6
phpのコーディングをもっとうまくできるようになりたいので、
他人がつくったソースを参考として拝見して、勉強したいのですが、
「このソースを参考にしたらいい」っていうおすすめあります?

なお、速さ重視より保守性重視なほうがいいです。

ふとおもったんですが、pearとかどうなのかな???

506 :nobodyさん:05/01/23 00:44:58 ID:???
ふとおもったんですが、pearってなんだかわかってます???

507 :nobodyさん:05/01/23 02:29:17 ID:???
洋梨。西洋の拷問器具のこと。

508 :nobodyさん:05/01/23 04:42:16 ID:/gwBl8Vq
くだらない質問で話題を変えるけど
PHP-Editorって使いやすい?
http://phpspot.net/php/pg%82o%82g%82o%83G%83f%83B%83%5E%28forWin%29.html


509 :nobodyさん:05/01/23 06:56:11 ID:???
>>508
いまはじめてつかってみたけど、エクリプスとくらべて利点がわからない。

それに、中途はんぱにhtmlも挿入できるゆおうだけど、xhtmlになってないからきらい。
nl2beだってきょうび、<br />に変換するのに

510 :509:05/01/23 06:56:38 ID:???
誤字しまくりすまそ。ねむい。ねるわ

511 :nobodyさん:05/01/23 10:51:10 ID:???
>>508
使いにくい、Standaloneと通常版を統合しろっツーの。
機能も中途半端。Eclipse使ってるほうが100倍マシ。まぁ一番いいのはDreamWaeverMXを使うのが最強だけどな。

512 :nobodyさん:05/01/23 11:15:50 ID:???
秀丸最強

513 :nobodyさん:05/01/23 13:30:59 ID:???
xyzzyでFA

514 :nobodyさん:05/01/23 14:15:20 ID:???
>>508
他のエディタのショートカットに慣れてると使いにくい(使えない)。
マップ設定の変更が出来ればましになるのに…
ただメモ帳使ってどうこう言ってる香具師には薦めても良いかも。

515 :nobodyさん:05/01/23 14:38:45 ID:???
locationって何ですか?

516 :nobodyさん:05/01/23 14:39:50 ID:???
>>502
改訂新版 〇礎PHP?
本屋のWebコーナーに派手に飾られてて、読んだらPearやらSmartyやら…
オブジェクト指向とDBがフルパワーで使われているから俺の好みじゃないけど

# $$hogeを初めて知った

517 :nobodyさん:05/01/23 14:49:08 ID:???
http://xxxx.jp/xxxx/xxx.php?hoge=1
で、hoge=1の処理をした後に、元の/xxx.phpに戻そうと、最後の?>の前に
header(Location:"http://xxxx.jp/xxxx/xxx.php");
と入れたのですが、上手く戻りません。
どうしたらいいのでしょうか

518 :nobodyさん:05/01/23 14:58:55 ID:???
>>517みたいなのを見てもサクっとスルーできるようになって、
俺も2chに馴染んできたなあなどと思う。

519 :nobodyさん:05/01/23 14:59:17 ID:???
うむ、同感

520 :nobodyさん:05/01/23 15:00:09 ID:???
>>516
PHPプラグラミング基礎の基礎かも?

>>517
それって、書き間違いじゃなければ parse errorとか出るでしょ?
それをおいて置いて、HTTP1.1での正しい書き方は
ttp://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.30 参照

521 :nobodyさん:05/01/23 15:00:39 ID:???
>>517
hoge=1があるときの処理で何か出力してるんじゃないの?

//xxx.php
if($_GET['hoge']==1){
/* hoge=1のときの処理 */
}
/* 通常の処理 */

でいいんちゃうんかと。
別ファイルならincludeするとか。

522 :520:05/01/23 15:01:57 ID:???
Σ(゚∀゚;) 参照までつけちゃったよ・・・

523 :nobodyさん:05/01/23 15:02:10 ID:???
>>518
スルーできてないじゃないか(*´∀`)σ)Д`)

524 :518:05/01/23 15:03:53 ID:???
>>517は例としてね

525 :nobodyさん:05/01/23 15:04:18 ID:???
       |
   \  __  /
   _ (m) _ピコーン
      |ミ|
   /  .`´  \
     ('A`)    体技:スルーを覚えた!
     ノヽノヽ
       くく



│ ≡  ('('('('A` )
│≡ 〜( ( ( ( 〜)
│ ≡  ノノノノ ノ  サッ


526 :nobodyさん:05/01/23 15:07:26 ID:???
適当に答えとけばOKだろ・・・
そんなふうに考えていた時期が俺にもありました

527 :nobodyさん:05/01/23 15:19:42 ID:???
php解析ツールって何処にありますかね(´・ω・`)

528 :nobodyさん:05/01/23 15:23:02 ID:???
>>527
Use the Source, Luke!!

529 :nobodyさん:05/01/23 15:30:28 ID:???
ナンディスカ

530 :nobodyさん:05/01/23 16:21:15 ID:r42gxvN5
は?

531 :nobodyさん:05/01/23 16:23:27 ID:???
なに?

532 :nobodyさん:05/01/23 16:43:02 ID:???
えっ?

533 :nobodyさん:05/01/23 16:54:00 ID:???
>529-532
自演乙

534 :nobodyさん:05/01/23 17:26:26 ID:???
>>512やっぱそうだね。今日秀丸にOsaka使ってみたらかなり見やすくなった

535 :nobodyさん:05/01/23 18:05:48 ID:???
TerapadなんでPHP非対応なんだぃょぅ

536 :nobodyさん:05/01/23 19:45:53 ID:???
ttp://flashtool.de/
ここにphp解析ツールがあるそうなのですが、このサイトの何処にあるのでしょうか…?

537 :nobodyさん:05/01/23 19:52:25 ID:AEkMnpHL
なんだ解析ツールって
何を解析したいんだ?

538 :nobodyさん:05/01/23 19:54:01 ID:???
Pear::DBが入っているかどうか確認する方法を教えて
いただきたく思っております。

宜しくお願いいたします。

539 :nobodyさん:05/01/23 19:56:04 ID:pZ0WjdwA
>>537
他の人のサイトのphpです。
ネットランキング等のphpもソースを見ても<phpの部分が見えず、普通に表示されるだけで分からないので

540 :nobodyさん:05/01/23 19:59:17 ID:???
>>539
勉強熱心だね。
もっともっと勉強しなさい。

541 :nobodyさん:05/01/23 20:43:12 ID:8DNR8uBk
どんな関数を使えばいいかわかりません。
google.com
yahoo.co.jp

*.com
*.co.jp

こんな風にはじめの"."ドットまでをワイルドカードに変換したいのです。
マルチバイト関数で探したんですが適切なものがわかりませんでした。
何を使えばいいでしょう?

542 :nobodyさん:05/01/23 21:21:02 ID:???
>>541
www.yahoo.co.jpとかは*.yahoo.co.jpでいいの?
info.hoge.yahoo.co.jpとかは*.hoge.yahoo.co.jpでいいの?
何をしたいのか知らんけど前から"."を数えても
gTLDやccTLDは得られるとは限らないよ。

543 :nobodyさん:05/01/23 21:23:00 ID:???
ereg_replace関数

ただ、良いコーディングが思いつかないorz

544 :nobodyさん:05/01/23 21:25:33 ID:???
explodeも使い方しだいかな…

545 :541:05/01/23 21:27:14 ID:???
OKですよ。というよりもホスト名を集計したいんです

546 :nobodyさん:05/01/23 21:30:06 ID:???
>>539
まさかブラウザの「ソースを見る」機能使ってるんじゃないだろうな…
PHPってのはサーバー側で「HTMLソース」を生成するためのアプリなんだが。
JavaScriptなんかと勘違いしてないか?
「サーバーサイドスクリプト」でgoogle検索しなさい。

547 :nobodyさん:05/01/23 21:32:52 ID:???
>>543
preg_系のほうがはやくていいよ

548 :nobodyさん:05/01/23 21:38:55 ID:???
>>539
普通にphpのソースが見れたら、それはセキュリティホールと呼ばれるものです。
つか、ついこの間のPHPのセキュリティホールもその類だったな。

549 :541:05/01/23 22:19:29 ID:???
ttp://php.s3.to/data/
てか出来ない…orz
ここのスクリプトって文字化けしない?
−PHP Analyzer−のana.php

550 :nobodyさん:05/01/23 22:21:42 ID:???
ザク以下

551 :nobodyさん:05/01/23 22:35:48 ID:???
>>549
ereg_replace("([[:digit:]]+)(.[[:graph:]]+)","*\\2","yahoo.co.jp");

552 :551:05/01/23 22:42:02 ID:???
ミスった・・・
ereg_replace("([[:alpha:]]+)(.)([[:graph:]]+)","*\\2\\3","yahoo.co.jp")

553 :nobodyさん:05/01/23 22:43:21 ID:???
もうむちゃくちゃ
ereg_replace("([[:alpha:]]+)(.[[:graph:]]+)","*\\2","yahoo.co.jp")

554 :nobodyさん:05/01/23 22:44:50 ID:???
PHPスレって正規表現もまともに書けない奴が多いよな

555 :541:05/01/23 23:06:59 ID:???
ありがとうございます>>551-553

556 :nobodyさん:05/01/23 23:22:04 ID:???
2chの掲示板ように書き込みを行ったら
そのままの状態で書き込みを行うのではなく
一度「書き込み中です」のような画面を出して
書き込みが終わったら元の画面に戻そうと思っているんですけど
どうしたら言いのでしょうか?
exit()を使って止めてからボタンを押して再スタートは出来ました
(これは思っているものとは違うのでやめました)
sleep()かなと思い使用してみたのですが駄目でした
他になにか言い方法があるのでしょうか?


557 :nobodyさん:05/01/23 23:41:27 ID:???
>>556
HTML

558 :nobodyさん:05/01/23 23:58:27 ID:???
>>557
さっそくの返信ありがとう
HTMLというのはどういう風に使えばああなるのでしょうか?
javascriptか何かなのでしょうか?
CGIが吐き出したHTMLを見てもjavascriptが使われているような
様子も無く、どうしたら良いのか分かりませんでした
申し訳ないです

559 :nobodyさん:05/01/24 00:02:58 ID:???
>>558
META

560 :nobodyさん:05/01/24 00:04:37 ID:???
>>559
わかりました
ありがとうございます

561 :nobodyさん:05/01/24 00:07:32 ID:???
                  __ __ __ __ __                 __ __
                 ∠__∠__∠__∠_.∠_../ |        __∠__∠__∠l__
               ∠__∠__∠__∠__∠__/|  |        ∠__∠__∠__∠__/.|_
.                ∠__∠__∠__∠_.∠_./|  |/|       ∠__∠__∠__/   /|  |/|
.                /   /  ./   /   /  /! |/|  |     |  /  /  /| ̄ ̄|  |/|  |
              | ̄ ̄| ̄ ̄| ̄ ̄| ̄ ̄| ̄ ̄|  |/  |/|     |_| ̄ ̄| ̄ ̄|  |__|/|  |/|
        __ _|    |__|__|__|__|/| ̄ ̄|  |    ∠__|__|__l/   /|  |/|  |
.         /   / | ̄ ̄|  |_|/|    |    |  |__|/|   |    |    |    | ̄ ̄|  |/|  |/
      | ̄ ̄| ̄ .|    |/|  |  |    |__|/|    |  |   |__|__|__|__|/|  |/|
.     ___|__|__.| ̄ ̄|  |_|/      |    |  |__|/     |    |    |    |    |  |/|  |
.   /   /   /  |    |/|.         |__|/|          .|__|__|__|__|/|  |/
  | ̄ ̄| ̄ ̄| ̄ ̄| ̄ ̄|  |.         |    |  |            .|_|    |    |  |__|/
  |__|__|__|__|/        |__|/               |__|__|/


562 :nobodyさん:05/01/24 00:58:13 ID:???
性器表現の.(任意の1字に一致)を、1文字だけでなく何文字でも当てはまるようにするにはどうすればよいですか?

563 :nobodyさん:05/01/24 00:58:56 ID:???
orz
性器→正規

564 :nobodyさん:05/01/24 01:01:39 ID:???
自分で調べてみろよ池沼

565 :nobodyさん:05/01/24 01:07:29 ID:???
正規表現でググればすぐに判る。
性器表現でググってるうちは永遠に判らない。

566 :nobodyさん:05/01/24 02:10:21 ID:???
>>516>>520
その通りだ。すげぇw
html埋め込み言語としてしか使ってなかった俺には衝撃的だったよ。
全部を鵜呑みにする気はさらさらないけど、使える程度に覚えたい。
まだ学生だしね

567 :nobodyさん:05/01/24 06:42:18 ID:???
性器表現で調べているほうが>562には有意義かもナ

568 :nobodyさん:05/01/24 07:11:18 ID:???
>まだ学生だしね
いい言い訳だ

569 :nobodyさん:05/01/24 08:01:01 ID:???
もうすぐ40間近の学生なんじゃないの?

570 :nobodyさん:05/01/24 12:23:06 ID:???
>>556で質問したものなのですが
557さんに教えてもらった方法でページの切り替えは上手く出来るのですが
やはり裏側で書き込み処理をさせつつ表示は
「おまちください」にする事が出来ませんでした
理想な処理の流れとしては
書き込みボタンを押す→即お待ちください表示→書き込み→元の画面
としたいのですが
私が作ったものだと
書き込みボタンを押す→書き込み→お待ちください→元の画面
になってしまいます。
表示処理を書き込みの前にもっていったりもしたのですが
どうしても駄目でした。
何か簡単な方法で終わりそうな気はしているのですが
どなたかヒントだけでも良いので教えてもらえませんか?


571 :nobodyさん:05/01/24 12:24:04 ID:2FuT6qHe
すみません。
ほんとうにくだらない質問ですが、ちょっと上の方でもやり取りがありましたが、気になったので質問します。
サーバ上にあるPHPのソースは、本当に丸々読まれる事はないのでしょうか?

例えば、Flashならば、Flashgetなどで丸々取得する事が可能ですが、
PHPソースは、そういうツールを使っても普通の方法(セキュリティホール以外)では保護されるんでしょうか?

現在、とあるサイトを開設する為に、PHPを使っています。
PHPの内部で、リモートアドレスを読み取り192.168のローカルアドレスなら
そのページのコンテンツを編集できるようにしてあるのですがこれは危険でしょうか?

また、この$_SERVER['REMOTE_ADDR']で取得できるIPアドレスの偽装?というのは可能なんでしょうか?
編集用のPHPファイルは、Apacheの基本認証がかかったディレクトリに置いてあるのですが少々不安です。


572 :nobodyさん:05/01/24 12:43:00 ID:???
?が多いな。まとめてくれ

573 :nobodyさん:05/01/24 12:45:34 ID:???
>>570
それでいいんじゃないの?2chも書き込みが終了した後に
お待ちくださいだと思うんだけど。サーバーの処理速度の
問題だと思うけど。

574 :nobodyさん:05/01/24 12:52:18 ID:???
>>571
>PHPソースは、そういうツールを使っても普通の方法(セキュリティホール以外)では保護されるんでしょうか?
はい。

>そのページのコンテンツを編集できるようにしてあるのですがこれは危険でしょうか?
以下のような人が来たら危険でしょう。

>また、この$_SERVER['REMOTE_ADDR']で取得できるIPアドレスの偽装?というのは可能なんでしょうか?
世の中にはできる人もいます。

>編集用のPHPファイルは、Apacheの基本認証がかかったディレクトリに置いてあるのですが少々不安です。
IPアドレスだけ見て編集できるのなら認証を通過して編集用ファイルに
アクセスできるようにしてるわけでしょ?
だったらそのディレクトリに置いてもあまり意味がない。

575 :nobodyさん:05/01/24 13:14:32 ID:2tfulrKk
array = ([0] => A00 B00,
[1] => A01 B01,
[2] => A02 B02)
っていう配列を

array = ([B00] => A00,
[B01] => A01,
[B02] => A02)
のように変換するにはどうしたらよいですか?


576 :nobodyさん:05/01/24 13:21:35 ID:???
>>573
やはり処理速度の問題ですか…

javascriptで何とかするしかないのでしょうかね…
もう一ひねり頑張ってみます
ありがとうございました

577 :nobodyさん:05/01/24 13:54:39 ID:???
>>575
foreach ($array1 as $value1) {
list ($value1, $key) = explode(" ", $value1);
$array2[$key] = $value2;
}


578 :nobodyさん:05/01/24 13:55:53 ID:???
間違えた
list ($value2, $key) = explode(" ", $value1);

579 :nobodyさん:05/01/24 14:00:43 ID:???
>>574
ありがとうございます。安心しました。

別にPHPのソースを見られたら、一気に終わりというわけではなく、俺自身の精神的な問題です。

もちろん編集用のファイルへのアクセスは、IPアドレスがローカルIP、且つ、パスワードで基本認証通過後にアクセスできるようにしてあります。



580 :nobodyさん:05/01/24 16:48:13 ID:???
>>579
糞管理のサーバーだと見られることもあるかも。

581 :nobodyさん:05/01/24 18:24:58 ID:esy2MU0n
php画像掲示板で、ファイル毎に投稿者ipを取れる記述を教えてください
もしくは、ip記録配布phpを教えてください

582 :nobodyさん:05/01/24 18:39:47 ID:???
>>581
$_SERVER["REMOTE_ADDR"];

583 :nobodyさん:05/01/24 18:43:25 ID:2tfulrKk
スラッシュのある項目に対しては配列に取り込まないようにしたいんですが、
下の記述だとうまくいきません。何故でしょう?
ちなみに出来ればドットも飛ばしたいんですが。
誰か教えてください。
foreach ($du_ary as $value) {
if(!ereg($value, "/")) {
list ($used, $user) = explode("\t", $value);
$disk_use[$used] = $user;
}
}


584 :nobodyさん:05/01/24 18:47:02 ID:???
>>583
マニュアル読めよ馬鹿

585 :nobodyさん:05/01/24 19:01:24 ID:???
>>583
ereg()の使い方が間違ってるかな?
あと正規表現使うと出来るんじゃない?

586 :nobodyさん:05/01/24 19:02:51 ID:2tfulrKk
$slush = "/";
if(!ereg($value, $slush)) {

ってしてみました。スラッシュの正規表現が分からなかったです。。。
\/ ???

587 :nobodyさん:05/01/24 19:07:34 ID:???
sub X{
if(X()){ return; }
if($a == 0){
A; X(); B; X(); C; X(); D; X();
$a = 1;
}elsif($a == 1){
E; X(); F; X(); G; X(); H; X();
$a = 2;
}elsif($a == 2){
・・・・・・・・・・・
}
return;
}

これを実行するとBの直後でsub Xに戻るとA→B→C→D→C→Dと
実行されなかった部分が繰り返されてしまうんですが、
最後の実行されなかったC→Dは繰り返さずに
A→B→C→Dだけまた繰り返すにはどうしたらいいんでしょうか?
returnの数や位置がいけないのかな・・・必ず残った分が実行されてしまうんです。
なにとぞご教授の方よろしくお願いします。

588 :nobodyさん:05/01/24 19:39:09 ID:esy2MU0n
>>582 topに付け足すだけでいいのですか?
   ip取れませんでした。

589 :nobodyさん:05/01/24 20:03:05 ID:???
>>588
その程度のスキルなら、
その掲示板の配布元に聞くよろし。
その掲示板のスクリプトも判らん俺らが、
君に教えられる事は>>582まで。

590 :nobodyさん:05/01/24 20:10:45 ID:???
>>587
それはPHPではない

591 :nobodyさん:05/01/24 20:44:02 ID:EEgoJdla
配布海外

592 :nobodyさん:05/01/24 21:52:36 ID:???
>>586
いや、だから間違ってると思うよ
以下参照して勉強してね
tp://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/php_k09.htm

593 :nobodyさん:05/01/24 22:22:04 ID:???
逆か!?


594 :nobodyさん:05/01/24 22:39:00 ID:???
すみません初心者質問です。他スレを汚したのですがこちらの方がふさわしいと思ったので
こちらで質問させてください。
print <<<EOT
<a href="javascript:fnc_a('----');">
EOT;
上記の文を作ったのですが、ヒアドキュメントを使うことが禁止されています。
上記の文をヒアドキュメント無しで同じ働きにするには、どうしたらいいでしょうか?




595 :nobodyさん:05/01/24 22:48:54 ID:Fh1K805s
URLの後ろに適当なコードを付けて、
どこからアクセスしたか・そこからどれくらいアクセスがあったか、わかるようにしたいです。
紙媒体などにURLが乗ってそこから来たときも取れるように。

http://xxxxxx.jp/baka
で、.htaccessで404のとき、count.phpを通して、indexへリダイレクト。
という方法で、やってみたところリファラ取れませんでした。

もしかして根本的に間違ってますかコレ・・・

http://xxxx,jp/count.php?hoge=baka
のように他のファイルを叩かせずに、jp/baka
だけで取得したいです。
何か良い方法はないでしょうか?

596 :nobodyさん:05/01/24 23:24:19 ID:???
>>594
向こうで何て言われたのかもう忘れたのか!

597 :594:05/01/24 23:39:00 ID:???
>596 普通にprintやecho使え、って言われたのですが・・・。初心者過ぎて
正直言って上の文のどこにprintを加えればいいのかわかりませんでした・・。


598 :nobodyさん:05/01/25 00:00:32 ID:???
>>597
とりあえず、本買ってこい。
そしてサンプルページ見ろ。


599 :597:05/01/25 00:08:34 ID:???
>598
とりあえず手元の参考書を読んでいるんですが・・・。
"と'が含まれる文をくくる方法はヒアドキュメント以外に見当たりません・・・。
qw()でくくってみたのですがエラーが発生しました。

600 :nobodyさん:05/01/25 00:19:39 ID:???
>>599
ただの文字列なんだから、どうとでもなるだろうが!!
多少不細工でも動かしたいなら、いくらでも手がある。
文字列。

601 :nobodyさん:05/01/25 00:35:07 ID:???
えすけーぷえすけーぷ

602 :597:05/01/25 00:47:17 ID:???
>601
ありがとうございました。お騒がせしました

603 :nobodyさん:05/01/25 01:15:39 ID:???
なんだネタか

604 :nobodyさん:05/01/25 01:16:14 ID:???
てか、ヒアドキュメントって設定で使用制限かけれるのか?
マニュアル読んでもphp.ini見てもそんな項目見当たらないんだが
そもそも制限かける意味も理由も見当たらないけど

605 :nobodyさん:05/01/25 01:52:32 ID:???
>>599

それ、perlじゃなかったけ

606 :597:05/01/25 02:12:46 ID:???
>604 よくわからないのですが、先方からそういう指示だったので・・。
>605 そうでした


607 :nobodyさん:05/01/25 02:25:38 ID:???
おい馬鹿ども釣られすぎだぞ

608 :ぶるじょあ ◆yEbBEcuFOU :05/01/25 02:27:48 ID:???
>>607
     ∧_∧ バッ
     ( ・3・)_,ノて 素晴らしい夜の始まりだYO!
   ,/::)   ゚づ:::::::(
   /::Ο l |:::::::::/
  ^べ(_)_,)⌒゙

609 :nobodyさん:05/01/25 02:30:17 ID:???
>>605qwでそんな意味不明なことするか馬鹿

610 :nobodyさん:05/01/25 02:32:04 ID:???
あと30分で朝だな。

611 :nobodyさん:05/01/25 07:35:51 ID:???
?> <?でくくる

612 :nobodyさん:05/01/25 10:19:47 ID:???
質問です。
php+GDで、画像のサムネイルを表示させるスクリプトを作ろうと思っているのですが、
デジカメの画像をそのまま使用すると、サイズが大きすぎるせいか、メモリエラーになってしまいました。
また、枚数が多いとどうしても動作が重くなってしまいます。

今やっている方法は
1・ディレクトリの中にあるイメージファイルの一覧を取得
2・一覧をwhileでまわして、<img src="resize.php?hoge.jpg">のようにして書き出し
3・resize.phpで画像を読み込み、imagecopyresizedで小さくして出力

というようにしています。
もっと動作を軽くする方法がありましたら教えてください。

613 :nobodyさん:05/01/25 10:27:07 ID:???
>>612
リクエストの度に処理しているんじゃ効率悪すぎ。
未処理ファイルを対象に定期的にバッチまわして、
あらかじめサムネールを作成しておくべき。

614 :612 :05/01/25 10:33:46 ID:???
>>613
早速のレスありがとうございます。
>リクエストの度に処理しているんじゃ効率悪すぎ。
やっぱりそうですよね…。
なんとか他の方法は無い物かと思ったんですが、なさそうなので諦めます。
これで踏ん切りがついた感じです。
ありがとうございました。

615 :>>595:05/01/25 11:51:06 ID:7O2DMtBF
>>595

です。。おねがいします

616 :nobodyさん:05/01/25 11:59:26 ID:???
>>595
count.phpをindex.phpにしてDirectoryIndexの先頭にindex.php。
http://xxxxxx.jp/?bakaでいいだろ。

617 :nobodyさん:05/01/25 12:02:53 ID:???
>>595
http://xxxxxx.jp/?baka

$query_str = getenv('QUERY_STRING'); //$query_str = 'baka'


618 :595:05/01/25 12:22:56 ID:7O2DMtBF
getenv('QUERY_STRING');
こういうことができたんですね。
ありがとうございます、勉強になりました。

619 :nobodyさん:05/01/25 12:37:13 ID:???
馬鹿って書き込める?

620 :nobodyさん:05/01/25 13:18:14 ID:???
↑馬鹿

621 :nobodyさん:05/01/25 13:30:21 ID:???
>>617
関数使わなくても、すでに
$_SERVER["QUERY_STRING"]
に入ってるし

622 :nobodyさん:05/01/25 13:56:35 ID:???
↑馬鹿

623 :nobodyさん:05/01/25 16:31:42 ID:???
pearのソースなんかにかいてある///{{{ってなんていうソフトへのメッセージ?

624 :軟式PHP:05/01/25 16:38:46 ID:???
V ´^?u^?`)y―┛~

625 :595:05/01/25 16:41:32 ID:7O2DMtBF
>>619
え、漏れですか?

無事出来上がりましたありがとうございます。

626 :595:05/01/25 16:43:01 ID:???
内容ないのに下げ忘れましたすいません

627 :nobodyさん:05/01/25 16:48:53 ID:???
>>623
Vim


628 :nobodyさん:05/01/25 16:55:23 ID:???
>>627
センキュ

629 :nobodyさん:05/01/25 17:47:42 ID:yhBhnvi/
php4.3.10です
mb_substrですが、
http://www.php.net/manual/ja/function.mb-substr.php
によると、二番目と三番目の引数は、バイト数じゃなくて文字数となってるんですが、
なぜか、バイト数で処理しているようです。
さらには、日本語の真ん中でぶった切ってくれます。
mb_convert_kanaやmb_convert_encodingはちゃんと動いているので、インストール
は問題ないと思うのですが....
文字コードをEUCに変換してやってもダメでした

エロイ人おしえてください



630 :nobodyさん:05/01/25 18:00:04 ID:???
エンコーディングが設定とずれてんだろ
つーかまともに質問もできない低脳は質問スレに来るなよ

631 :nobodyさん:05/01/25 18:05:38 ID:???
>>629
たまたまあなたのPHPがハズレだっただけです。
よくあることとあきらめてください。

632 :なちじょあ ◆yEbBEcuFOU :05/01/25 18:08:03 ID:???
( ● ・3・ ● ) エェー またご挑戦くださいNE

633 :nobodyさん:05/01/25 18:19:22 ID:yhBhnvi/
>>630
なにげに親切だね

634 :nobodyさん:05/01/25 18:52:27 ID:ctOxddYx
どちらの書き方が正しいのでしょうか?
@----------------------------
User-agent: searchpreview
User-Agent: ia_archiver
Disallow: /
A----------------------------
User-Agent: ia_archiver
Disallow: /
User-agent: searchpreview
Disallow: /

ある複数のロボットを指定したい場合どちらが効果がありますか?
googleで検索するとAは、ロボットが来てしまうような事があるらしいのですが
ご教授お願いいたします

635 :nobodyさん:05/01/25 18:57:09 ID:???
>>634
Web制作板で聞いてください

636 :634:05/01/25 19:05:50 ID:???
>>635
すみません。板を間違えていました

637 :nobodyさん:05/01/25 19:08:25 ID:???
PHPとも関係ないが

638 :DNS未登録さん:05/01/26 09:43:42 ID:???
Apache2.0.x+Tomcat5.5.x)での連携設定方法をご存知ありませんか?
OSはWinXPSP2です。
ぐぐったのですがサイトによってかいてあることが違ってうまくいきません。
どなたかうまくいった方が折られましたら、参考にしたサイトを紹介していただけないでしょうか?
あと成功例でも結構ですどうぞよろしくお願いします。


639 :612 :05/01/26 10:12:33 ID:???
あの後ちょっといじって、>>613氏のいうように、サムネイル画像をあらかじめ
作成して置く形に変更しました。
しかし、デジカメの画像(2048*1536、約1MB)の画像をまとめて処理しようとすると
PHP Fatal error: Allowed memory size of 10485760 bytes exhausted とエラーが出てしまいます。
大体、10枚程度までなら処理できるのですが、それ以上はエラーになりました。
やっている事は

1・ファイルの一覧を取得
2・whileで回して「$src = imagecreatefromjpeg($file);」として読み込み、xとyのサイズを取得&サムネイルのサイズに設定
3・$img = imagecreatetruecolor($set_x,$set_y);としてイメージ生成
4・imagecopyresampled($img,$src,0,0,0,0,$set_x,$set_y,$x,$y);出力
5・whileの最後にimagejpeg($img,$output_file); imagedestroy($img); imagedestroy($src); として、繰り返し

これでは正常にメモリがクリアされないのでしょうか?
何か解決法がありましたらお願いします。

640 :軟式PHP:05/01/26 10:27:52 ID:???
ぐぐったらいくつか解決法があったけどやってみた?

641 :612 :05/01/26 10:54:07 ID:???
>>640
うーん「php」「gd」「メモリ」「Allowed memory size」などを中心に探してみましたが
php.iniの最大メモリを変更する以外の対策は見あたりませんでした。
その解決法とはどんな物ですか?

642 :nobodyさん:05/01/26 12:01:46 ID:???
>>641
ってかさ、どうせ画像はローカルPCからアップするんでしょ?
だったら、PC上で一括してサムネール作っちゃえばいいんじゃないの?
その手のフリーウェアは探せば山ほどあるんだし。

全てをサーバ上でやろうとするから…

643 :nobodyさん:05/01/26 12:36:32 ID:???
>>612
メモリリークでしょうかね
imagedestroyでメモリが開放されてないような感じですが。
PHPのバージョンとgdのバージョン(PHPバンドル版か別にインストールしたものか)は何でしょうか。

644 :612 :05/01/26 13:43:17 ID:???
>>642
いや、それを言われちゃうと身も蓋も…。
ブラウザで全部すませたいな、と思うので。

>>643
PHP Version 5.0.3、GD 2.0.28です。
imagedestroyで解放されていないわけでは無いようです。
imagedestroyしてやると10枚程度までいけますが、しないと数枚でアウトでした。


645 :nobodyさん:05/01/26 14:11:37 ID:???
>>639
画像が大きすぎ。
たまたま10枚目あたりの画像のメモリー消費量が多いだけちやうんかと。
共有鯖なら>>642の意見に賛成。
自鯖なら好きなだけメモリー増やせ。


646 :612 :05/01/26 14:31:13 ID:???
>>645
10枚目がたまたま、という訳では無いです。

で、メモリを増やすにせよなんにせよ、クリアされなくてはいけないハズなのに
クリアされていないというのは何だか気持ち悪いので、このスクリプトを
実際に使うかどうかは別として、原因がわかったら教えてください。
私も自分で解決できたらまた来ます(´・ω・`)

というわけで、またしばらくコチコチやってきま。
ありがとうございました。

647 :軟式PHP:05/01/26 14:44:05 ID:???
>>641
あとphp.iniの箇所をもうちょい進むと
ttp://ns1.php.gr.jp/pipermail/php-users/2002-January/004929.html
までいくっしょ。これで解決したわけだし試してみたら?
あと、$srcってimagecreatefromjpegの戻り値だよね。
imagedestroyする必要あるのかな。

648 :軟式PHP:05/01/26 14:48:12 ID:???
>>647
てか、$srcもしなきゃいかんな。スマソ。
後者は無視してhttpdのほう試してみてくれ。

649 :軟式PHP:05/01/26 14:50:53 ID:???
連レスになるけど、どうしてもダメならImageMagickを使うこと等を
検討してみてはどうだろう。

650 :612 :05/01/26 15:05:44 ID:???
>>647
とりあえずhttpd.confでは駄目でした(´・ω・`)
なので、ImageMagickも検討してみたいと思います。

しかし、なんかこのまま終わるのも癪なので、もうちょとやってみます(笑)
どうもです〜m(_ _)m

651 :nobodyさん:05/01/26 15:08:28 ID:???
こういう奴ってできたらできたで共有鯖とかでもやるんだよな。

652 :nobodyさん:05/01/26 15:36:18 ID:???
>>650
>>639の処理手順は合ってるから、それ以上手の付け様は無いよ。
>>642が言ってるように根本的なやり方を変えるか、
>>647が言ってるような運用方法で軽減するかくらいしかない。

まぁ、jpegで1MBのファイルならメモリに展開した時に
10MB(php.ini設定か?)を超えてもおかしくないわな。

653 :nobodyさん:05/01/28 00:31:06 ID:o6jrdeht
age

654 :nobodyさん:05/01/28 03:39:06 ID:???
PHPたんの性器表現・・・・(;´Д`)ハァハァ

655 :nobodyさん:05/01/28 07:24:10 ID:???
ミスだっつーの!\(`Д´)/

656 :nobodyさん:05/01/28 09:47:33 ID:???
いつも性器とかやらしい事ばっかり言ってるから、変換で最初に出てくるんですよ

657 :nobodyさん:05/01/28 12:18:03 ID:???
普通はこの辺が出てくるよな。 「正規・生気・世紀」
まあエロいことはいいことだ。

658 :nobodyさん:05/01/28 13:14:06 ID:???
違うんだよ!同級生の携帯に2chブラウザ入ってて、記念眞紀子で質問したらこうなったんだよ!

659 :nobodyさん:05/01/28 13:39:35 ID:???
メ欄の安っぽさがこのスレらしくていい

660 :nobodyさん:05/01/28 14:35:04 ID:xpvGFlmu
PHPを最近始めた初心者です。
くだらない質問でごめんなさい。

DBからUTF-8形式のデータを呼び出し、それらをfopenを使ってファイルに書き込むときに、ファイルの出力コードが勝手にShift-JISとなってしまいます。

mb_convert_encodingやutf8_encodeなどを使って、DBから呼び出した個々のデータを全てUTF-8にしても、ファイルそのものはShift-JISのままになってしまいます。

どなたか、ご対応の程よろしくお願い致します。

661 :nobodyさん:05/01/28 15:11:35 ID:???
>>660
php.iniの設定を確認。

662 :660:05/01/28 16:21:53 ID:xpvGFlmu
>>661
ご回答ありがとうございます。

php.iniについてはレンタルサーバなので正確に中身を見る事は出来ませんが、ユーザが指定できるので、そこに記述した内容をコピーしますね。

language = "neutral
default_charset = "UTF-8"
mbstring.internal_encoding = "UTF-8"
mbstring.http_output = "UTF-8"
このような設定にしています。
他のページ等に記載していることを、見よう見まねで書いてみたのですが、やはりファイル出力はShift-JISのままとなってしまいます。

ご対応の程よろしくお願い致します。

663 :nobodyさん:05/01/28 17:20:33 ID:???
念のためphpinfo()の該当する結果を見せてちょ

664 :nobodyさん:05/01/28 17:31:02 ID:???
>>660
fopenでファイルに書き込む際に自動的にエンコード変換を
掛けるなんてことはないのだがな。その「勝手にShift-JISとなってしまいます。」
や「DBにはUTF-8で格納されてる」つうのはどうやって確認してる?

あとDBMSの機能で、PostgresなんかはDBクライアントの機能として
MySQL4.1/5.0はDBサーバの機能としてデータのIN/OUTの際にエンコードの変換を
行うことができるので、その辺が影響して無いか確認。
影響してればPHPに取り込んだときには既に変換されてる


665 :660:05/01/28 17:49:52 ID:xpvGFlmu
>>663
ご回答ありがとうございます。
phpinfo()の該当する部分というのはこの辺りの掲載すればよろしいのでしょうか?

PHP Core

Directive Local Value Master Value
default_charset UTF-8 UTF-8
output_buffering 0 0
output_handlerno value no value

mbstring
Japanese support enabled

Directive Local Value Master Value
mbstring.detect_orderno valueno value
mbstring.encoding_translationOffOff
mbstring.func_overload00
mbstring.http_inputpasspass
mbstring.http_outputUTF-8UTF-8
mbstring.internal_encodingUTF-8UTF-8
mbstring.languageneutralneutral
mbstring.substitute_characterno valueno value

不要なものがありましたら、申し訳ございません。
また、必要なものがございましたら、お手数ですがご指摘の程、よろしくお願い致します。

666 :664:05/01/28 17:52:18 ID:xpvGFlmu
>>664

ご回答ありがとうございます。

勝手にShift-Jisになる確認方法の件ですが、fopenにて生成されたファイルをエディタ(Macユーザのためmiというエディタを使っています)で開いたところ、Shift-Jisになっているのです。
また、DB(MySQL)の件については、UTF-8でエンコードされたWebページのフォームから文章を入力し、PEARを使って
DBにInsertしています。そして、それを同じくUTF-8でエンコードされた違うWebページで出力させているのですが、文字化け等はおきずに正しく表示されています。
また、phpmyadminをutf-8に設定した状態でDBのデータを確認してみても、ちゃんと表示されております。これにより、MySQLのデータIN/OUTにおけるエンコード変換の影響はないと判断していますが、いかがでしょうか?

またCURLを使い、yahoo.co.jpを取り込み、同じようにfopenを使ってファイル出力してみたのですが、この場合は
EUC-JPとなるようです。
以下がスクリプトです。
$curl = curl_init("http://www.yahoo.co.jp");
$fl = @fopen('hoge.php', 'w');
curl_setopt( $curl,CURLOPT_FILE,$fl );
curl_setopt( $curl,CURLOPT_HEADER,0);
curl_exec( $curl );
curl_close( $curl );
fclose( $fl );

ご指摘の程、よろしくお願い致します。

667 :660:05/01/28 17:53:37 ID:xpvGFlmu
>>664
申し訳ございません。名前のところに664と書いて投稿してしまいました。


668 :nobodyさん:05/01/28 18:15:00 ID:???
>>666
エディタのエンコードの自動判定が判定しきれなくて
間違ったエンコードと認識してる可能性がある。
バイナリエディタを入手して文字コードで確認してみてください。

データのIN/OUTにおいて変換されてしまってる感じではなさそうだな…

669 :nobodyさん:05/01/28 23:37:03 ID:ZphJTcdt
フォームのradioボタンでチェック時の色が薄い緑で見にくいの
ですが、色を変えることはできますか?

670 :nobodyさん:05/01/28 23:50:11 ID:???
>>669
Web制作板へどうぞ

671 :nobodyさん:05/01/29 16:48:34 ID:y8zIQf8h
PHPのpg_connect使ってPostgreSQLと接続しているのですが、
接続中に何回か実行クエリを発行してもpg_closeしないと
結果が反映されてないみたいんですが、そうゆうものですか?
AUTO COMMITのようなことはできますでしょうか?

672 :nobodyさん:05/01/29 17:05:42 ID:???
基本的にAuto Commitの筈だけど、不安だったらpg_trace()でも試してみたら?

673 :nobodyさん:05/01/29 17:30:30 ID:???
>>672
そうですか、私の勘違いですかね。
ちなみに、PHPのバージョンは4.1.3です。

674 :nobodyさん:05/01/30 01:48:28 ID:???
すいませんが質問させて下さい。
以前WIN環境(2k)のapache(1.3.27)+php(4.2.3)で作ってたんですが
今度同じWIN環境でapache(2.0.50)+php(5.0.1)に移行したら
プリント関数が使えなくなりました。
php.iniに「extension=php_printer.dll」も追加し、phpのextフォルダにも
php4環境からphp_printer.dllをコピって置いたんですが本来なら
このフォルダにあるはずだし、apacheを再起動しても
「指定されたモジュールが見つかりません」と怒られます。
ひょっとしてphp5になってからプリント関数は無くなったんでしょうか?

675 :nobodyさん:05/01/30 01:56:07 ID:???
Apiの異なるDLLが動くわけなかろう
http://jp2.php.net/get/pecl-5.0.3-Win32.zip/from/a/mirror

676 :nobodyさん:05/01/30 01:57:43 ID:???
>>674
セキュリティ上問題があるので至急PHPのバージョンを上げて下さい。

677 :nobodyさん:05/01/30 05:45:15 ID:79430JFW
あるhtmlファイルから
特定の文字列を抜いて、
別のphpから表示したいのですが、可能でしょうか?
具体的にどんな方法が考えられますでしょうか?

例:a.html(abcdefという内容)
b.php a.html からdefを抜いて、
abcと表示。

678 :nobodyさん:05/01/30 06:01:06 ID:???
可能。何がわからないのかすら分からん。

679 :nobodyさん:05/01/30 10:11:41 ID:???
>>678
PHPの事を何も理解してない奴にアドバイスするのはやめれ

680 :nobodyさん:05/01/30 10:21:00 ID:/AMMda4B
ちょい質問
FOMAの動画を再生させようとしてるんだが

http://www.hoge.com/hoge.asf

へ飛ばしたらバイナリはいてたのでIMGタグ使ってみたがやはり表示されない
なんか特別なFOMA用のタグでもあるのかね?

681 :nobodyさん:05/01/30 10:29:29 ID:???
404ですよ
<a>か<object>だった希ガス

682 :nobodyさん:05/01/30 11:04:05 ID:???
>>680
携帯用の動画は画面サイズがきまっています。
前に俺も携帯用の配信してた時にちょっとつまずいた。

正確な解像度はわすれたけど、ちょっと調べれば、わかったと思うよ。

あとは、.asfにアンカータグでリンクを張れば再生される。

683 :nobodyさん:05/01/30 11:09:01 ID:???
PerlからPHPに移った者です。
nl2brという関数を知ったのですが、
ereg_replace("\n", "<br>", $hoge);
とするのと何か違いがありますか?

684 :nobodyさん:05/01/30 11:31:53 ID:???
>>683
nl2brは、\nや\rを置き換えるんじゃなくて、挿入します。

\n \rを区別しないし、消されることも無い。
つまり、改行コードが「\n」のみだったら、以下と同じになります。

ereg_replace("\n","\n<br />",$hoge);

685 :nobodyさん:05/01/30 12:01:05 ID:???
なるほど、ありがとうございました

686 :nobodyさん:05/01/30 14:30:09 ID:???
実際、調べてませんけどnl2brの方が専用に作っているので速いと思う

687 :nobodyさん:05/01/30 14:56:28 ID:???
ereg_replace < str_replace < nl2br だぁね

688 :nobodyさん:05/01/30 15:23:51 ID:???
>>687
もっというと、
ereg_replace < preg_replace << str_replace < nl2br だぁね

689 :nobodyさん:05/01/30 15:54:32 ID:???
質問です、
もまえら、例えば低機能なカウンターや掲示板作ろうと思ったら、
どれくらいの時間かかる?
俺はかなりの初心者で数日かかりそうなんで、
参考までに聞きたい

690 :nobodyさん:05/01/30 16:14:16 ID:???
カウンタなら10分
掲示板なら60分

ちなみにPHP暦1ヵ月

691 :nobodyさん:05/01/30 16:25:33 ID:???
何か知らんけど、半年以上掲示板を作っているが完成しない。
完成に近くなると、設計をやり直したくなる。

692 :nobodyさん:05/01/30 16:55:15 ID:???
よくあることだ

693 :nobodyさん:05/01/30 16:58:06 ID:???
>>690
他の言語の経験は?
無しなら、、カウンタ飛びそう。


694 :nobodyさん:05/01/30 17:36:14 ID:???
>>693
CとPerlを9ヵ月、JAVAを2ヵ月
カウンタって簡単に壊れるものなのか?よっぽどの人気サイトか、貧弱鯖か…
# とかほざきながら、自サイトのカウンタはFC2のレンタルだったりする

>>689
ガンガレ

695 :EK:05/01/30 17:44:10 ID:4qD6156y
天才プログラマ様,おしえてください.

PHPで簡単なアカウント認証システムをつくってます.
登録するときに,IPを調べて2重登録を防ぐということがしたいわけです.
しかしプロクシを通されると,どう対処すればよいかわかりません.

非匿名のプロクシなら,環境変数でHTTP関連の変数を調べればわかるのですが,
完全な匿名のプロクシだと検出できないんです.

エロいひと教えてください.

696 :nobodyさん:05/01/30 17:56:12 ID:???
>>695
方法はありません。

697 :nobodyさん:05/01/30 17:59:46 ID:???
POSTクエリーに何もない、あるいは何かある、というのを調べるにはどうすればいいですか?
また、hoge.php?val
とアクセスした時、valはどうすれば取得できますか?

698 :nobodyさん:05/01/30 18:21:56 ID:???
自分の持つ一連のWebPageで、<head>や<address>といった、全ページに
(ほとんど)共通する定型句があります。これのテンプレを別途作製し、PHPで
呼出せば、すっきりしてイイかなと思いました。

1) こういうPHPの使い方ってOK?あるいは目立ったデメリット等ありますか?
2) もしOKなら、DOCTYPEなんかもテンプレに含めて良いもんなんでしょうか?

699 :nobodyさん:05/01/30 18:39:05 ID:???
>>697
phpinfo()

>>698
1) OK。負荷増、融通きかない
2) 出力結果が全て

700 :nobodyさん:05/01/30 18:49:20 ID:???
>>698
<!--#include virtual="/肛門.html"-->


701 :nobodyさん:05/01/30 19:04:45 ID:???
フォームをクリックしてファイルをダウンロードさせたいのですが、
PHP側の関数は何を使えばいいのでしょうか。ご教授願います。

702 :nobodyさん:05/01/30 19:48:56 ID:79430JFW
htmlファイルのソースを読み込むにはどの関数を使えばいいでしょうか?
fopen??

703 :698:05/01/30 20:30:46 ID:???
>>699
サンクスです!

704 :nobodyさん:05/01/30 21:19:37 ID:???
isset($_SESSION['hoge']) || $_SESSION['hoge'] = '';
$obj =& $_SESSION['hoge'];
って書いてるんだけど何か美しくないですよね。
実際には$_SESSION['hoge'][][]と配列になっているので一行にすると
長くなりすぎる気がします。
なんかスマートな書き方がないものでしょうか?。


705 :nobodyさん:05/01/30 21:44:08 ID:vJLTbH4Q
$ip = getenv('REMOTE_ADDR');IPアドレス

706 :nobodyさん:05/01/30 21:44:11 ID:???
>>695
ログインした時点でアカウントをロックすればいいだけだよ
ただ、ログアウトせずにブラウザ閉じると再ログイン出来ないけどね
タイムログアウト処理も加えておけば良いかと

707 :705:05/01/30 21:45:22 ID:???
うはっ間違って送信押してしまった(;´Д`)

$ip = getenv('REMOTE_ADDR');

でサイトを訪問してくれた人のIPアドレスをゲットできるけど、
さらに一歩推し進めてその人の国籍やプロバイダー情報も
検出してくれる機能って無い?

708 :nobodyさん:05/01/30 22:03:29 ID:???
改めて書き直してまでする質問か?

709 :nobodyさん:05/01/30 22:04:35 ID:???
アホでしたか

710 :nobodyさん:05/01/30 22:29:31 ID:???
PHPのBBS等のログファイルを隠蔽するにはどうしたら良いですか?
Perlの場合拡張子をcgiにすればできましたが、PHPの場合拡張子をphpにしても覗けてしまいます

711 :nobodyさん:05/01/30 22:33:41 ID:???
>>710
.htaccess

712 :nobodyさん:05/01/30 22:39:00 ID:6jokYwmw
Aという要素でソートしたときにBという要素が○であるレコードが何番目にあるか
が、わかる関数はありますか?

713 :nobodyさん:05/01/30 22:54:20 ID:???
>>712
そんなものはない。

714 :nobodyさん:05/01/30 22:58:08 ID:???
>>712
それぐらい作れよ。

715 :705:05/01/30 23:15:58 ID:???
>>708
無いっすか?

716 :nobodyさん:05/01/30 23:29:58 ID:???
>>705
PEAR::Net_Whois

717 :nobodyさん:05/01/30 23:31:10 ID:???
>>715
そんなものはない。
それぐらい作れよ。

718 :nobodyさん:05/01/30 23:31:34 ID:???
getenv('HOGEHOGE')と、
$_SERVER['HOGEHOGE']って、
それぞれメリットデメリットってあります?

719 :nobodyさん:05/01/31 00:25:14 ID:???
>>718
そんなものはない。
それぐらい作れよ。

720 :nobodyさん:05/01/31 01:58:15 ID:???
>>719
そんなものはない。
それぐらい作れよ。

721 :nobodyさん:05/01/31 07:58:22 ID:???
配列キーの検索ってないよね

722 :nobodyさん:05/01/31 09:02:59 ID:???
>>721
キーで指定できるから検索する必要がない。

723 :nobodyさん:05/01/31 09:20:28 ID:???
>>722
値も指定しているようなものでしょ
ただ、キーを検索した場合に何を返すかの問題だね
値を返そうにも唯一ではない場合もあるしね
返すならintしかないかな

724 :nobodyさん:05/01/31 09:28:29 ID:???
PHP使いはプログラマじゃないね。

725 :nobodyさん:05/01/31 09:31:13 ID:???
残念ながらw

726 :軟式PHP:05/01/31 09:35:12 ID:???
スクリプタだよヽ(´ー`)ノperlもね。

727 :nobodyさん:05/01/31 09:46:40 ID:???
データ構造もだが、英語も勉強しないとな

728 :nobodyさん:05/01/31 11:18:56 ID:???
プログラムはコンパイル言語だけかい

729 :nobodyさん:05/01/31 11:23:38 ID:???
マジレスすると724の周りにはSmaty使いしかいないんだろう。

730 :nobodyさん:05/01/31 11:24:12 ID:???
Rが抜けた。Smarty。

731 :nobodyさん:05/01/31 11:33:35 ID:???
Smartyのテンプレエンジンを使ってる人ってそんなに居るの?

732 :nobodyさん:05/01/31 11:37:51 ID:???
>>729
マジレスするとお前、流れ読めてないな

733 :nobodyさん:05/01/31 11:59:06 ID:???
↓グラフ理論の権威が一言

734 :nobodyさん:05/01/31 13:22:53 ID:???
JavaScriptも立派なプログラミング言語だ!

735 :軟式PHP:05/01/31 14:36:44 ID:???
JavaScriptの7行プログラミング
ttp://www.isl.cs.gunma-u.ac.jp/~shingo/make/7line/7line.html

736 :nobodyさん:05/01/31 14:51:10 ID:???
721以降、マと素人の二極化が激しいな

737 :nobodyさん:05/01/31 15:46:10 ID:???
「漏洩」が文字化け・・・鬱

738 :nobodyさん:05/01/31 17:09:20 ID:???
m9(^Д^)プギャー

739 :nobodyさん:05/01/31 21:59:26 ID:MOMf8Zhx
printf, sprintf のformatに * は実装されていないのでしょうか?



740 :nobodyさん:05/01/31 22:36:49 ID:???
集計プログラムをもったPHPがある日を境に表示されなくなってしまいました。
それまでは正常に作動していました。
そして先日は集計結果が日に日に減っていく(0という数字が消されている?)という
事態にみまわれています。しかし入力データは無事に落ちています。
何もしていないのに、表示とプログラムが書き換えられているかのようです。
どのような理由が考えられるでしょうか。アホな質問で申し訳ありませんが、
どなたか考えられる原因を教えてください。よろしくお願い致します。

741 :nobodyさん:05/01/31 22:43:56 ID:???
>>740
我々はエスパー伊藤ではない。

742 :nobodyさん:05/01/31 22:48:34 ID:???
日付の差を求めるにはどうすればよいですか?
time関数では秒数の差になってしまうので…

743 :nobodyさん:05/01/31 22:54:31 ID:???
>>742
1日は何時間?
1時間は何分?
1分は何秒?

744 :nobodyさん:05/01/31 22:59:19 ID:???
IMGタグからURIを抽出する方法を教えて下さいな。
(相対パス、絶対パス 両方できればありがたい。)

745 :nobodyさん:05/01/31 23:11:30 ID:???
>>743
レッツPHPさんのを参考にしてできました

746 :nobodyさん:05/01/31 23:23:08 ID:???
>>744
正規表現。

747 :nobodyさん:05/01/31 23:28:08 ID:???
explodeとstr_replaceは、機能としては同じですか?

748 :nobodyさん:05/01/31 23:52:17 ID:???
>>747
違います。

749 :nobodyさん:05/02/01 17:07:48 ID:???
大阪弁変換みたいなPHP(URL指定でそのページの内容を全部読み取り、その内容を弄って出力)を
作りたいのです。手元の解説書を見る限りfopenでウェブページの取得ができそうなのですが
方法が分かりません・・・(パスにhttpで始まるURLを入れればよい、と書いてあるんですが・・・)

<?php

$target = fopen("http://pc5.2ch.net/test/read.cgi/php/1105218084/", "r");
print $target;

?>

結果は「Resource id #2」です。どこかがおかしいのか、この方針では無理なのか(その場合
どういう方針を使えば目的の動作をさせられるのか)ご存じの方いらっしゃいましたら
よろしくお願いします

750 :nobodyさん:05/02/01 17:18:03 ID:???
>>749
http://jp2.php.net/function.fsockopen

751 :749:05/02/01 18:04:45 ID:???
あ、なるほど、「ソケット」って言葉聞いたことはあったんですが、こういうことを
するために使う話だったのですね。。。
ソケット自体使ったことがないのでちと色々勉強してみまつ。どもでした

752 :nobodyさん:05/02/01 19:07:38 ID:???
PHP4で、フォームなどから取得した文字列の中に、特定の文字列を発見したら、
それを好きな文字に置き換えて出力する方法を考えています。

$text = $_REQUEST['text']; //フォームから文字列を取得
if(strstr($text,"特定の文字列")) //その文字列に、特定の文字列があったら、

と、このあとどうしたらいいか思いつきません。
何かアイデアをお持ちであれば御教授ください。
「こんな簡単なことも思いつかねえのか」と思うかもしれませんが、
どうぞよろしくお願いします。

753 :nobodyさん:05/02/01 19:16:59 ID:???
>>752
str_replace

754 :753:05/02/01 19:22:17 ID:???
>>753
もう、なんていうか、自分がつくづく馬鹿だと思いましたよ・・・
思いつくも何もそのための関数が・・・
とにかくどうもありがとうございました。

755 :nobodyさん:05/02/01 20:58:13 ID:???
$_REQUEST['REMOTE_ADDR']とgetenv("REMOTE_ADDR")の違いはなんですか?

756 :nobodyさん:05/02/01 22:25:42 ID:???
マルチポストの予感

757 :nobodyさん:05/02/01 22:31:08 ID:???
どこに?

758 :nobodyさん:05/02/01 22:34:53 ID:???
$hoge=123;
とあって、これを00123としたいのですが、
$hoge=sprintf(%05u123);
sprintf関数はこの使い方で良いでしょうか

759 :nobodyさん:05/02/01 22:42:59 ID:???
なんで、みんなマニュアル見ればすぐに判る事を聞くかな?

おい、お前のことだよ!>>758

760 :nobodyさん:05/02/01 23:31:54 ID:b2vi9Wz/
すいません。質問です。
掲示板で書き込んだ文字が下のように化けるのはなぜでしょうか・・。

ホ。ク・ク・ァ・テ・ネ・ウゥ`・ケ・ソゥ`。、・ヂ・・ケ。ケ

あとこの文字列を元の分に直せますか?

761 :nobodyさん:05/02/02 00:11:46 ID:???
>>760
mb_convert()
美乳

762 :760:05/02/02 00:27:22 ID:???
スクリプトはShift JISで
表示もShift JISでしています。
でスクリプト中で

mb_convert_encoding($hoge,"SJIS","auto");

してみたんですが化けてしまいます。
さっさとeucにした方が幸せですかね。。

763 :nobodyさん:05/02/02 00:39:39 ID:???
>>759
マニュアルを見ても今イチ説明がよく分かりません。こんな気持ち悪い書き方で良いのでしょうか。

764 :nobodyさん:05/02/02 00:55:56 ID:mszEXFeW
PHPで変数aとbのデータ比較を行っているのですが、
うまくいきません。

$a="2005051000000000201";
$b="2005051000000000301";

if ($a == $b) {
 echo "NG";
} else {
 echo "OK";
}

上記a,bの内容の場合、OKを表示してほしいのですが、
NGが表示されます。
どうすればよいのでしょうか。

765 :nobodyさん:05/02/02 01:12:47 ID:???
>>764
比較するときstringに型キャストして味噌

if ((string)$a == (string)$b) {

766 :nobodyさん:05/02/02 01:23:30 ID:???
if($a === $b)
でいいんじゃない?

767 :nobodyさん:05/02/02 01:42:19 ID:???
(string)でキャストしてみたのですが、うまくいきませんでした。
===は、試してみます。
そもそも、このような長い数値の比較(""で括っているので文字列だと思うのですが)は
普通行わないものなのでしょうか。

768 :nobodyさん:05/02/02 02:01:57 ID:???
とりあえず、この質問だけで答えは出せないと思う。

文字列として比較したいのか、数値として比較したいのかが分からない。

文字列として比較したいのであれば、stringキャストでは意味が無い。
「===」を使っても正常な結果は出るが、一番確実なのは、

echo strcmp($a,$b)==0 ? "OK" : "NG";

769 :nobodyさん:05/02/02 08:16:47 ID:???
よく見ろよ馬鹿共!
中身が違うんだからNGが正常

770 :nobodyさん:05/02/02 09:22:00 ID:???
なんだNGでいいのか

771 :nobodyさん:05/02/02 10:22:47 ID:???
is_readable('./dir/file.php')としているのですが、その結果が1として
返って来ません・・・
ディレクトリ、ファイル共にothersはrxとしてあるのですが、どうして
なのでしょうか?

772 :771:05/02/02 10:26:35 ID:???
自己レス・・・catしたらファイルが無かった;
ファイル名間違いでした・・・失礼

773 :nobodyさん:05/02/02 10:29:33 ID:3u11bF/6
プロバイダ(Webサーバ)で使っているPHPスクリプトを、
別のサーバでApacheでPHP4を動かそうとしたところ、
「Internal Server Error」と言うエラーが出ました。
どのようにすれば、今までと同様に動かすことが出来ますか?

Apacheのバージョン : Apache/1.3.22
パス : 「/usr/local/lib/php.ini」


774 :nobodyさん:05/02/02 10:38:28 ID:g6qcRaEP
>>773
その情報だけで分かるやつなんて居ないと思うよ。


775 :nobodyさん:05/02/02 10:39:28 ID:???
>>773
Webサーバのログを見れる環境なら、それを見る。
単純なPHPスクリプト(例えば<?php phpinfo(); ?>等)でもエラーがでるか試す。

htaccessファイルが不正でエラーだしてる気もするがなぁ。


776 :nobodyさん:05/02/02 10:44:50 ID:???
そもそもPHPが動く鯖なのか?

777 :nobodyさん:05/02/02 10:50:07 ID:v52PFDLH
Fedoraのとき文字コードは何を使用するのがいいですか?
やっぱりEUC?

778 :軟式PHP:05/02/02 11:22:17 ID:???
>>777
Core 2使ってるけど、基本文字コードをLANG="ja_JP.eucJP"にして
phpのほうもEUCで使ってて問題なかったよ。
標準をUTF-8のままにしてPHPのみEUCの動作は分からないから試してみてくれ。

779 :nobodyさん:05/02/02 11:25:03 ID:???
下らない質問

現行のHPのHTMLにそのままディレクトリで埋め込めて
そのまま決算できるショッピングカートが見つからない

恐らくPHPでなら可能だとは思うのだけれど
そういう現行のデザインを崩さないまま決算ページに行けるようなPHPは
ありますかいな?

780 :nobodyさん:05/02/02 11:35:59 ID:???
>>779
詳しく

781 :nobodyさん:05/02/02 11:40:16 ID:???
>>779
スレ違いどころか板違い

782 :773:05/02/02 11:49:36 ID:3u11bF/6
お答えいただきありがとうございます。

[Wed Feb 2 11:40:07 2005] [error] [client xxx.xxx.xxx.xxx] File does not exist: /home/xxx/xxx/xxx/xxx/


ログフォルダにはこのようなエラーが記録されておりました。

プロバイダ(Webサーバ)で使っているPHPスクリプトを、
別のサーバでApacheでPHP4を動かそうとしたところ、
「Internal Server Error」と言うエラーが出ました。
どのようにすれば、今までと同様に動かすことが出来ますか?

Apacheのバージョン : Apache/1.3.22
パス : 「/usr/local/lib/php.ini」

783 :773:05/02/02 12:04:21 ID:3u11bF/6
すいません、動作しました。

お騒がせしました。

784 :779:05/02/02 12:41:16 ID:???
詳しく書くなら、現行のHTMLにPOSTでデータを
PHPかクッキーに残したプログラム。当然ページ移動してもカートとしては
動かないと話にならないし

自分で書いたけど失敗した
PARLとPHPが混在してたのかも

仕方ないから探したけど見つからず



どこの板になるかな?

785 :nobodyさん:05/02/02 12:53:40 ID:???
web製作にCGI捜索スレがあるにはある。

786 :nobodyさん:05/02/02 13:14:42 ID:???
纏めるとこんな感じか。
「商品情報が書かれているHTMLファイルを特定のディレクトリの下に置いておくと、
不思議なチカラが働いてショッピングカートとして機能するスクリプトが欲しい。
決算ページ以降は別の仕組みを用意するから、そのページより前の仕組みを探している。」

PHPやJavaScriptを使うにしても、手作業で既存HTMLに手を加える
(or HTMLをparseして適切なデータを埋め込むスクリプト)ことになるから、
そんな面倒なことをするより、出来合いのショッピングカート+データ入力 に移行した方が良いと思われ。

さっきまで人の書いたサンプルコードを探すのに「こんなCGI探してます」スレを見てたんだけど、
ショッピングカートはゴロゴロ転がってたから、この辺りからスタートしてみそ。
ttp://pc5.2ch.net/test/read.cgi/hp/1106947416/2

787 :nobodyさん:05/02/02 13:22:00 ID:???
なんか自演くさいレスが続いてるな・・・

788 :nobodyさん:05/02/02 13:24:55 ID:???
過疎スレへのテコいれでつ

789 :nobodyさん:05/02/02 16:03:36 ID:???
$fp = @fopen(xxx.dat, "w+");
rewind($fp);       //←エラー
fputs($fp, "$data \n"); //←エラー
fclose($fp);       //←エラー

ファイルに$dataを記録する時に、指定のファイル「xxx.dat」が無い場合
「Supplied argument is not a valid File-Handle resource」
というメッセージのエラーが「←」の3行に発生します。
指定のファイルが無い場合「xxx.dat」を生成し
上のエラーを出さないようにするには、どこの設定をどのように変えればよいですか?
尚、「xxx.dat」がある状態で実行するとエラーは出ずに正常に記録されます。

790 :nobodyさん:05/02/02 16:11:13 ID:???
>>764
if ("a". $a == "a". $b) {

これはどうよ?

791 :nobodyさん:05/02/02 16:11:39 ID:???
なぜw+で開くのか

792 :nobodyさん:05/02/02 16:12:51 ID:???
>>789
エラー処理しろ
http://jp.php.net/fwrite

設定はphp.iniに思い切り書いてある。
スクリプトから変更するにはerror_reporting()

793 :nobodyさん:05/02/02 16:13:32 ID:???
>>789
fopen後に$fpに正しいリソースが代入されているか検査しろ。
fopenでファイルが開けなかった(作成されなかった)理由はfopenの前の@をはずして確認しろ。

794 :nobodyさん:05/02/02 16:13:44 ID:???
>>789
file_existsを使う

795 :789:05/02/02 18:01:24 ID:???
みなさんお答えいただきありがとうございます。
さっそく
ini_set ( string varname, string newvalue)関数を使って一時的に設定を変更し、
ファイルを存在しないファイルを作れるようにしようと思います。
その時「varname」に入れる値は、どれであるか教えてください。
的外れな質問をしていたら指摘してください。

796 :nobodyさん:05/02/02 18:16:45 ID:???
>>795

>ファイルを存在しないファイルを作れるようにしようと思います。

がわからない

797 :nobodyさん:05/02/02 18:23:50 ID:???
>>795
どこを見てんだ?回答者の意見を少しは参考にしたらどうだね?
>794の例

$filename = "xxx.dat";
$mode = (file_exists($filename)) ? "r+" : "w";
$fp = @fopen($filename, $mode);




798 :nobodyさん:05/02/02 18:49:54 ID:???
>>797
それだと、ファイルのパーミッションはあるけど、ディレクトリのパーミッションがないときに
>789と同じエラーがでる罠。
if(!!$fp=@fopen($filename, $mode))な。
というか、w+でファイルが作られないならおそらくそういうことナンジャマイカ。

799 :nobodyさん:05/02/02 19:36:18 ID:???
mb_ereg_replaceが使いたく
ttp://www.pat.hi-ho.ne.jp/dimension/inst/inst_unix_dso_4_mbregex2.shtml
を参考にmbregexをphpizeでインストールしたいと思うんですが
ftp://night.fminn.nagano.nagano.jp/php4/
が接続できなくなっているようです。
どこか他にmbregexのソースをおいているサイトを知っている方
いらっしゃったら教えてもらえますか

800 : ◆.rgrRbWfD. :05/02/02 19:40:23 ID:???
ini_setで設定するしかないんじゃ?

801 :nobodyさん:05/02/02 20:40:44 ID:q6Il3s7y
すいません、ちょと教えてください

strrpos("あ い、う") //あ と いの間は全角スペース
とすると6が返ってくるのですがどうしてでしょうか?
普通は2になりますよね??

802 :nobodyさん:05/02/02 20:46:32 ID:???
>>801
よく見て出直してこい

803 :801:05/02/02 20:50:23 ID:q6Il3s7y
あ、失礼こきました。
strrpos("あ い、う"," ")とやると6になるんです・・

804 :nobodyさん:05/02/02 20:53:38 ID:???
http://www.php.net/manual/ja/ref.mbstring.php

805 :801:05/02/02 21:41:19 ID:q6Il3s7y
>>804 
ありがとうございます。

しかしエラーらしきところは・・・strposはちゃんと動作するんだけどなー

806 :nobodyさん:05/02/02 21:47:14 ID:???
>>799
ttp://www.php.net/

807 :nobodyさん:05/02/02 21:59:18 ID:???
ふと、Webプログラムをはじめようと思いました。
全く予備知識なく、何某さんのネット連載記事とか本とかを読んでいると、
JavaサーブレットとかJSPというものがとてもすばらしいっぽく書いてありました。
なるほどそうなのかと思って、サーブレットJSP関連の本を買い、色々勉強しました。
さて、じゃあそろそろ適当にレンサバでも借りてみようかと思いました。
……全然対応してるところがありませんでした。
どうしたらいいですか。しかもその何某さんは、別の連載では
Linux+JSPサーブレットとWin鯖+ASPを比べて、ASPのすばらしさを語っていました。
もう何言語を覚えればいいのか分かりません。

808 :nobodyさん:05/02/02 22:04:32 ID:???
>>807
PHP言語のスレに来たことですし、PHP言語をやってみてはどうですか?

809 :nobodyさん:05/02/02 23:17:58 ID:???
どの言語だって一長一短
適材適所で言語を選べって事だよ
ちなみにここはPHPスレ

810 :nobodyさん:05/02/03 08:39:22 ID:???
>>807
Servlet/JSPをやるには、普通のレン鯖じゃダメだね。
使えるところも最近は増えてるけど、共有鯖のServletなんてつかえたものじゃない。

専用サーバ借りるか、自宅鯖にするしかないな。
ADSLで上り500Kbps程度あれば、普通の文字主体のサイトなら帯域に困ることも無い。

811 :nobodyさん:05/02/03 08:43:18 ID:???
バーカ

812 :nobodyさん:05/02/03 08:48:10 ID:???
808は馬鹿じゃないだろ。

813 :nobodyさん:05/02/03 09:31:42 ID:???
>>807
apsはいいねぇ
phpも楽でいいよ〜
jspはしらねぇ〜けど、結構面倒そう。javaは設定が面倒だねぇ


814 :nobodyさん:05/02/03 10:32:11 ID:???
PHP
   素人お手軽Webプログラミング入門

ASP全般
   ある程度の能力者・経験者用。
   全般的になんでもこなし、極めれば、Javaテクノロジと互角に渡り合えるが、
   WindowsServer専用化ってのが痛いところ。monoに期待する。

JSP/Servlet/EJB/JSF
   達人御用達。開発者の能力次第では、あらゆる面でWeb系最強なのは間違いなし。
   でも個人でプログラミングしていると、ここまでヤル必要あるのか?という疑問が常にあり、開発の妨げとなる。

815 :nobodyさん:05/02/03 10:48:59 ID:???
>>814
思いっきり、業界の現状を理解していない、
うちの糞上司と同じ感覚だな(w



816 :nobodyさん:05/02/03 10:54:48 ID:???
>>815
プッ
PHPしかできないド素人が業界人のフリしてこんな時間に書き込みですか??
実際の業界の現状というと、新規案件はJava系一色だよ。おれが業界にいた半年前まではね。

817 :nobodyさん:05/02/03 11:09:06 ID:???
>>815>>816
>>809

818 :nobodyさん:05/02/03 11:56:45 ID:???
俺が業界に居た頃は、業務も趣味もCGI/Perlが主流だったぜ。

819 :nobodyさん:05/02/03 12:10:20 ID:???
余程、大規模なページでない限りは大差がない

820 :nobodyさん:05/02/03 12:15:09 ID:???
>>819
保守という面では、大差ありすぎだろ。

821 :nobodyさん:05/02/03 13:00:13 ID:???
>>820
そんなもんコード書くのスキルに大幅依存だろ

822 :nobodyさん:05/02/03 13:06:15 ID:???
何業界?

823 :nobodyさん:05/02/03 13:47:37 ID:???
>>821
処理と表示とコントロールロジックが分離できないPerl/CGIやPHPでは話にならない
こればっかりは、開発者のスキルが云々の問題じゃない。

824 :nobodyさん:05/02/03 13:58:55 ID:???
>>823
PerlやPHPにもMVCフレームワークが存在するご時世なのに・・・

825 :nobodyさん:05/02/03 14:02:27 ID:???
>>824
>PHP4ではあまりちゃんとしたカプセル化/隠蔽はできないので、ここでは変数名の重複が起こりにくくする程度の意味しかありません

826 :nobodyさん:05/02/03 14:04:14 ID:???
>>823
ギガワロスw
素晴らしい意見ですね。


827 :nobodyさん:05/02/03 14:08:47 ID:???
>>826
君自身の意見を聞かせてもらいたいですな。
MVCの本当の意味はなんなんでしょう?

828 :nobodyさん:05/02/03 14:12:06 ID:???
>>807-825
PHPとASP、JAVAの違いより、おまえらスレ違いだ。

PHPがJSPより優れている点って何ですか。
http://pc5.2ch.net/test/read.cgi/php/1070466594/
CGI VS PHP VS JAVA
http://pc5.2ch.net/test/read.cgi/php/1006006800/
ASP VS PHP
http://pc5.2ch.net/test/read.cgi/php/1013945931/


829 :nobodyさん:05/02/03 14:27:38 ID:???
まぁ単純に分離するだけなら、include使えばいいだけだしな。

830 :nobodyさん:05/02/03 16:44:03 ID:1pYIWrdl
はじめまして。t.phpをEUCで書いていますSJISで出力したいのですが、
mb_http_output('SJIS');
と一行書けばスクリプト内の日本語部分もすべてSJISとなりも文字化けしないのですか?
サーバはLinux のredhatです

831 :nobodyさん:05/02/03 16:58:23 ID:???
やればいいだろ

832 :nobodyさん:05/02/03 17:08:59 ID:1pYIWrdl
>>831
はい出来ました。
ただこんなに簡単に変換できるものなのかなと思いまして。
sjisに変換する一般的なやり方などはあるのですか?

833 :nobodyさん:05/02/03 17:40:49 ID:iLTZWlLI
$fp = fopen("test.html","w");
fputs($fp,$str);
fclose($fp);

ってやると、許可されてない権限とかエラーでて吐き出しが出来ないのだけど
普通は、ディレクトリを777にしておけば書き込みは出来ると思うのですが。
所有者もユーザレベルにしているし…。
PHPかApacheの設定でそんなんあったっけ?

834 :nobodyさん:05/02/03 18:09:44 ID:???
>>833
test.html自体のパーミッションはいくつになっていますか?

835 :nobodyさん:05/02/03 18:16:02 ID:???
>>833
PHPのセーフモードもしらべれ

836 :nobodyさん:05/02/03 18:40:57 ID:???
お前ら優しいな

837 :nobodyさん:05/02/03 18:44:04 ID:???
>>832
オマイでも簡単に使えるように作ってあるのさ

838 :833:05/02/03 18:46:57 ID:???
>>834
test.htmlは存在していません。ない場合は、自動作成されるはずなので。
test.htmlをためしに作って、666にして試してみましたがダメでした。

>>835
セーフモードはoffになっていました。

サーバを新しくたてたら、未知の壁にぶつかっていまつ orz
Core3にするんじゃなかった…。

839 :nobodyさん:05/02/03 18:48:56 ID:???
>>838
じゃあ777は?

840 :833:05/02/03 18:52:17 ID:???
>>839
777もダメでした。

/var/www/html/test.html

なんですが、 /varから777とかにしてみたがダメだった。
もうこんなんで職業プログラマなんて恥ずかしすぎる。

841 :nobodyさん:05/02/03 18:55:50 ID:???
test.htmlとそのスクリプトのphpファイル自体は同一のサーバにあるんですよね?
test.htmlとそのスクリプトのphpを同じディレクトリにおいて試すとか

842 :nobodyさん:05/02/03 19:12:16 ID:???
てか、この馬鹿・・・エラー表示を書かないよな

843 :nobodyさん:05/02/03 19:27:52 ID:???
おれはエスパーだからおk

844 :833:05/02/03 19:46:13 ID:???
>>841 >>842
Warning: fopen(/var/www/html/test.html): failed to open stream: Permission denied in /var/www/html/test.php on line 5
がエラーです。
test.htmlとPHPファイルは同階層においてあります。

845 :nobodyさん:05/02/03 20:08:05 ID:???
むー、エラーのログは何か吐いてるかな?

846 :833:05/02/03 20:12:52 ID:???
エラーログも、ディスプレイログと全く同じで、それ以外は吐き出されていません。
もうこうなったら、ソースで入れ直してみます。せっかくパッケージ管理に移行しようと
したのに…orz

847 :nobodyさん:05/02/03 20:14:17 ID:???
これはどうだろう
ttp://ns1.php.gr.jp/pipermail/php-users/2003-November/019486.html
環境Winでなkればスマソ

848 :nobodyさん:05/02/03 20:21:38 ID:1pYIWrdl
$sex = ($_POST['sex']=='male')?'男':'女';
これはどういう意味なのでしょうか?
私は$_POST['sex']がmaleなら男、
違うなら女を$sexに返すと思っているのですが。
これは何かの省略した書き方なのですか?

849 :nobodyさん:05/02/03 20:23:04 ID:???
>>833
php.iniのdoc_rootが正しく設定されているか確認。

で、system("whoami");とかやってみて、実行しているユーザーを正確に把握して、
きちんと整備し直してみる。

>>847
(Fedora)Core3だと言ってるが。

850 :nobodyさん:05/02/03 20:24:04 ID:???
>>848
マニュアルにterniary条件文として載ってる
ぐぐる時は、「三項演算子」で

851 :nobodyさん:05/02/03 20:25:38 ID:???
誤字: ternary

852 :847:05/02/03 20:26:10 ID:???
>>849
orz

853 :nobodyさん:05/02/03 20:30:39 ID:???
>>850
なんと検索していいかわからなかったもので、どうもありがとうございました。

854 :nobodyさん:05/02/03 20:41:19 ID:???
よくある三項演算子の使用例

$result =
($fp = fopen('foo.txt', 'ab')) ?
flock($fp, LOCK_EX) ?
ftruncate($fp, 0) ?
stream_set_write_buffer($fp, 0) ?
fwrite($fp, $string, strlen($string)) ?
flock($fp, LOCK_UN) ?
fclose($fp) ?
true : false : false : false : false : false : false : false;

if (!$result) print '何かエラー';



855 :nobodyさん:05/02/03 21:04:56 ID:???
あとラジオボタンのon offとかね

856 :nobodyさん:05/02/03 21:10:37 ID:???
>>854
みたことねぇぇぇえええええええええええええええええええええええええええええ

857 :nobodyさん:05/02/03 21:16:27 ID:???
>>856
ようは一行でかけるif文でつよ

858 :nobodyさん:05/02/03 21:24:59 ID:???
$fp = fopen('foo.txt', 'ab')

and flock($fp, LOCK_EX)
and ftruncate($fp, 0)
and stream_set_write_buffer($fp, 0)
and fwrite($fp, $string, strlen($string))
and flock($fp, LOCK_UN)
and fclose($fp)

or print '何かエラー';

これでいいじゃん

859 :854:05/02/03 21:32:08 ID:???
>>856
当然ですw

860 :nobodyさん:05/02/03 21:45:13 ID:???
>>833
つまり、833はパーミッションを理解してないいって事で終わりだな
勉強し直すか窓に帰れ

861 :nobodyさん:05/02/03 21:55:02 ID:???
>>833
なんかLinuxのパーミッションを理解していないとしか思えない
自分が何をやったかもわからずにディレクトリの権限とかも変更してそうだしね

うちもFC3を使ってるがphp.iniのdoc_rootの設定なし、セッションファイルを
tmpfsに置いている以外は弄ってないし、問題もない

862 :nobodyさん:05/02/04 00:28:02 ID:???
PHPってさ、配列が空の場合にforeachで回すとwarrningが出るのな。
一回もループしないで抜ければいいじゃんとか思うが。
ホント屑言語だな。

863 :nobodyさん:05/02/04 00:33:10 ID:???
そのPHPは別のだよ。スレ違い

864 :nobodyさん:05/02/04 01:59:06 ID:???
>>862
空の配列ではなくて 配列でない変数に対して だけどな。
配列なら配列として宣言しろと。

865 :nobodyさん:05/02/04 10:12:03 ID:???
>>864
それは正常な動作でエラーが出なくては困ると想うけどね
配列かどうかわからないならis_array()で判断してから放り込む
なりするしかないね
そもそもセットしていない変数を利用しているとかそういう事
ではないの?

866 :nobodyさん:05/02/04 10:40:07 ID:???
釣れすぎwww

867 :nobodyさん:05/02/04 10:59:33 ID:???
>>866
かわいそうな人だね


868 :nobodyさん:05/02/04 12:26:22 ID:???
いたたまれないな

869 :nobodyさん:05/02/04 12:29:17 ID:???
いくら他人を哀れんでもお前の地位は向上してませんから!m9(^Д^)プギャー

870 :nobodyさん:05/02/04 12:44:44 ID:???
板玉れない

871 :nobodyさん:05/02/04 12:51:17 ID:???
居た堪れない

872 :nobodyさん:05/02/04 16:43:09 ID:RhhqzTFg
ヘッダやフッタ部分のHTMLをPHPの

requireで呼び出して使いまわそうと思い、このような記述をし、

$footer = "http://".$_SERVER['HTTP_HOST']."/footer.php";
require $footer;

実機のWinにApacheをいれてテストすると以下のようなエラーがでました。

Fatal error: Failed opening required 'http://localhost/footer.php' (include_path='.;c:\php4\pear') in *****.php on line 88

同じものをウェブにアップしてそちらのサーバで確認したところ、きちんとフッタが表示されました。

なのでApacheかphpの設定ファイルかなにか実行ファイルが足りないとか、そういうことだとは思うのですが
ググってもなかなか解決方法が見つからなかったのでこちらで質問させていただきました。

どうすればバーチャルホストのほうでも正常に表示されるのでしょうか?

873 :nobodyさん:05/02/04 16:49:55 ID:???
ローカルにあるファイルをわざわざHTTPで読み出さねばならん理由を教えてくれ。

874 :nobodyさん:05/02/04 16:56:50 ID:???
>>873

http://jp2.php.net/manual/ja/function.require.php
(↓実際はincludeの項に書かれている)
 > "URL fopenラッパー"が 有効になっている場合
 > (デフォルト設定では有効です)、ローカルなパス名 の代わりに
 > URL(HTTP経由)を用いて読み込むファイルを指定することが可能です。

但し
 > PHP 4.3.0より前のバージョンのWindows版PHPは、
 > 現在この関数に関してリモートファイルアクセス機能をサポートしていません。
 > これは、allow_url_fopenを有効にした場合でも同様です。

まず、ググる前にPHPリファレンスを見て、関数の使い方が正しいか、
どのようなオプションで関数の挙動が変わるのか調べてみるべし
http://jp2.php.net/manual/ja/index.php

それでも動かなかったらまたこのスレにおいで

まあ>>873のいうことが一番ごもっともな意見だ

875 :874:05/02/04 17:03:28 ID:???
ごめん上のレスアンカーは>>872

876 :nobodyさん:05/02/04 17:05:28 ID:???
正規表現プログラム、というのをPHPで初体験しようとしている者です。
テキストエディタの検索で使ってるので「URLの表し方」とかそういうのは分かるのですが
PHPで正規表現を使い文字列の一部を取り出すにはどうすればいいのでしょうか?

$all = "今日も天気が良いので眠いな";

というような変数から「今日も天気が[.*]な」を検索し、左記の「[.*]」部分を文字列strに入れるには
どう組めばよいのでしょうか・・・?(この場合なら$strに「良いので眠い」を代入させたい)

多分凄く初歩的なことだと思うのですが初歩的すぎて正規表現解説ページで該当する箇所を
見つけられません・・・。ご存じの方よろしくお願いいたします。

877 :nobodyさん:05/02/04 17:13:51 ID:Edgmb0Vg
>>874

PHPを最新のものにしたら正常に表示されました。どうもありがとうございます。

>>873

ローカルパスで指定しているとウェブにアップするときに書き換えるのがめんどくさかったので
HTTPで開いてたのですが、普通だと皆さんどのようにしてるのでしょうか?

どこかに各ファイルへのパスを指定してあるファイルを用意して
それを毎回読み込んでフッタを表示させるようにし、
ウェブにアップする際にはそのパスを指定してあるファイルだけを
書き換える、という方法なんですかね?


878 :nobodyさん:05/02/04 17:19:17 ID:???
>>876
まずはココ
http://jp2.php.net/manual/ja/pcre.pattern.syntax.php

879 :nobodyさん:05/02/04 17:59:11 ID:???
>>877
ディレクトリ構造(DOCUMENT_ROOT以下、includeディレクトリなど)を本番と同じにしたテスト環境を用意する。

880 :軟式PHP:05/02/04 18:00:02 ID:???
>>876
$strValue = "今日も天気が良いので眠いな天気がなんとな";
preg_match( "/今日も天気が(.*)な/", $strValue, $match1 );
print $match1[1] . '<br>';
preg_match( "/今日も天気が(.*?)な/", $strValue, $match2 );
print $match2[1] . '<br>';

正規表現はマニュアルからだと難しいかもしれんから
http://www5a.biglobe.ne.jp/~n_rieko/perl/8.htm
とか簡単そうなところから勉強してみては?

881 :nobodyさん:05/02/04 18:15:19 ID:???
簡単な文字列置換だとstr_replace()を使うって手もある

882 :nobodyさん:05/02/04 19:16:34 ID:u3cic1J6
配列のキーと値を別々の配列に入れたいのですがarray_keysとarray_valuesで
それぞれの配列を作った場合、対応関係は保持されることが保障されているのでしょうか?

例えばこのような例を考えた時に
  $a = array('a' => 'apple', 'i' => 'iron', 'u' => 'ugly', 'e' => 'english', 'o' => 'only');
  print_r(array_keys($a)); print_r(array_values($a));
として自分で実験してみたら、結果が思い通りとなり順番どおりに並んでくれました。
 Array( [0] => a [1] => i [2] => u [3] => e [4] => o )
 Array( [0] => apple [1] => iron [2] => uly [3] => english [4] => only )
このように常に対応関係が保持されるのかされないのかご存知の方が
いらっしゃいましたらどうかよろしくお願い致します。


もし対応関係が保持されない場合は
  foreach ( $a as $key => $val )
  {
    $keys[] = $key;
    $vals[] $val;
  }
のようにすればできると思いついたのですが、もっと良い方法をご存知の方が
いらっしゃいましたらどうかよろしくお願い致します。

883 :nobodyさん:05/02/04 20:30:00 ID:E7qef8MC
すんごいくだらない質問なんですが
StrictなHTMLを吐き出すPHPスクリプトを作ろうと思い
<?xml〜を直に記入したらエラーになったため
<?php
print "<?xml〜";
?>
<!DOCTYPE〜>
<?php
本体
?>
と記述して事なきをえたんですが
設置後に見ると何故かHTMLソースの上に一行空白がありました。
これはどう対処すればよいでしょうか?教えて下さい

884 :nobodyさん:05/02/04 20:33:17 ID:???
>>883
XREA なら、空行は広告の所為だからどうしようもない

885 :nobodyさん:05/02/04 20:37:54 ID:???
エスパー乙

886 :883:05/02/04 20:44:21 ID:???
>>884
ローカルでテスツしています。

887 :nobodyさん:05/02/04 20:46:57 ID:???
つかXreaってShortopentag、Onなのか
共有なんだからデフォルトOffで好きなやつだけHtaccess弄ればいいのに

888 :nobodyさん:05/02/04 20:49:18 ID:???
888ゲット

889 :nobodyさん:05/02/04 20:49:49 ID:???
>>883
こう書いてみたが別に隙間なんか出てこないよ
PHP4.3.10ね
------------
<?php
print "<?xml
aiueo
?>";
?>
------------

隙間が出来るのはホントに上が1行空いてるからだと思うよ

890 :nobodyさん:05/02/04 20:56:24 ID:???
あるいはBOMかもな

891 :nobodyさん:05/02/04 21:28:39 ID:???
---空行---
<?php
?>
とか


892 :nobodyさん:05/02/04 22:04:54 ID:HCHebah7
$file = file("xxx.txt")

と同じ内容をwhileで書こうとおもい
下のように記述したのですが上手く動きません。
どこがおかしいのでしょうか??

$fp = fopen("xxx.txt","r");
while (!feof($fp)) {
$dat = "";
while (substr($dat, -1) != "\n"){
$dat .= fgets($fp,256);
}
$file[] = $dat;
}


893 :nobodyさん:05/02/04 22:06:35 ID:???
お前がもう救いようの無いくらいの馬鹿だからだよ

894 :892:05/02/04 22:11:15 ID:???
事故解決。できました・・。

895 :nobodyさん:05/02/04 22:14:38 ID:???
解決したのも不幸なような。

896 :nobodyさん:05/02/04 22:39:24 ID:???
PHPとはXMLをベースにしないと埋め込めないものなのでしょうか?
そしてPHPの<? ?>こういうのを埋め込んだら拡張子は.phpにしなければいけないのでしょうか?
どこを見てもそんな事が書いてなかったので質問させていただきました。

897 :nobodyさん:05/02/04 23:56:04 ID:???
>>896
何を言っているのかわからない。
PHPとXMLは直接関係無いぞ。

〜拡張子は.php〜別にどうでもいい・・・
Web鯖の設定さえできてれば、.htmlでもなんでも処理できる。Web鯖の設定ができていればね。

898 :nobodyさん:05/02/04 23:57:01 ID:JB/Xwm8r
今日、初めてPHPを触った初心者です。
バージョン5.0.3を日本語対応させようとしたんですけど、
文字化けしてしまいます。

php.iniでは、
default_charset Shift_JIS
mbstring.language Japanese
mbstring.internal_encoding EUC-JP
mbstring.http_input auto
mbstring.http_output SJIS
mbstring.encoding_translation On
mbstring.detect_order auto
mbstring.substitute_character auto
mbstring.script_encoding EUC-JP

日経ソフトウェア1月号に載っていた設定そのまんまです。
SJISやSift_JISなんて表記が混在していても大丈夫なんでしょうか。

バージョン4なら日本語化されているので、最悪そちらを使う、
という手もあるのですが、それでは敗北なので。(笑

どなたか教えてください。


899 :nobodyさん:05/02/05 00:06:11 ID:???
>>898
outputがSJISになってるが、ほんとにSJISでHTMLが出力されてるかソース表示して確かめよ。
SJISだったならばmetaタグにsjis指定を記述してブラウザに解釈させよ

>バージョン4なら日本語化されているので
初めて触ったのにこんな情報どっから仕入れてきたんだ?

900 : ◆Qjg53wwnQg :05/02/05 00:10:17 ID:???
http://pc5.2ch.net/test/read.cgi/php/1103636095/l100

901 :898:05/02/05 00:18:59 ID:???
早速のお返事、ありがとうございます。

バージョン4については、日経ソフトウェアに書いてあったのですよ。
1月号だから、今からは買えないけど、何ページにもわたって
書いてあったので、助かりました。

これから試してみます。


902 :nobodyさん:05/02/05 01:14:38 ID:H2lo0MBg
添付メールを送信するプログラムを
http://www.stackasterisk.jp/tech/php/php03_05.jsp
を参考に組んだのですが、OutlookExpressではちゃんと添付されていて
OperaのメーラーM2では、エンコードされずにバイナリ文字列がだーっと出てきます。
どうすればいいのでしょうか?


903 :nobodyさん:05/02/05 01:28:11 ID:???
>>902
そうならないようにしろよ。
お前がどうやって組んだかわかるエスパーはこの板にはおらん。

904 :nobodyさん:05/02/05 03:50:56 ID:???
>>903
エスパーなら前に一人いたぞ。

905 :898:05/02/05 05:40:44 ID:???
>>899
出力はEUCになっているみたいです。
ブラウザでエンコードをEUCに変更したらうまく表示できました。
以下、ソースを載せておきます。

<html>
<meta http-equiv="Content-Type" content="text/html; charset=euc-jp" />
<title>php基本のキ</title>
</head>
<body>
<?php print("Hello,World! 今日は天気だ"); ?>
</body>
</html>

メタタグを入れてみたんですけど、うまく行きません。
何がいけないのでしょうか。


906 :898:05/02/05 06:22:05 ID:???
>>905
本には、.phpはEUCでセーブするように、と書いてあったのですが、
試しにSiftJISでセーブしたら、うまく行きました。

もう、何がなんだか・・・(汗


907 :898:05/02/05 06:38:30 ID:???
できました。お騒がせしました。


908 :nobodyさん:05/02/05 15:35:45 ID:HfaJ2irn
よく画像やスタイルシートを指定する際に、ルートディレクトリを表す

/

を使い、

/css/〜〜.css

という指定の仕方をしているサイトがあります。
同じようなことをPHPでもやろうとしたのですが、

require("/file/hogehoge.dat");

このようにすると、かなり上の階層(/usr/home/****/ここが本来の場所/)の
指定になっているようでHTMLでの / と異なる挙動をしています。

この場合、どのように書き換えれば同じような動作(ルートディレクトリからの指定)を
させることができるのでしょうか?

909 :nobodyさん:05/02/05 15:41:02 ID:???
PHPって、なんでもっさりしてるんですか?
PukiWikiを使ってるとイライラするのですが、これはサーバのせいですか?

910 :nobodyさん:05/02/05 15:46:57 ID:???
define("ROOT_PATH","/usr/home/****");
require(ROOT_PATH."/file/hogehoge.dat");

とかしとけば今後環境変わっても便利

911 :nobodyさん:05/02/05 16:02:06 ID:???
>>908
なんで同じにせにゃならんのよ?
アホなこと考えないで正しい絶対パス指定か相対パスでも使え。


912 :nobodyさん:05/02/05 16:02:16 ID:HfaJ2irn
>>910
ありがとうございます。defineを使うのですね。
でもまだ少し疑問点があります。

hogehoge.datをいくつものファイルで読み込む必要がある場合、

define("ROOT_PATH","/usr/home/****");

もそれぞれのファイルに書く必要があるんでしょうか?
1回記述するだけですむ方法が思いつきません・・


913 :nobodyさん:05/02/05 16:04:27 ID:???
>>912
いちいち聞いてないでdefineがどういうものか先に調べれ

914 :nobodyさん:05/02/05 16:11:30 ID:???
しょうがないのでとりあえず各ファイルへのパスを指定する変数を
定義したファイルをひとつ作っておき、それは相対パスで読み込み、
それ以外はその定義ファイルから読み込んで対応することにしました。

私の疑問はその定義ファイルの位置を変更した場合にも対応できるように
ルートディレクトリから指定できないかなあと思っていました。
どうもありがとうございました。


915 :nobodyさん:05/02/05 16:26:55 ID:???
>>909
PHPが遅い?
こんなに高速で軽快な言語が他にあるのか?(w

916 :910:05/02/05 16:27:40 ID:???
>>914
んじゃ、
require($_SERVER["DOCUMENT_ROOT"]."/file/hogehoge.dat");
ってのはどうよ?

917 :nobodyさん:05/02/05 16:30:31 ID:???
>>909
鯖のせい・PukiWikiのせいのどちらか。

918 :nobodyさん:05/02/05 17:35:11 ID:???
スクリプトを作って「Ver 1.00」とか書くが、次にバージョンアップしたら、バージョンはなんて書けばいい?
ってか、決まりなんてあるのか?

マジくだらねぇスマソ

919 :nobodyさん:05/02/05 17:43:34 ID:???
>>918
メジャーバージョンとマイナーバージョンをどうつけるかは自由。

920 :918:05/02/05 17:59:50 ID:???
>>919
自由なのか…。

サンクス。

921 :nobodyさん:05/02/05 18:14:41 ID:???
>>918
それ以前に「Ver. 1.00」にするか、「Ver. 1.0.0」にするか悩まなかったか?
あるいは最初は「Ver. 0.1」から始めるべきかな?とか

922 :nobodyさん:05/02/05 18:23:55 ID:???
公開するものなら最初のリリースは1.0かそれに近いバージョンで出すべき。
というか、バグ取りして一応のレベルに達して1.0を名乗れるようになってから
公開するのが当然。
0.1とかじゃロクに出来上がってないものを利用者にテストさせる印象しかない。

923 :nobodyさん:05/02/05 19:12:29 ID:???
俺としては
・ソースコード公開以前→0.x.x
・ソースコード公開した→1.x.x
て感じかなぁ。
公開する気が全くなくても、「これならソース公開してもいけるかも」てなったら
1.0にする。

924 :nobodyさん:05/02/05 19:20:42 ID:???
それが普通だね。
本来、メジャーバージョン1未満は公開すべきではないし、
評価など目的があって公開するならバージョンをつけずに
PRとして出すべきだから。

925 :nobodyさん:05/02/05 19:42:51 ID:???
>>909
ここだけの特別な情報だから他のやつには言うなよ。
PukiWikiは遅い。間違いない。

926 :nobodyさん:05/02/05 19:57:19 ID:???
そうだよなぁ。
あんな重い思いしてまでウィッキーさんは使いたくはないな。


927 :nobodyさん:05/02/05 21:46:21 ID:H7vZqk2F
PHP4 + MacOS X 10.2.8環境で以下のソースを実行すると
signal Bus error を起こしてしまいます。
対処法としては2次元配列の代入元の値を変数ではなくて数値にすると
OKになります。


なにが問題なのでしょうか?

WindowsのPHP5では異常がありません。

//だめ
<?php
$n = 500;
$in = 999999;
for ($i = 0; $i < $n; $i++)
for ($j = 0; $j < $n; $j++)
$keys[$i][$j] = $in;

?>

//OK
<?php
$n = 500;
for ($i = 0; $i < $n; $i++)
for ($j = 0; $j < $n; $j++)
$adj[$i][$j] = 999999;

?>

928 :nobodyさん:05/02/05 21:55:43 ID:???
0.xはβとかαって感じだね。1.0でついに正式版みたいな。
ゾヌとか永遠にβ版だけどね。

929 :nobodyさん:05/02/06 00:19:19 ID:2wEgbafX
http://www.jpring.net/post/post.html
ここにあるようなPHPとmysqlを使った検索を作ってみたいのですが、
PHPをどう組み立てたらいいか全くわかりません・・・。
色々なサイトなどを見て、参考にしようと思ってもいいところが見つからなかったのでここに来ました。

930 :nobodyさん:05/02/06 00:35:20 ID:???
>>929
全くわからないなら何やってもムダ。諦めろ。

931 :nobodyさん:05/02/06 00:38:05 ID:???
>>929
全く分からんようだと参考サイトを見ても分からん気がするが。
どういう処理をすればいいのか問題を分割していってごらん。
1. フォームを表示
2. フォーム送信内容から検索結果を表示
2-1. フォーム内容からmysql用のSQL文を作成
2-2. mysqlへSQL文を送信
2-3. SQL実行結果を取得
2-4. 実行結果を画面表示
こういう風な分割を繰り返していくと、PHPで用意されている関数にまで分割することができる。
それを繋ぎ合わせたものが1つのスクリプトになるわけだ。

932 :nobodyさん:05/02/06 01:06:06 ID:???
>>931
アンタ・・・いいやつだな(・∀・)

933 :nobodyさん:05/02/06 01:57:10 ID:???
>>897
ありがとうございました!

934 :nobodyさん:05/02/06 10:34:14 ID:???
ファイル名から拡張子を出力する関数ってありませんでしたっけ?

935 :nobodyさん:05/02/06 10:53:28 ID:???
pathinfo()でも使っとけ

936 :nobodyさん:05/02/06 11:25:52 ID:???
まさにその関数です!
ありがとうございました!

937 :nobodyさん:05/02/06 16:34:11 ID:???
Perl範囲演算子みたいなのをPHPで表現するには、どうすればいいんでしょうか?
aからzまでを配列にぶち込んで、ランダムな文字列を作りたいのですが。

938 :nobodyさん:05/02/06 16:44:03 ID:???
>>937
・aからzまで配列にぶち込む
・乱数で文字列を作る。

以上。

939 : ◆JoKeR/NWTc :05/02/06 16:57:31 ID:???
srand();$str = range('a', 'z');
$str2 = "";
for($i = 0;$i < 10;$i++){$str2 .= $str[rand(0,25)];}

↑が実際動くかどうか分からんけど、
Perl範囲演算子みたいなのはrange()使えば実現できる

940 :nobodyさん:05/02/06 17:58:16 ID:???
>>939
どうもです。やってみます。

941 :nobodyさん:05/02/06 18:18:38 ID:5y+gVtnD
$ip = getenv('REMOTE_ADDR');
サイトを訪問した人のIPアドレスはこれで検出できたんですが、
ホスト名までは検出できないんでしょうかね?

$host_name = getenv('REMOTE_HOST');
こう書いてみたんですがうまく検出できません。

942 :nobodyさん:05/02/06 18:34:27 ID:???
$host = gethostbyaddr(getenv("REMOTE_ADDR"));


943 :nobodyさん:05/02/06 20:10:37 ID:???
>>942
なるほど。
PHPではREMOTE_HOSTは取得できないのですか!
サンクスであります!

944 :nobodyさん:05/02/06 20:25:02 ID:???
>>943
いや、鯖が必ずREMOTE_HOSTを引いて値を設定するようになっていれば
PHPで"REMOTE_HOST"で取得できるよ。普通そんな設定に鯖をしとかないけど。

945 :nobodyさん:05/02/06 20:37:06 ID:???
>>943
ちなみにgethostbyaddrを使うと、サイトの反応が遅くなるからね。

946 :nobodyさん:05/02/06 20:38:03 ID:GClGxaTK
$data[0] = array(size=>20,hoge=>2);
$data[1] = array(size=>10,hoge=>1);
$data[2] = array(size=>30,hoge=>3);
この場合、$data[num][size]を大きい順にソートし
2次元配列に、つまり最終的に、
$data[0] = $data[2] ←[size]=30
$data[1] = $data[0] ←[size]=20
$data[2] = $data[1] ←[size]=10
このようにソートさせたいのです。
なにか方法はありませんでしょうか。

947 :nobodyさん:05/02/06 20:49:35 ID:???
>>946
usort

948 :nobodyさん:05/02/06 20:57:31 ID:GLYJwer2
MySQL+PHPで掲示板の書き込み作ってるのですが、
データベースに書き込めるときと書き込めないときが出るようになってしまいました。
なんでですかね?

949 :nobodyさん:05/02/06 21:04:00 ID:???
>>948
マルチ氏ね

http://pc5.2ch.net/test/read.cgi/php/1064937268/614

950 :nobodyさん:05/02/06 21:04:50 ID:???
>>948
・書き込み内容によって不適正なクエリが発行。
・500人ぐらいで共有してる安鯖を使用しているため処理能力がアップアップ。

951 :nobodyさん:05/02/06 21:29:06 ID:???
>>948
月の引力の関係。
理科年表とにらめっこすれば解る。

952 :nobodyさん:05/02/06 21:43:23 ID:???
>>951
満月の夜はどうやらかきこめません

953 :948:05/02/06 21:55:09 ID:GLYJwer2
2つのテーブルに書き込んでて、
1つ目はいつも上手くいくのよ、で2つめの書き込みがたまに失敗する。
やっぱ月かな。

954 :nobodyさん:05/02/06 21:57:14 ID:???
アクセス解析を作っています。
リファラを記録する際に、「リファラが自分のサイトのコンテンツであれば記録しない」ということはできないでしょうか?

955 :nobodyさん:05/02/06 21:57:38 ID:???
>>953
呪いだな…

956 :nobodyさん:05/02/06 21:58:40 ID:???
>>955
まじない?

957 :nobodyさん:05/02/06 21:58:43 ID:???
>>954
記録する際に、リファラが自分のサイトのコンテンツであれば記録しなければいいのでは?

958 :nobodyさん:05/02/06 22:17:52 ID:???
>>957
お前頭いいな!!

959 :nobodyさん:05/02/06 22:39:06 ID:???
>>954
URLを配列かなんかに全部代入して、ifでひっかかれば弾く…ならいけるが、効率悪いかも。

960 :nobodyさん:05/02/06 23:10:36 ID:???
クッキー発行するとか

961 :nobodyさん:05/02/06 23:21:21 ID:???
アクセス解析という言葉を考慮すると、
「記録する際に、リファラが自分のサイトのコンテンツであれば記録しなければいい」
で、終わっちゃうんだよなぁ。。。
>>954が何に困ってるのか分からん。

962 :954:05/02/06 23:26:52 ID:???
>>961
言葉足らずですみません。
「記録する際に、リファラが自分のサイトのコンテンツであれば記録しなければいい」
というのはわかっているのですが、それをプログラムにすることが出来ないのです。

963 :nobodyさん:05/02/06 23:29:49 ID:???
>>962
だからどこがわかんねーんだよ…
まさかリファラが自分のサイトのコンテンツかどうか判断できないのか?


964 :954:05/02/06 23:43:56 ID:???
>>963
"URL"という言葉が抜けていましたorz
なので、もっと厳密に言えば「記録する際に、リファラが自分のサイトのコンテンツのURLであれば記録しなければいい」です。

>>959氏のご助言を参考に、下のような方法を考案したのですが、どこか違和感があります…。

$referer = $_SERVER['HTTP_REFERER'];
$my_site = array(サイトの全てのページのURLをつらつら);

for($i = 0;$i < count($my_site);$i++){
if($referer == $my_site[$i]){
exit;
}
}

965 :nobodyさん:05/02/06 23:55:04 ID:???
>>964
まずforループなんか使わずin_arrayを使えと

で、その方法だとわざわざ自分のサイトのページ全部登録しないとダメだろ
一番単純な方法として自分のサイトのルートアドレス(ex.http://www.example.com/~954/)
から始まるURL蹴るとかではあかんのかと

966 :nobodyさん:05/02/07 00:15:47 ID:???
if (stripos($referer, 'http://www.example.com/~954/') !== FALSE) {
exit;
}

967 :954:05/02/07 00:19:41 ID:???
>>965
…なるほど。
しかし、どのようにすれば実現できるのでしょう?
リファラをexplode()で分割したりするのでしょうか…。
方法がいまいちつかめません。(^_^;

968 :nobodyさん:05/02/07 00:23:36 ID:???
っと、すみません。
966さんのレスを読む前に書いてしまいました。(^_^;
書き込もうとしていた時にはまだレスがついてなかったので。。。

>>966
stripos()という関数を使えば実現できるのですか。。。
ありがとうございました。

969 :nobodyさん:05/02/07 00:26:59 ID:???
まぁ、なんだ、いろいろ考えてみたところで、
最近、REFERER吐かない接続者が多いんで、そこんとこヨロシク!
って感じですかね。

970 :nobodyさん:05/02/07 00:29:35 ID:???
stripos($referer, 'http://www.example.com/~954/') !== 0) or die();


971 :nobodyさん:05/02/07 00:31:20 ID:???
>>970
( ´,_ゝ`)プッ

972 :nobodyさん:05/02/07 10:58:43 ID:???
あぁ!!
最初に現れる位置だから用途が違うでしょうけど
preg_matchよりstriposの方が高速でしょうか?


973 :nobodyさん:05/02/07 11:48:18 ID:???
>>972
単純な比較と正規表現処理とだから、当然striposの方が速いんでないの?
数値で比較して安心したいなら、
print microtime();
for(〜){ 処理内容; } // 適当な回数
print microtime();
みたいな感じで実際試してみればいい。

974 :nobodyさん:05/02/07 12:30:23 ID:???
かなり違うね

strpos
0.61152000 1107746919
0.61356200 1107746919
preg_match
0.61358800 1107746919
0.62025600 1107746919

975 :nobodyさん:05/02/07 15:06:02 ID:6YQico4I
同じページ内で、まず表1を表示、次へボタンを押したら表1の部分を表2に
変えたいんですがどうすれいいでしょうか?

976 :nobodyさん:05/02/07 15:09:01 ID:???
Redhat7.3にPHPを先にインストールしてまして、あとからMySQLを
インストールしてみたのですがPHPで認識してくれません。
MySQLインストール後にPHPに認識させるためになにか設定等は
必要なのでしょうか?

977 :nobodyさん:05/02/07 15:09:02 ID:???
>>975
hidden で値でも飛ばせばぁ?

978 :nobodyさん:05/02/07 15:34:30 ID:???
>>976
RPMで入れたのならphp-mysqlてな感じのrpmも転がってると思うのでそれを入れる。
見つけられなかったら諦めれ。ソースから入れる手もあるが君にはまだ早い。


979 :nobodyさん:05/02/07 16:53:29 ID:???
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in .....
はどういう意味ですか?でどうしろ言われてるの?

980 :nobodyさん:05/02/07 17:15:03 ID:???
>>979
PHPの中の人がスクリプトを読んでいった時に、
〜行目で \ というここにあってはおかしい文字を発見した。
その行以前にコーディングミスがある筈なので、それを修正する。

981 :nobodyさん:05/02/07 18:13:26 ID:???
>>979
てめーは期待してねーキャラだからすっこんでろ
という意味。

982 :nobodyさん:05/02/07 18:15:57 ID:???
すいません、叩かないで下さい
あのですね・・

->

上の記号の意味を教えて欲しいんです・・
map {$_->[0]}
こういう風に使われているのですが

検索したのですが、やり方が悪いせいか全然出てこなくて
<=>これとか&&とかはいっぱい載ってたのですが・・

983 :nobodyさん:05/02/07 18:17:38 ID:???
includeしたスクリプトの中にある関数に
引数を渡すことは可能ですか?
可能であれば教えてください。

984 :nobodyさん:05/02/07 18:29:57 ID:???
>>982
オブジェクトのメソッドやプロパティにアクセスする演算子

ex) $obj->method();

>>983
やってみたら答えはおのずと出ると思う
やってみてムリだったらまた書き込んで

985 :nobodyさん:05/02/07 18:31:25 ID:???
:->

にっこり君

986 :nobodyさん:05/02/07 18:31:59 ID:???
>>982
それはPerlなのでPerlスレの方が良いかと。

>>983
includeの利用云々に関係無く、普通に関数を使う時のように引数を渡してあげてください。
includeでこだわる理由があるとすれば可変長引数を使ってたりするのかな?
その場合は、func_get_arg()等を使います。

987 :nobodyさん:05/02/07 18:52:15 ID:???
>>984>>986
レスどもです。引数は普通に渡せるのですね。
include("hoge.php('hoge')")
こんな感じでやってみたのですがエラーがでてしまいました。

>includeでこだわる理由
それはrequireの方がいいという意味ですか?
特にこだわりなどはないのですが。

988 :nobodyさん:05/02/07 19:08:28 ID:???
いや、includeとか関係なしに普通に引数を渡せばいいんじゃ

■func.php

function f($arg) { ...... }

■main.php

include('func.php');
f('arg');

989 :983:05/02/07 19:19:43 ID:???
ああっ!なるほど!成功しました。
何か勘違いしていたようです。
どうもありがとうございました。!

990 :nobodyさん:05/02/07 20:05:29 ID:???
勉強不足≠勘違い

991 :nobodyさん:05/02/07 20:09:16 ID:???
つかどう見ても勘違いじゃないだろ

992 :nobodyさん:05/02/07 20:20:56 ID:ugDz3ClP
MySQLと、PHPを連携させました。
そこで誰もが思う質問

●IEから、ユーザーの選択したデータのPHPロジック中への受け渡しはどうするのか?

●フェッチアレイした結果をIEに表示する際に、色つきかつ、罫線をつけるには?

このあたりいいサンプルがあるサイト、または、方法教えてであります

993 :983:05/02/07 20:22:14 ID:???
>>990-991
自分も後から「勘違い」は使い方が違ったなと思いました。
そして突っ込みが必ず来るだろうなと。
インクルードしたら、インクルード元にインクルード先のスプリクトが
書かれているような振る舞いになるのをすっかり忘れていました。
>>990さんの言うとおり、これも勉強不足の内ですので、
どうか目を瞑っておいてください。

994 :nobodyさん:05/02/07 20:28:41 ID:???
>>992
今から開いてる本屋行ってPHPの入門書とHTMLの入門書買って来い
ここがくだらねぇ質問スレといえどもあんまりだぞ・・・_| ̄|○

995 :nobodyさん:05/02/07 20:28:45 ID:???
>>992
簡単だよ
まず、沢山のマニュアルを読む

996 :nobodyさん:05/02/07 20:31:35 ID:???
>>992
●$_REQUEST
●echo '<font color=#FF0000>'.フェッチアレイした結果.'</font><hr>';

997 :nobodyさん:05/02/07 20:32:32 ID:???
>>992
確かに誰もが一番最初の最初の最初は知らないが・・・

998 :nobodyさん:05/02/07 20:40:39 ID:???
>>992
>MySQLと、PHPを連携させました。

させたんかいっ!
お前は、パンツはく前にズボンをはく口だな(w

999 :nobodyさん:05/02/07 20:41:28 ID:???
CSSで  
       ■■■■■■■■■■
       ■            ■
       ■   画像のりんく ■
       ■            ■
       ■            ■
       ■■■■■■■■■■
       httm:文字ののりんく

という風にしたいのですが
どのようにすればいいですか?

1000 :nobodyさん:05/02/07 20:42:05 ID:???
>>999
千ゲットそして最悪なミスしてすいません

1001 :1001:Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。

240 KB
★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.02.02 2014/06/23 Mango Mangüé ★
FOX ★ DSO(Dynamic Shared Object)