08/03/05 09:42:25 LSCm3THv
public function getParam()
{
$array = func_get_args();
$this->Params = $array;
}
public function text_dump($text1, $text2, $text3)
{
echo $text1."\n";
echo $text2."\n";
echo $text3."\n";
}
取得したパラメータを、別のメソッド(text_dump)で使用したいのですが、
引数の数が変動する場合に、何か良い振り分け方法はありませんか?
414:nobodyさん
08/03/05 11:27:24
>>413
引数の処理が同じ処理なら
パラメーターを配列かし、text_dump再帰処理をtext_dumpで書けば良いと思う
415:nobodyさん
08/03/05 13:48:01
>>413
それこそfunc_get_args使えよw
function test_dump() {
$ary = func_get_args();
foreach ($ary as $value) {
var_dump($value);
}
}
416:nobodyさん
08/03/05 13:48:08
>>409
phpは入門しやすい言語だから幅広いレベルの人間がいる。
だからなんだというのだろう・・。
417:nobodyさん
08/03/05 17:35:53
javaなんかごちゃごちゃインストールしまくりでやってられない
おなじことができるならphpでいいじゃん
418:nobodyさん
08/03/05 18:33:53
PHPの人気はCの人気と近いと思うな。
共通点として、無理が通せてしまう言語ってこと。
419:nobodyさん
08/03/05 18:44:16 JDEU3z4H
<?php include_once("php/header.inc"); ?>
<?php echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; ?>
上記をxhtmlファイルの先頭に書いてるんですが、
web上のページを見てみると、先頭に改行が入ってしまってエラーが出ます。
先頭に改行が入らないようにするにはどうすればいいのでしょうか?
420:nobodyさん
08/03/05 18:51:05
で?エラー文なしでエスパーしてもらえと?
421:nobodyさん
08/03/05 18:58:02
PHP+Mysqlで書籍検索システムを作っています。
検索フォームには
・書籍タイトル
・著者名
・出版社名
があります。
それで、文字列が入力されているフォームのみ、
クエリに条件として追加したいのです。
たとえば、書籍タイトルだけが入力されている場合は
SELECT * FROM books WHERE title = %s~
書籍タイトルと著者名が入力されている場合は
SELECT * FROM books WHERE title = %s AND author = %s~
としたいのです。
どうかご教授下さい。
422:419
08/03/05 18:58:51 JDEU3z4H
すみません、エラー文です。
XML パースエラー: 外部実体の初めに XML 宣言がありません。
行番号: 2, 列番号: 1:
423:nobodyさん
08/03/05 19:03:29
なんで1行目に改行があると判断したのかkwsk
424:419
08/03/05 19:11:14 JDEU3z4H
>>423
ソースを見ると
>
><?xml version="1.0" encoding="UTF-8"?>
><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "URLリンク(www.w3.org)">
となっていたからです。
">"は引用符です。
425:nobodyさん
08/03/05 19:15:00
>>421
そんなのNULLで無い時に、その条件を足してやりゃいいだけじゃん。
426:421
08/03/05 19:21:56
即レスありがとうございます。
条件を足す方法というのは
if文でチェックして
.= で追加すればよいのでしょうか?
427:nobodyさん
08/03/05 19:28:38
すいません初歩的な質問で申し訳ないのですが
$ccc = @$_POST['aaa'] && @$_POST['bbb'];
のような文の「@$」ってどういう意味でしょうか?
$の前に@が付いているのは初めて見ました。
どなたかご教示いただけると幸いです。
特殊文字は検索がしにくい・・
428:nobodyさん
08/03/05 19:31:53
>>427
URLリンク(jp.php.net)
429:nobodyさん
08/03/05 19:33:19
>>426
YES
それと質問時はIDを出しましょう。
430:427
08/03/05 19:33:31
おおっ
ありがとうございます!
431:nobodyさん
08/03/05 21:47:04
>>419
php/header.incの中身が
<?php echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; ?>
ってこと?
432:419
08/03/05 22:00:52 JDEU3z4H
>>431
いえ、違います。
<?php include_once("php/header.inc"); ?>
<?php echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; ?>
この2行をxhtmlファイルの先頭に書いてあります。
header.incには他のことが書いてあります。
433:nobodyさん
08/03/05 22:05:11
>>432
incファイルの中で空行を出力しているかBOM
434:nobodyさん
08/03/05 22:13:08
>>432
中身は<?php ?>の空のheader.incを使って再現してみたが、
俺の環境では問題なし。
おそらくサーバ側の問題。
xrea無料あたりの広告を自動挿入されるようなサーバ使ってるならそれが怪しい。
435:337
08/03/05 22:20:40 uqdrOXeC
qmailでのメール送信が出来ない件についてー1
>>344
>qmailのsendmail-wrapperが /var/qmail/bin/sendmail
>とか、/optの下あたりにないかい?
確かにその階層に、「sendmail」というファイル(?)は存在していました。
また、現在のphp.iniのメール回りの設定は、次の様に記述しています。
現在、
sendmail_path = /var/qmail/bin/qmail-inject
としている記述を
sendmail_path = /var/qmail/bin/sendmail
にすれば良いのでしょか?
※一応こちらも例しましたが送信出来ませんでした。
436:nobodyさん
08/03/05 22:26:50 knvJCigj
しつもん。
置換文字列が見つからないときに元の文字を返す置換変数ってありませんか。
str_replaceとか失敗したら返り値がfalseになるじゃないですか。
正規表現使わないときにpreg_replaceは止めろ、ってマニュアルに書いてあるから
その通りにしようと思ったのにうまくいかないじゃん。
結局今はif(strpos()){str_replace();}みたいなことやってます。
437:337
08/03/05 22:27:20 uqdrOXeC
qmailでのメール送信が出来ない件についてー2
>>344
>which sendmailするとどうなる?
[hoge@localhost ~]# which sendmail
/usr/sbin/sendmail
でした。
現在、使用している(標準でCentOS5についていた)メールソフトは、
Evolutionであり、こちらは現在契約しているプロバイダのSMTP(POP)サーバを
指定してメールは送信しています。
438:nobodyさん
08/03/05 22:38:45
phpやってると脳が腐りそうになるってのは同意
言語に罪はないが利用者が酷い
関数すらろくに作れないヤツが殆どだからなぁ
439:nobodyさん
08/03/05 22:42:36
>>432
過去に、UTF-8のファイルを使っているエディタ以外で開いて保存して
同様の現象が出たことあります。
ファイルの文字コードを調べるツールで確認してみてはどうですか?
面倒だったら
1.そのファイルを移動
2.元の場所に同名のファイルを作成
3.エディタでそのファイルを開き、移動したファイルの内容をコピー
で直りませんかね?
440:419
08/03/05 22:57:19 JDEU3z4H
>>433
>>434
>>439
皆さんありがとうございます。
余計な改行と空白があったみたいでして、
文字コードをUTF-8Nにして改行と空白を削除しましたら無事に表示されました。
.htaccessと同じように最後の行は改行しなくてはならないと思い込んでいました。
こんな初歩的なことでスレを使ってしまい申し訳ありませんでした。
441:nobodyさん
08/03/05 23:50:49
phpの閉じタグは
htmlと混ぜて書いている時意外書かない方がいい
442:nobodyさん
08/03/06 00:06:00
mb_ereg() と mb_ereg_search_regs() の使い分けが分からない
443:337
08/03/06 00:12:48 eYOrPk/W
php(WEBページ)から再度、メールを送信しログを確認したところ
次の様なエラーログが吐かれていました。
事象について、ぐぐったのですが何もヒットしません。
qmail+phpで正常にメール送信が出来ている方がいましたら、助けて下さい。
エラーメールログー1
Mar 6 00:02:08 localhost qmail: 1204729328.505456 new msg 19727037
Mar 6 00:02:08 localhost qmail: 1204729328.505530 info msg 19727037: bytes 266 from <anonymous@localhost.localdomain> qp 3412 uid 48
Mar 6 00:02:08 localhost qmail: 1204729328.507171 starting delivery 5: msg 19727037 to remote hogehoge@hogehoge.gyao.ne.jp
Mar 6 00:02:08 localhost qmail: 1204729328.507233 status: local 0/10 remote 1/20
Mar 6 00:02:08 localhost qmail: 1204729328.511988 new msg 19727040
Mar 6 00:02:08 localhost qmail: 1204729328.512133 info msg 19727040: bytes 338 from <anonymous@localhost.localdomain> qp 3414 uid 48
Mar 6 00:02:08 localhost qmail: 1204729328.518935 starting delivery 6: msg 19727040 to remote hogehoge@hogehoge.gyao.ne.jp
Mar 6 00:02:08 localhost qmail: 1204729328.519187 status: local 0/10 remote 2/20
Mar 6 00:02:08 localhost qmail: 1204729328.802970 delivery 6: failure: Connected_to_125.63.38.26_but_sender_was_rejected./Remote_host_said:_550_unrouteable_sender_address/
Mar 6 00:02:08 localhost qmail: 1204729328.803198 status: local 0/10 remote 1/20
Mar 6 00:02:08 localhost qmail: 1204729328.809493 bounce msg 19727040 qp 3417
Mar 6 00:02:08 localhost qmail: 1204729328.809645 end msg 19727040
Mar 6 00:02:08 localhost qmail: 1204729328.810220 delivery 5: failure: Connected_to_125.63.38.26_but_sender_was_rejected./Remote_host_said:_550_unrouteable_sender_address/
444:337
08/03/06 00:13:31 eYOrPk/W
エラーメールログー2
Mar 6 00:02:08 localhost qmail: 1204729328.810354 status: local 0/10 remote 0/20
Mar 6 00:02:08 localhost qmail: 1204729328.810420 new msg 19727045
Mar 6 00:02:08 localhost qmail: 1204729328.810477 info msg 19727045: bytes 973 from <> qp 3417 uid 507
Mar 6 00:02:08 localhost qmail: 1204729328.818246 starting delivery 7: msg 19727045 to local anonymous@localhost.localdomain
Mar 6 00:02:08 localhost qmail: 1204729328.818474 status: local 1/10 remote 0/20
Mar 6 00:02:08 localhost qmail: 1204729328.822610 bounce msg 19727037 qp 3418
Mar 6 00:02:08 localhost qmail: 1204729328.822753 end msg 19727037
Mar 6 00:02:08 localhost qmail: 1204729328.857829 new msg 19727044
Mar 6 00:02:08 localhost qmail: 1204729328.858247 info msg 19727044: bytes 901 from <> qp 3418 uid 507
Mar 6 00:02:08 localhost qmail: 1204729328.861612 starting delivery 8: msg 19727044 to local anonymous@localhost.localdomain
Mar 6 00:02:08 localhost qmail: 1204729328.861752 status: local 2/10 remote 0/20
Mar 6 00:02:08 localhost qmail: 1204729328.861831 delivery 7: success: did_0+0+1/
Mar 6 00:02:08 localhost qmail: 1204729328.861906 status: local 1/10 remote 0/20
Mar 6 00:02:08 localhost qmail: 1204729328.861968 end msg 19727045
Mar 6 00:02:08 localhost qmail: 1204729328.868252 delivery 8: success: did_0+0+1/
Mar 6 00:02:08 localhost qmail: 1204729328.868471 status: local 0/10 remote 0/20
Mar 6 00:02:08 localhost qmail: 1204729328.868569 end msg 19727044
445:337
08/03/06 00:17:58 eYOrPk/W
※補足
因みに、qmail用に作成したユーザに対して次のコマンドを実行すると
正常に送信出来ています。(ローカルへの送信はOKと言う意味。)
[root@localhost ~]# /var/qmail/bin/qmail-inject
to:localhogeuser
<Ctrl + D>
なぜ、外部メールアドレスへの送信は出来ないのでしょうか?
446:nobodyさん
08/03/06 00:26:02
>>337
あとはこっちで頑張ってね
qmailいろいろ(8)
スレリンク(unix板)
447:nobodyさん
08/03/06 01:59:19 F9M1Wqca
print 8000000000 % 100;
これプリントしてみ?
結果がおかしいんだが・・・
因みにこっちの環境では47と出る・・・
バグ?
448:nobodyさん
08/03/06 02:33:56
まぁプログラムする側もintの値域超えないように考えてプログラムしろってことなんだろ
449:nobodyさん
08/03/06 04:17:20 F9M1Wqca
>>448
ヒント㌧クス
intの値域は2147483647までなのね。
しかし、
print 8000000000 / 100;
をすると80000000とちゃんと出力されたんだが・・・
450:nobodyさん
08/03/06 09:11:34
すんごい 基礎でつまってるんですけど。
<html>
<body>
<?php print "hello php! " ; ?>
</body>
</html>
でこれで hello php! ってブラウザに出力したいんですけど、なぜか
でないんです。テラパッドに書き込んでIEブラウザで読み込んでるんですけど
動かないんです。どなたかご教授いただければ、幸いです。
451:nobodyさん
08/03/06 09:24:06
拡張子はphpにしてる?
まさかphpがインストールされてないとかそういうわけじゃないよね?
452:nobodyさん
08/03/06 09:29:06
まずapacheとかのHTTPサーバを組み込んだ?
いくらPHPはHTMLに似ているからと言って
IEだけじゃPHPは動かないぞ。
453:nobodyさん
08/03/06 10:13:06
xamppでapache php mySQLとかはダウンロードして インストールして
起動させてるんで ブラウザからlocalhostのページもみれるんでたぶん
動いてるとおもうんですけど・・・。拡張子もphpにしてみたけど、だめです。
454:nobodyさん
08/03/06 10:21:27
拡張子phpにしてもブラウザからみれば アドレス側の名前の最後php.txt
になってるみたいなんですが、これ原因ですかね?
455:nobodyさん
08/03/06 10:24:26
>>454
ひどいオチだな。拡張子表示するようにしなよ。
メモ帳系のソフトは登録されていない拡張子だと後ろに.txtをつけることがある。
保存するときにファイルの種類をすべてのファイルにしてからphpとうつか、
txtで保存したあと拡張子を変えるかでいける。
456:nobodyさん
08/03/06 10:42:16
452さん
453さん
455さん ありがとうございました。拡張子の付け替えうまくいきました。
前進したようです。
でもこんどは読み込むとブラウザの画面が真っ白なページになってしまいまし
た。orz
457:nobodyさん
08/03/06 15:23:36
もういいよ
458:nobodyさん
08/03/06 16:26:01
ありがとうございました。もうすこし自分で調べてきます。
459:nobodyさん
08/03/06 17:07:58
拡張子表示すら知らない人がやるんだから、PHPの裾野の広さは色んな意味で恐ろしいほど広いよな・・。
460:nobodyさん
08/03/06 17:14:18
そんなヤツらが毎年入社してくるんだよ。何とかしてくれ。。
461:nobodyさん
08/03/06 17:14:34
いやどちらかと言えば俺はそのほうがいいと思うよ。技術は使われるものじゃなくて使うもの
462:nobodyさん
08/03/06 17:23:34
拡張子のことを知らない人は、論理的な思考が出来ないということでもないから、気にする事でもない。
463:nobodyさん
08/03/06 18:31:19
>>456
PHPスクリプト自体、htdocsに入れてるか?
464:nobodyさん
08/03/06 18:44:43
携帯電話からメールがきた際、返信メールを返すシステムを構築しているのですがドコモからきたメールを返してくれません。
状況としてはこんな感じです。
ドコモのメールアドレス(ユーザアカウント部分)にドットが含まれている(auのアドレスには含まれていない。)
mail関数で返信している。
メールアドレスは正常に取得できている。(送信前にtoをvar_dumpしてみました)
お願いします。
465:nobodyさん
08/03/06 18:45:48
その手の質問はphpばかりやっているから。
もう少し、言語に依存しないプログラムの基本的な理論や
プログラムの設計理論について学ぶべきだよ。
基礎ができていないプログラマーは、
いつも行き当たりばったりで、
自己解決がいつまで経っても出来ないからね。
466:nobodyさん
08/03/06 18:48:13
>>464
どのように返しているの?
cronかメ鯖か
467:nobodyさん
08/03/06 18:51:51
>>464
>>7
468:nobodyさん
08/03/06 18:53:56
>>464さん
耳が痛いです。。。
そろそろ基礎から学ぶべきだとは思ってます。
>>466さん
メ鯖で返してます。
メールが来たらforwardして
ログみるとPHP側にはわたっているデータは残ってるんでmail関数が怪しいと思ってます。
469:nobodyさん
08/03/06 18:55:19
>>467さん
なんどもすみません。
環境
OS:Fedora Core5
Mail:postfix
php5
です。
470:464
08/03/06 19:11:43
自己解決しました。。。。
受信拒否解除してなかっただけでした。
すみません_| ̄|○ il||li
471:nobodyさん
08/03/06 19:14:56
どうせそんな事だろうと思ったよ
472:nobodyさん
08/03/06 19:21:02
>>471
何も答えない癖に、何言っていんのこの馬鹿?
開発会議で全然発言しなかったくせに、
開発途中で設計に変更の必要がでると、
「やっぱり、その設計はまずかっただろう」
とか誇らしげに言っているF次長と一緒。
まったくウザイ。どうしてこんな奴が次長の椅子に座っているの?
どうなっても知らんよ。
473:nobodyさん
08/03/06 19:50:21
それをF次長に直接言えるようになるといいね。
474:nobodyさん
08/03/06 20:08:40
>>468
「そろそろ基礎から学ぶ」という発言に違和感を覚えないようなら相当やばいと思う。
今すぐ行動すべき。でないと手遅れになる。
475:nobodyさん
08/03/06 20:15:14
基礎もわからず応用から入れる人って
ある意味羨ましい
476:nobodyさん
08/03/06 22:17:38
ここでいう基礎が不明確だな。SICP終わったくらいか
477:nobodyさん
08/03/06 22:30:00
基礎と言えば「BASIC」
478:nobodyさん
08/03/06 22:45:26
まずは機械語の理解からだろ
479:nobodyさん
08/03/06 22:55:55
今更mov ax,0とかld a,0なんてできんわぁ
480:nobodyさん
08/03/06 23:14:26
で、お前らはnoticeエラーもきちんと処理してんのか?
481:nobodyさん
08/03/06 23:21:40
>>480
またお前か。下らんことばっかきいてんじゃねえよ。
482:nobodyさん
08/03/07 00:27:41
普通は処理する
483:nobodyさん
08/03/07 01:05:07
逆に、そんなにnoticeって出る??
どういうとこで出るんだろ。
484:nobodyさん
08/03/07 01:18:39
きっちり書いてればでないよ
一番多そうな例としては
<?php
$hoge = $_GET['hoge'];
こんな風にいきなり書く場合が多いんじゃないかな
485:nobodyさん
08/03/07 01:53:29
FW使えばok