トップページ⇒php
1001コメント314KB

【PHP】質問スレッドpart21【php】

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001nobodyさん04/08/27 18:00ID:???
・PHP全般の質問スレです。
・新規質問の方は上げてください。age進行でお願いします。
・質問する際には環境も明記。
・正しい日本語で分かりやすく。
・レスがつかないからって逆切れする厨お断り。
・解決しなくてもこたえてもらったら礼を。


■本家
 http://www.php.net/

■日本 PHP ユーザ会
 http://www.php.gr.jp/

■PHP マニュアル
 http://www.php.net/manual/ja/

■PEAR マニュアル
 http://pear.php.net/manual/ja/

過去スレ, 関連スレ等>>2-4
085284804/09/14 03:05:38ID:???
>>851
ありがとうございます。
間違えてPerlのページを参考にしてしまったようです。
085382804/09/14 07:28:12ID:???
>>833
すみません

<?php
session_start();
echo session_id();
session_unset();
?>

とだけ書いて、何度実行しても
同じセッションIDになってしまいます。
順番とかが間違ってますか?
0854nobodyさん04/09/14 07:31:38ID:DJLMJCnC
質問させてください。
fedora core2 に PHP5.0.1をインストールしたいのですが make でエラーが出ます。
configure はとりあえずオプションなしで通しました。
エラーメッセージ
/home/hoge/download/php-4.3.8/ext/standard/info.c: 関数 `php_print_info' 内:
/home/hoge/download/php-4.3.8/ext/standard/info.c:653: internal compiler error: セグメンテーション違反です
完全なバグ報告を送って下さい。
適切ならばプリプロセス後のソースをつけてください。
<URL:http://bugzilla.redhat.com/bugzilla>; を見れば方法が書いてあります。
The bug is not reproducible, so it is likely a hardware or OS problem.
make: *** [ext/standard/info.lo] エラー 1

PHP4系でも 同様に make で同じエラーが出ます。
085585404/09/14 07:33:41ID:DJLMJCnC
ごめんなさい ↑のエラーメッセージが php-4.3.8になってますが
5系でも同じエラーメッセージが出る状態です。
0856nobodyさん04/09/14 07:59:25ID:???
>>853
昔どこかで見たような気がする。
以下のように明示的にセッションID を変更してみては?

session_start();
echo session_id();
$tmp = $_SESSION;
session_destroy();
session_id(md5(uniqid(rand(),1)));
session_start();
$_SESSION = $tmp;
0857nobodyさん04/09/14 08:56:19ID:???
>>853
>session_unset -- 全てのセッション変数を開放する
セッション変数だけでセッションIDをあぼーんするとは載ってないぞ
session_regenerate_idでちゃんと変わるからもっかい確かめて見れ
085882804/09/14 09:23:17ID:???
>>856
できましたー
ありがとうございます!
echoがあると2回目のsession_startで警告がでるので
そこだけ修正しましたー

>>857
変わらないっす。どこかおかしいでしょうか?

<?php
session_cache_limiter("nocache");
session_start();
echo session_id();
session_regenerate_id();
?>

0859nobodyさん04/09/14 11:42:04ID:zAdAGGge
php5.0.1を入れようとして、configure に「--with-apxs=/usr/local/apache/bin/apxs」
をつけると、
checking for Apache 1.x module support via DSO through APXS...

Sorry, I was not able to successfully run APXS. Possible reasons:

1. Perl is not installed;
2. Apache was not compiled with DSO support (--enable-module=so);
3. 'apxs' is not in your path. Try to use --with-apxs=/path/to/apxs
The output of /usr/local/apache/bin/apxs follows
./configure: /usr/local/apache/bin/apxs: not found
configure: error: Aborting
とエラーになってしまいます。

1. Perlは、「which perl」でperlのパスがでるし、そもそもウェブ上でperlのcgiが動いてます。
2は、php4を、httpd.confの中で、「LoadModule php4_module libexec/libphp4.so」してるので、問題ないかと
思います。
3は、確かに、そこにapxsがあるのを確認しました。

で、不思議なのは、現在、php4で、「--with-apxs=/path/to/apxs」で動いていて、
前に一度、「--with-apxs=/path/to/apxs」付きでphp5.0.1が問題なくインストールできたということです。
(事情があって、一度PHP4に戻しましたが)

つい機能、perlをソースからインストールしたのが関係してるのでしょうか?

どなたか、解決方法をご存じのかた、教えていただければ幸いです。
086085904/09/14 11:43:31ID:???
「つい機能、」⇒「つい昨日、」の間違いです。すみません。
0861nobodyさん04/09/14 12:28:00ID:???
>>859
perl をソースからインストールして、/usr/local/bin/perl になっているのに、
/usr/local/apache/bin/apxs の一行目が

#!/usr/bin/perl

になっているとか。
0862nobodyさん04/09/14 12:33:21ID:???
DOM XML関数の質問です。

$dom = domxml_new_doc ("1.0");
$hoge = $dom->create_element ("hoge");
$hoge_text = $dom->create_text_node("aaa<br />bbb");
$hoge->append_child($hoge_text);
$dom->append_child($hoge);

を$dom->dump_fileで保存すると
<hoge>aaa<br />bbb</hoge>
と<br />が「<br />」と置き換わってしまいます。
これを回避する方法ってあるのでしょうか?
086385904/09/14 13:03:25ID:???
>>861
ビンゴ!
#!/usr/bin/perl5
になってた。(これ消してたのね)
さんくす!
0864nobodyさん04/09/14 13:24:47ID:???
>>862
DOMをもう少し勉強する。
brはエレメント。
0865nobodyさん04/09/14 13:59:56ID:???
質問します。
PHPでPostgresの定義済み関数(ストアド)を動かすという
サンプルソースがあるようなサイト、書籍がありましたら
教えてください。よろしくお願いします。
086685404/09/14 14:25:18ID:???
os再起動したら うまくいきましたorz
0867nobodyさん04/09/14 14:32:52ID:???
>>858
それだとWarning吐くハズなんですが…
うちでは下ので普通に変わりますよ

<?php
session_start();
$old = session_id();
session_regenerate_id();
echo "old: $old <BR> new: ";
echo session_id();
?>
0868nobodyさん04/09/14 15:01:56ID:???
>>867
それってそのスクリプト内だけじゃない?
そのページをリロードすると
oldのほうは前といっしょじゃない?
0869nobodyさん04/09/14 15:13:38ID:???
<br />が「<br />」
<br />が「アンドlt;br /アンドgt;」
です。


>>864
もう少しヒントを、、、
aaa<br />bbbを直接テキストノードに入れるのは無理って事でしょうか?

$dom = $dom->first_child();
echo $dom->get_content();
でソースを確認すると問題なく<br />になっているので
$dom->dump_fileで書込む時に<br />が「アンドlt;br /アンドgt;」に強制的に変換されてますよね。
$dom->dump_fileの部分が原因と考えて良いのでしょうか?
0870nobodyさん04/09/14 15:38:54ID:???
>>868
クッキーに残ってるだけな希ガス
087186404/09/14 15:46:51ID:???
>>869
<hoge>aaa<br />bbb</hoge> は
hogeというエレメントが
aaaというテキストノードと
brという中身が空のエレメントと
bbbというテキストノードを持ってるということ。

つまり、aaaというテキストノードを作ってhogeにappend_child
brというエレメントを作ってhogeにappend_child
bbbというテキストノードを作ってhogeにappend_child
という手順になるはず。
0872nobodyさん04/09/14 16:28:13ID:Gl/Y6vfs
質問です。

GD使って001.jpgをリサイズして別名002.jpgとして保存します。
このとき002.jpgの画像が著しく汚く圧縮されてしまうのですが、
もっと綺麗に書き出す方法はあるのですか?お願いします。
087386204/09/14 16:28:46ID:???
>>871

そういう事だったんですね。
これでやりたい事が実現できそうです。
ありがとうございました。
0874nobodyさん04/09/14 17:18:46ID:???
>>872
標準の"リサンプル"でも不満なら、GD以外を使う
087587204/09/14 18:02:36ID:???
imagecreatetをimagecreatetruecolorにしたら解決しました。
すいませんでした。
0876nobodyさん04/09/14 19:11:50ID:Mbuhgwtm
メ−ルで物語を送信しているのですが、希望者が増え、送信するだけでも
大変な作業になってきました。これを自動化しようと考えています。
希望者がメルアドを記入しクリックするだけで、物語(全6話なので一日おきに
一話づつ)を配信できるシステムにしたいのですが、どういったプログラムをくめばいいのか
わかりません。どうか教えてください。よろしくお願いします。
0877nobodyさん04/09/14 19:15:35ID:???
>>876
メルマガじゃあかんのかと
0878nobodyさん04/09/14 19:24:14ID:???
>>876
http://pc5.2ch.net/test/read.cgi/hp/1095088431/69-70+72

手作業でやってなさい。
0879nobodyさん04/09/14 19:36:49ID:???
>>876
定期的に締め切りを定めて、その間に登録した人に送るって
スタイルでも良いと思うけどな。それを周期的に繰り返す。
1日1話というのもそうだけど「待つ楽しみ」もあるかと。

登録に合わせるなら、登録メールアドレス毎に現在何のシリーズを購読中で
配信するのは何話なのかを管理し、1日1回その配信リストに従って配信&リスト更新。
配信先が多大な場合は、シリーズ○話を配信する仕組みだけ独立させておいて、
配信はそのリストに登録することによって行う。順序やタイミングは抜けや重複配信
にならないようにね。簡単なシーケンス図(形式はどうでも)を書いて視覚化すると良い。

0880nobodyさん04/09/14 20:48:00ID:???
>>876
日付ごと話ごとのあて先リストファイルを作ってみたら?
たとえば yyyymmdd_n.dat (y:年 m:月 d:日 n:話)みたいなファイル名にして、本日 14日に申し込んだ人は、

20040914_1.dat
20040916_2.dat
20040918_3.dat
20040920_4.dat
20040922_5.dat
20040924_6.dat

にその人のアドレスを追記しておいて、cron で毎日その日のあて先ファイルの内容を BCC にした
メールを送信するようにするの。
そして処理したファイルは削除する。

そうすれば、登録スクリプトもメール送信スクリプトもかなりシンプルになると思う。
アドレスの削除処理は面倒だけどね。
088183704/09/14 22:32:15ID:???
レスが遅くなって申し訳ありません。

>>841 様
ローカルドライブにネットワークのドライブはマウントできないみたいでした。
調べ方が足りないのかもしれませんが、調べたことは試した状態です。

>>843 様
言葉足らずで誤解を招いたようで申し訳ありません。
物理的な増設は無理なので共有させています。
PHPで表示するのは、FTPサーバのドライブとしてネットワーク外から参照するためです。
接続自体はハブで接続されていて、FTPでのネットワークドライブへのアクセスはできています。

PHPで共有(マウント)されたドライブの空き容量は取得できないでしょうか。

0882nobodyさん04/09/14 23:00:48ID:+yRv8JBt
数千行あるテキストの中から、特定のワードを含んだ行だけを
削除するスクリプトを組んでいたのですが、どうも途中で
「サーバーが見つかりません」と表示されてしまいます。
$lines = file("sample.txt");
$fp = fopen("sample.txt", "w");
で読み込んで、0から最後の行まで一行ずつ調べて
書き込んでいます。
途中までは正しく書き込めているので、動作自体は
正しいと思うのですが、途中で止まってしまうので、
後半の部分が吹っ飛んでしまって困っています。
どのように対処したら良いのでしょうか…
0883nobodyさん04/09/14 23:07:02ID:???
ソースを見せな解らんちゅうに。。
0884nobodyさん04/09/14 23:23:05ID:???
>>882
共有鯖じゃねーの?
途中で殺されてる気がするが。
0885nobodyさん04/09/14 23:30:42ID:+yRv8JBt
>>883さん
すみません。こんな感じです。

$logfile = "test.txt";

if($_POST['xurl']){
$xurl = $_POST['xurl'];
$lines = file($logfile);
$LINENUM = count($logfile);
$fp = fopen($logfile, "w");
flock($fp, LOCK_EX);
for($i = 0; i <= $LINENUM; $i++){
if(!preg_match("/$xurl/i", $lines[$i])){
fputs($fp, $lines[$i]);
}
}
fclose ($fp);
}

>>884さん
共有鯖です。30秒以上かかると強制終了なのですが、
この場合は15秒くらいで止まってしまいます。
何とか効率の良い方法は無いでしょうか…
0886nobodyさん04/09/14 23:41:04ID:???
file()やめてwhileでまわしながら逐次行コピーしてみたら?

ちなみにphpのmax_exec_t以外にもリソース制限はある。
共有鯖で数千行のファイルを置換するような非常識な厨房に対応するため。
0887nobodyさん04/09/14 23:48:32ID:???
>>885
鯖の公開仕様をよく読めよ。cpu使用率や使用時間などで止められることがある。
厨房だらけの共有サーバならいいが、普通の人達が使ってる共有サーバなら、
そういうイカレた処理はやめてやれ。
あとpreg_もやめて、stristrとか他のを使ったほうがいいだろう。
それでも駄目なら一回ごとの量を決めて分割処理するしかないな。
0888 ◆.jC7ANgFY. 04/09/14 23:56:52ID:???
根本的な解決にはなってないけど同じことは
こう書いたほうが速いと思う。

$logfile = "test.txt";

if($_POST['xurl']){
 $data = implode("\n", preg_grep("/$xurl/Si",
  explode("\n", file_get_contents($logfile))));
 fwrite($fn = fopen($logfile, 'w'), $data);
 fclose($fn);
}
0889nobodyさん04/09/14 23:57:27ID:???
すえひろがりget, zuzaa
0890nobodyさん04/09/14 23:59:28ID:???
>>888
お前も共有サーバーは使わないで呉。

>>889
ついでにお前もだ。
089188904/09/15 00:01:02ID:???
自分のホメパゲ作るほど暇ないよ orz . . .
0892 ◆.jC7ANgFY. 04/09/15 00:23:08ID:???
>>890
そもそも重い処理を共有鯖でやる気はない。
私は同じ処理でもこうしたほうがいいと提示しただけ。

# そんなに重いのなら私ならMySQLに投げ入れる
0893nobodyさん04/09/15 00:57:33ID:CedxfwLg
質問です。
mail関数を使い送信したメールがPC用メールアドレスには届くのに携帯用メールアドレスには数時間後に届いたり、全く届かなかったりします。
これはなぜでしょうか。また、対策はあるのでしょうか。
どなたかご教授頂けると幸いです。
OS:redhat9
コード:mail($宛先, $タイトル, $本文, "From:[email protected]");
バージョン:PHP-4.2.2
0894軟式PHP04/09/15 01:08:56ID:???
ただの遅延だと思われ。
全く届かないってのは怪しいなぁ。一気に沢山送信してない?
携帯に一気にメール送信するとキャリアのメールサーバーにブロックされるよ。
0895nobodyさん04/09/15 01:14:37ID:CedxfwLg
ご返答ありがとうございます。
メール送信してるのは携帯向けに1通のみなんです。
遅延ならしょうがないですね。
0896nobodyさん04/09/15 02:38:45ID:???
>>888
特定のワードを含んだ行を削除するのだからその処理だと特定のワードを
含む行を取り出すことになるような気がするが・・・。

>>886 や >>887 が言いたかったのは、多分、file_get_contents や file を
使って巨大なファイルを開いた場合、メモリが大量に必要になり、共有サーバ
では他に迷惑がかかるということ。

例えば、以下のように一時ファイルに書き込んで処理を行うとメモリの使用量は
少なくて済む。

$fp1 = fopen($logfile, "r");
$fp2 = fopen($tmpfile, "w");
while (! feof($fp)) {
  $line = fgets($fp1);
  if (! stristr($line, $xurl)) {
    fwrite($fp2, $line);
  }
}
fclose($fp2);
fclose($fp1);
rename($tmpfile, $logfile);
0897nobodyさん04/09/15 02:55:11ID:???
PHPというか、正規表現の話になってしまいますがここでいいでしょうか?

if (!ereg("^[0-9]{1,4}",$hoge)) echo ”err!”;
で$hogeが0〜9999の範囲の数字かどうかチェックしたつもりになっていたのですが、
たとえば、「50a」でもチェックをパスしてしまいます。
ニューメリックチェックを正しく正規表現でするにはどうすればよいのでしょうか?
0898nobodyさん04/09/15 03:14:24ID:???
> # そんなに重いのなら私ならMySQLに投げ入れる

恥の上塗りw
0899nobodyさん04/09/15 03:19:56ID:???
>>897
正規表現道場@2ch Part3 s/煽り|荒らし/あぼーん/g
http://pc5.2ch.net/test/read.cgi/php/1069245758/
0900nobodyさん04/09/15 03:28:07ID:???
>>897
もとデータによるんじゃない。
^[0-1]{1,4} だと先頭に4桁の数字があればあとに何が続こうとTrueになるので、^[0-1]{1,4}$と
書くのが普通だとは思うけど。
is_numeric(); と $len = strlen(); if ($len < 5); で十分なこともあるかな。
0901nobodyさん04/09/15 03:33:38ID:???
>>900
先頭の数だけ()で取り出して、さらに評価というのもばかげてるしな。
あと、\d{1,4}のチェックなら、ユーザが全角で入力する場合を想定して
コンバートかけたほうがいいこともある。趣味グラマなら別にいいんだが。
0902nobodyさん04/09/15 03:43:05ID:???
>>898
もしや帰ってきた本7か?!
おれは待っていたぞ!
090389704/09/15 03:44:05ID:???
>>899
PHPも正規表現も昨日からはじめたばっかりで、
いろいろ読んでると正規表現は言語による方言?が多そうだったのでここに書きました。
似たような件なら次からはそこの方がいいのでしょうか?

>>900
なるほど。
$でこれで終わりだよと宣言すればいいのですね。
やってみたらうまくいきました。
ありがとうございました。
それと調べたつもりでしたが、is_numericあったのですね。。。
見落としてましたorz
090489704/09/15 03:47:37ID:???
>>901
全角対策についてはフォームでFEPがオンにならないように対処しました。
といっても、コピペには対応できないわけですが。
やぱチェック前に半角変換したほうが確実ですね。
処理追加します。
ありがとうございました。
090583204/09/15 04:54:05ID:YiP4QPmp
遅まきながら…
db、PHP共にeuc-jpにしたら何の問題もなく動きました。
ありがとうございました。
0906nobodyさん04/09/15 05:51:58ID:???
クライアント側では確証ないからなあ。
面倒でもサーバ側でチェックするしかないんだよね。
0907nobodyさん04/09/15 08:08:52ID:???
空のファイルを開こうとすると
Warning: fopen(): SAFE MODE Restriction in effect.
というエラーがでて開けません。。
パーミッションは777でやってますが、どうしたらいいでしょうか?
よろしくおねがいします
0908nobodyさん04/09/15 08:29:18ID:???
この状態でファイルを開くと危険なので
Warning: fopen(): SAFE MODE Restriction in effect.
というエラーを出したのですが開発者に気付いてもらえません。。
必要十分なメッセージを送ってるつもりですが、どうしたらいいでしょうか?
よろしくおねがいします
0909nobodyさん04/09/15 08:49:45ID:???
>>908
気づかないですみません。。。
新しくファイルを作るにはどうしたらいいのですか?
よろしくお願いします。。。
091090704/09/15 09:08:50ID:???
すみません。書き忘れてました
mkdirで新規ディレクトリを作り、そこに新しいファイルを生成したいのですが
できないのです
よろしくお願いします。
091190704/09/15 09:27:42ID:???
ついでに、
新規ディレクトリを作ってパーミッション777に設定しても
ディレクトリを開く事すらできません^^;
0912nobodyさん04/09/15 09:35:22ID:???
>>908
PHPの中の人も大変だな。
091390704/09/15 09:49:50ID:???
根本から間違っていました
mkdirしてパーミッションを707にしたいのですけど
どうしたらいいのでしょうか?
よろしくお願いします
091490704/09/15 11:41:10ID:???
事故解決しました。
0915軟式PHP04/09/15 11:44:30ID:???
事故ガクガク(((( ;゚Д゚))))ブルブル
0916nobodyさん04/09/15 12:11:20ID:dKmLYC94
質問の意味が全く違うかもしれませんが

誰か「絞込み検索」のフリースクリプトが
置いてあるサイト知らない?
0917nobodyさん04/09/15 12:31:44ID:UvnPqyoT
変数が、配列変数か、そうでないかを調べるにはどうすれば良いでしょうか?
0918nobodyさん04/09/15 12:42:56ID:???
is_array()
0919nobodyさん04/09/15 12:57:04ID:MDFIDuDl
調べるということがおまい等は出来ないのかと。。
0920nobodyさん04/09/15 14:02:35ID:???
>>919
【PHP】質問スレッドpart21【php】
0921nobodyさん04/09/15 14:30:23ID:???
初心者ですが質問させてください。
php.iniってどこに置いたらいいんですか?
0922nobodyさん04/09/15 14:41:06ID:???
>921
適切なとこ。マニュアル嫁
0923nobodyさん04/09/15 15:35:11ID:???
>>921
読めと言われても困るだろうからね。
ttp://php.s3.to/man/faq.installation.html#faq.installation.phpini
0924nobodyさん04/09/15 15:48:32ID:???
意外と文盲だったりして・・・・
0925nobodyさん04/09/15 15:52:44ID:???
>>916
検索用のSQLを生成するってことか?
サニタイズ後に普通に文字列結合でやってるけどな。
0926nobodyさん04/09/15 16:41:09ID:???
>>924
きわい
0927nobodyさん04/09/15 17:12:03ID:???
このスレの最初の方に「PHP4 でオブジェクト指向のプログラムを書くと、PHP5に移行したとき
書き直しが必至」というレスがありましたが、俺がハマってるところはバージョンの違いに関係ありますか。
==========
【 状況 】 PHP5 で、以下のようなものを作った。
[class file]
class A {
 var $hoge;
 var $fuga = array();
//  以下、メンバ変数とか配列の初期化のみ。子クラスで使われる変数と配列はすべてここで宣言されている。
}
class B extends A {
 function B {
  あんなこととかこんなこととか;
 }
}
class C extends A {
 function C {
  そんなこととか;
 }
}

[another file]
//  クエリによって、B か C のいずれかのクラスからオブジェクト $obj を生成。
function channel2($obj) {
  $obj->$hoge = "ひろゆき";
  $obj->$fuga = "2ちゃんねる";
}
【 問題点 】 PHP4.1.2 の環境では想定していた動作が得られない。
ユーザ定義関数の外からメソッドを呼び出すことはできるが、ユーザ定義関数内でメンバ変数への値の代入が行われていないようだ。
以上、よろしくお願いしましま。
0928nobodyさん04/09/15 17:28:01ID:???
object型がデフォルトで参照渡しになったのは5からじゃなかったっけ。
4だと function channel2($obj){} とやると、ローカル変数 $obj は参照ではなく、
複製される。ので、関数内で $obj を弄っても、呼び出し側の object は変更されない。
function channel2(&$obj){} と書いて参照渡しにする必要がある。
092992704/09/15 17:39:49ID:???
>>928
ををっ。わかった&できた。
完璧です。ありがたう。
0930nobodyさん04/09/15 17:46:16ID:???
> 俺がハマってるところはバージョンの違いに関係ありますか

そりゃPHP5準拠で書かれたスクリプトがPHP4で動かない可能性は高いでしょ。
なんの問題もなく動いたらむしろ何じゃそらって思うよ。
しかし、上の例だと & で参照を明示する4向けのスクリプトは変更なしで5でも動く。

そういうわけで、バージョンによる互換性のなさに嵌ったというよりは、
単に、PHP4じゃ動かないスクリプトを書いちゃいましたってことじゃないかな。
少なくとも、

> PHP4 でオブジェクト指向のプログラムを書くと、PHP5に移行したとき書き直しが必至

PHP4で書いたからPHP5じゃ動きませんでしたっていう事例ではないと思う。
0931nobodyさん04/09/15 17:53:14ID:???
>>930
アクセス関係の修飾子つずに、予約語にも気を使ったつもりが、
$hoge->foo()->bar(); みたいのでこけたことはある。
けどphp4から5へは思ったよりきっちり下位互換されてて変更なしで動くな。
# pearなんかもそうだけど、php4でOOPの限界に挑戦してるとエラー出る印象。
0932nobodyさん04/09/15 18:00:56ID:???
>>929
4だと、関数の戻り値がObject型のとき、

&function ret_foo() {
  $foo = new Class;
  return $foo;
}
$bar =& ret_foo();

とやらないと、最終行でObjectがドカーンとコピーされちゃって処理負荷になるので
これにも気をつけてね。
0933nobodyさん04/09/15 18:02:15ID:???
&amp;の場所違うし、、。
function &ret_foo() {} ね。
0934nobodyさん04/09/15 18:08:38ID:???
>>932
関係ない話ですまないが&nbsp;でインデントしたコードは
IEなんかでコピペした場合はそのまま動いて便利なんだが
うちのJaneでは、「&#160;」としてコピーされてしまうので
全角空白でインデントされているのと利便性は変わらないな
ということに気づいた今日だった
0935nobodyさん04/09/15 18:12:18ID:???
Janeは糞だったんか。。。
0936nobodyさん04/09/15 18:14:43ID:???
なんか珍しく普通のレスが返ってる気がしまつ。
まともな質問者にはこのスレでもちゃんと回答が出るということか。
0937nobodyさん04/09/15 18:16:42ID:???
それはどうか知らんが、たしかに面白質問者は面白回答を引き寄せる何かがあるなw
093892704/09/15 18:36:04ID:???
>>932
ポインタがわからなくて C で 3回挫折した俺だが、その説明はうまくイメージできた気がする。
OOP は初めてだけど、これからちょこちょこ組んで自分のものにしますわ。

>>930
勢いでローカル環境をバージョンアップしてしまったのです。
借りてる鯖はバージョンが古くて PEAR もなければたいしたモジュールも入ってないので、
せめて自宅の環境だけは最新にしてみたくなったのさ。

友人のサイトのスクリプト改造とか手伝ってる中で OOP をちゃんと理解せんといかんなあと
思い立ったのが PHP5 を入れた理由の一つだけど、今回つまずいたのも一つ勉強になったから
まあこれでいいやと思ってる。

>>936-937
次回がんばります。
0939nobodyさん04/09/15 19:00:09ID:???
正直、ポインタで挫折する人が多いとか言うが、意味がわからん
ただの間接アドレッシングだろ

何が難しいことがあるんだろうか
0940nobodyさん04/09/15 19:20:37ID:???
>>939
お前はhttp://pc5.2ch.net/tech/kako/1040/10408/1040820373.htmlの54だな!
まあポインタはCの入門書で文法覚えた段階では「どうやって何に使うのか」ってのは
そのときは分からないままだからな。初心者がポインタが理解できないというのは正しいんだ。
そこで止まるかほっといて進むかだと俺は思う。
まあPHPのリファレンスはポインタではないのでスレ違いはこのへんで止めるが。
0941nobodyさん04/09/15 19:28:04ID:???
オイラは>>939じゃないが、ポインタの方が直感的に分かり易い。
つーかオイラは、CのポインタよりPHPのリファレンスの方が分かり辛い。
今やってるのはディープコピーなのかシャローコピーなのか
いつも不安になりながら書いてる。
PHPはCとは違うんだし慣れるしかないやね。
で、何事も無かったかのように次の質問どうぞ。
0942nobodyさん04/09/15 19:48:04ID:???
こんばんわ。
MYSQLに直接つっこんでる画像データを出力する際に
縦横サイズの変更を行いたいんですけど、どうすればよいでしょうか?

getimageで縦横取得してからと思ったのですが
Warning: failed to open stream: No such file or directory
みたいな感じで怒られました。
DBに突っ込む際に縦横サイズも格納しておかなければならないのでしょうか?
0943nobodyさん04/09/15 19:51:19ID:dKmLYC94
>>925
よく分かってないけど多分そんな感じです。
出会い系とかで例えてみると、
年齢と性別を同時検索してやるやり方が分かりません。

あと年齢だと
「○歳〜○歳までで検索」
とかいう方法もどうやったらいいものか。

かなり初歩的な質問で申し訳ない。
なんで、いいソース場所知りませんか?
0944nobodyさん04/09/15 19:56:22ID:???
>>940
違うよ、そんな昔から2chには居ないよ。

#つかそのスレ読んで思ったんだが
#「アセンブラと言っている時点で(ry」と言うような頑固な人っていつの時にも居るんだなぁって思ったよ
#そんな細かなこといちいちつっこまれてもねぇ。。「アセンブリ」じゃないと納得しないのかね


以後何も無かったように質問どうぞ
↓
0945nobodyさん04/09/15 20:03:40ID:???
>>943
DB使用ですか?
DB使用ならソースも糞もないんだが
SQL文たった一行で済むぞ
0946nobodyさん04/09/15 20:05:34ID:???
DBなのかファイルなのか・・・
0947nobodyさん04/09/15 20:06:40ID:???
・ユ・。・、・�ヒ3000ナタ
0948nobodyさん04/09/15 20:09:50ID:???
ソース見てもわかるのか・・・
0949nobodyさん04/09/15 20:11:03ID:???
>>947
ファイルに3000点?
EUCかな?
0950nobodyさん04/09/15 20:23:02ID:???
>>942
画像サイズ云々の以前に、ファイルが開けないという警告みたいだけど、
それすらメッセージから読めませんか?
0951nobodyさん04/09/15 20:57:07ID:???
>>943
データの作りや格納方法でやり方は全然違う。
まずそれをきちんと把握すること。

DBMSの場合なら、データの絞込み抽出はそのものが持っている機能。
多くのDBMSはSQLをサポートしており、それにより該当する機能を使うことができる。
なので標準的なSQLを勉強してください。
0952nobodyさん04/09/16 07:19:05ID:???
PHPをCGIとして動かすにはどうすればいいのですか?
そういうことが出来ると聞いたのですが。。
レス数が950を超えています。1000を超えると書き込みができなくなります。