【PHP】下らねぇ質問はここに書き込みやがれ 65
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/02/24(日) 21:03:17ID:???PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 64
http://pc11.2ch.net/test/read.cgi/php/1202536271/
◆質問する時の注意
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を必ず明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示(メール欄に何も記述しない)、若しくはトリップをつける事。
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0408nobodyさん
2008/03/05(水) 07:21:39ID:???phpを殆ど使ったことの無いような人の意見だな
まぁPHPは小規模案件多いけど大規模な構築事例もある
addons.mozilla.orgやyahooもだっけか
確かにhtmlは直接書けるが
そんな風にごちゃ混ぜで書くと解りにくいソースになって
後でメンテし難くなる
phpでシステム作ってる所は普通にフレームワークとか使ってやってるので
デザイナーはviewしか殆ど書く事ない
簡単な書き方もできれば、
普通にJavaとかのような書き方もできるのがPHP
0409nobodyさん
2008/03/05(水) 07:27:41ID:???エスケープミスとか素人ミスが多かったり、phpのソースがhtmlに出ちゃってたり。
某MMOの運営会社なんてひどいぜ。
どういうやつがコーディングしてるんだよw
0411nobodyさん
2008/03/05(水) 08:15:31ID:???言語弾圧なんてしてるようにはちっともさっぱりこれっぽちも見えないが
0412nobodyさん
2008/03/05(水) 08:25:08ID:???ケーキペチパー落ち着けよ
0413nobodyさん
2008/03/05(水) 09:42:25ID:LSCm3THv{
$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)で使用したいのですが、
引数の数が変動する場合に、何か良い振り分け方法はありませんか?
0414nobodyさん
2008/03/05(水) 11:27:24ID:???引数の処理が同じ処理なら
パラメーターを配列かし、text_dump再帰処理をtext_dumpで書けば良いと思う
0415nobodyさん
2008/03/05(水) 13:48:01ID:???それこそfunc_get_args使えよw
function test_dump() {
$ary = func_get_args();
foreach ($ary as $value) {
var_dump($value);
}
}
0417nobodyさん
2008/03/05(水) 17:35:53ID:???おなじことができるならphpでいいじゃん
0418nobodyさん
2008/03/05(水) 18:33:53ID:???共通点として、無理が通せてしまう言語ってこと。
0419nobodyさん
2008/03/05(水) 18:44:16ID:JDEU3z4H<?php echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; ?>
上記をxhtmlファイルの先頭に書いてるんですが、
web上のページを見てみると、先頭に改行が入ってしまってエラーが出ます。
先頭に改行が入らないようにするにはどうすればいいのでしょうか?
0420nobodyさん
2008/03/05(水) 18:51:05ID:???0421nobodyさん
2008/03/05(水) 18:58:02ID:???検索フォームには
・書籍タイトル
・著者名
・出版社名
があります。
それで、文字列が入力されているフォームのみ、
クエリに条件として追加したいのです。
たとえば、書籍タイトルだけが入力されている場合は
SELECT * FROM books WHERE title = %s〜
書籍タイトルと著者名が入力されている場合は
SELECT * FROM books WHERE title = %s AND author = %s〜
としたいのです。
どうかご教授下さい。
0422419
2008/03/05(水) 18:58:51ID:JDEU3z4HXML パースエラー: 外部実体の初めに XML 宣言がありません。
行番号: 2, 列番号: 1:
0423nobodyさん
2008/03/05(水) 19:03:29ID:???0424419
2008/03/05(水) 19:11:14ID:JDEU3z4Hソースを見ると
>
><?xml version="1.0" encoding="UTF-8"?>
><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
となっていたからです。
">"は引用符です。
0426421
2008/03/05(水) 19:21:56ID:???条件を足す方法というのは
if文でチェックして
.= で追加すればよいのでしょうか?
0427nobodyさん
2008/03/05(水) 19:28:38ID:???$ccc = @$_POST['aaa'] && @$_POST['bbb'];
のような文の「@$」ってどういう意味でしょうか?
$の前に@が付いているのは初めて見ました。
どなたかご教示いただけると幸いです。
特殊文字は検索がしにくい・・
0428nobodyさん
2008/03/05(水) 19:31:53ID:???http://jp.php.net/manual/ja/language.operators.errorcontrol.php
0430427
2008/03/05(水) 19:33:31ID:???ありがとうございます!
0431nobodyさん
2008/03/05(水) 21:47:04ID:???php/header.incの中身が
<?php echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; ?>
ってこと?
0432419
2008/03/05(水) 22:00:52ID:JDEU3z4Hいえ、違います。
<?php include_once("php/header.inc"); ?>
<?php echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; ?>
この2行をxhtmlファイルの先頭に書いてあります。
header.incには他のことが書いてあります。
0434nobodyさん
2008/03/05(水) 22:13:08ID:???中身は<?php ?>の空のheader.incを使って再現してみたが、
俺の環境では問題なし。
おそらくサーバ側の問題。
xrea無料あたりの広告を自動挿入されるようなサーバ使ってるならそれが怪しい。
0435337
2008/03/05(水) 22:20:40ID:uqdrOXeC>>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
にすれば良いのでしょか?
※一応こちらも例しましたが送信出来ませんでした。
0436nobodyさん
2008/03/05(水) 22:26:50ID:knvJCigj置換文字列が見つからないときに元の文字を返す置換変数ってありませんか。
str_replaceとか失敗したら返り値がfalseになるじゃないですか。
正規表現使わないときにpreg_replaceは止めろ、ってマニュアルに書いてあるから
その通りにしようと思ったのにうまくいかないじゃん。
結局今はif(strpos()){str_replace();}みたいなことやってます。
0437337
2008/03/05(水) 22:27:20ID:uqdrOXeC>>344
>which sendmailするとどうなる?
[hoge@localhost ~]# which sendmail
/usr/sbin/sendmail
でした。
現在、使用している(標準でCentOS5についていた)メールソフトは、
Evolutionであり、こちらは現在契約しているプロバイダのSMTP(POP)サーバを
指定してメールは送信しています。
0438nobodyさん
2008/03/05(水) 22:38:45ID:???言語に罪はないが利用者が酷い
関数すらろくに作れないヤツが殆どだからなぁ
0439nobodyさん
2008/03/05(水) 22:42:36ID:???過去に、UTF-8のファイルを使っているエディタ以外で開いて保存して
同様の現象が出たことあります。
ファイルの文字コードを調べるツールで確認してみてはどうですか?
面倒だったら
1.そのファイルを移動
2.元の場所に同名のファイルを作成
3.エディタでそのファイルを開き、移動したファイルの内容をコピー
で直りませんかね?
0440419
2008/03/05(水) 22:57:19ID:JDEU3z4H>>434
>>439
皆さんありがとうございます。
余計な改行と空白があったみたいでして、
文字コードをUTF-8Nにして改行と空白を削除しましたら無事に表示されました。
.htaccessと同じように最後の行は改行しなくてはならないと思い込んでいました。
こんな初歩的なことでスレを使ってしまい申し訳ありませんでした。
0441nobodyさん
2008/03/05(水) 23:50:49ID:???htmlと混ぜて書いている時意外書かない方がいい
0442nobodyさん
2008/03/06(木) 00:06:00ID:???0443337
2008/03/06(木) 00:12:48ID:eYOrPk/W次の様なエラーログが吐かれていました。
事象について、ぐぐったのですが何もヒットしません。
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/
0444337
2008/03/06(木) 00:13:31ID:eYOrPk/WMar 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
0445337
2008/03/06(木) 00:17:58ID:eYOrPk/W因みに、qmail用に作成したユーザに対して次のコマンドを実行すると
正常に送信出来ています。(ローカルへの送信はOKと言う意味。)
[root@localhost ~]# /var/qmail/bin/qmail-inject
to:localhogeuser
<Ctrl + D>
なぜ、外部メールアドレスへの送信は出来ないのでしょうか?
0446nobodyさん
2008/03/06(木) 00:26:02ID:???あとはこっちで頑張ってね
qmailいろいろ(8)
http://pc11.2ch.net/test/read.cgi/unix/1163326021/
0447nobodyさん
2008/03/06(木) 01:59:19ID:F9M1Wqcaこれプリントしてみ?
結果がおかしいんだが・・・
因みにこっちの環境では47と出る・・・
バグ?
0448nobodyさん
2008/03/06(木) 02:33:56ID:???0449nobodyさん
2008/03/06(木) 04:17:20ID:F9M1Wqcaヒントdクス
intの値域は2147483647までなのね。
しかし、
print 8000000000 / 100;
をすると80000000とちゃんと出力されたんだが・・・
0450nobodyさん
2008/03/06(木) 09:11:34ID:???<html>
<body>
<?php print "hello php! " ; ?>
</body>
</html>
でこれで hello php! ってブラウザに出力したいんですけど、なぜか
でないんです。テラパッドに書き込んでIEブラウザで読み込んでるんですけど
動かないんです。どなたかご教授いただければ、幸いです。
0451nobodyさん
2008/03/06(木) 09:24:06ID:???まさかphpがインストールされてないとかそういうわけじゃないよね?
0452nobodyさん
2008/03/06(木) 09:29:06ID:???いくらPHPはHTMLに似ているからと言って
IEだけじゃPHPは動かないぞ。
0453nobodyさん
2008/03/06(木) 10:13:06ID:???xamppでapache php mySQLとかはダウンロードして インストールして
起動させてるんで ブラウザからlocalhostのページもみれるんでたぶん
動いてるとおもうんですけど・・・。拡張子もphpにしてみたけど、だめです。
0454nobodyさん
2008/03/06(木) 10:21:27ID:???になってるみたいなんですが、これ原因ですかね?
0455nobodyさん
2008/03/06(木) 10:24:26ID:???ひどいオチだな。拡張子表示するようにしなよ。
メモ帳系のソフトは登録されていない拡張子だと後ろに.txtをつけることがある。
保存するときにファイルの種類をすべてのファイルにしてからphpとうつか、
txtで保存したあと拡張子を変えるかでいける。
0456nobodyさん
2008/03/06(木) 10:42:16ID:???453さん
455さん ありがとうございました。拡張子の付け替えうまくいきました。
前進したようです。
でもこんどは読み込むとブラウザの画面が真っ白なページになってしまいまし
た。orz
0457nobodyさん
2008/03/06(木) 15:23:36ID:???0458nobodyさん
2008/03/06(木) 16:26:01ID:???0459nobodyさん
2008/03/06(木) 17:07:58ID:???0460nobodyさん
2008/03/06(木) 17:14:18ID:???0461nobodyさん
2008/03/06(木) 17:14:34ID:???0462nobodyさん
2008/03/06(木) 17:23:34ID:???0464nobodyさん
2008/03/06(木) 18:44:43ID:???状況としてはこんな感じです。
ドコモのメールアドレス(ユーザアカウント部分)にドットが含まれている(auのアドレスには含まれていない。)
mail関数で返信している。
メールアドレスは正常に取得できている。(送信前にtoをvar_dumpしてみました)
お願いします。
0465nobodyさん
2008/03/06(木) 18:45:48ID:???もう少し、言語に依存しないプログラムの基本的な理論や
プログラムの設計理論について学ぶべきだよ。
基礎ができていないプログラマーは、
いつも行き当たりばったりで、
自己解決がいつまで経っても出来ないからね。
0468nobodyさん
2008/03/06(木) 18:53:56ID:???耳が痛いです。。。
そろそろ基礎から学ぶべきだとは思ってます。
>>466さん
メ鯖で返してます。
メールが来たらforwardして
ログみるとPHP側にはわたっているデータは残ってるんでmail関数が怪しいと思ってます。
0469nobodyさん
2008/03/06(木) 18:55:19ID:???なんどもすみません。
環境
OS:Fedora Core5
Mail:postfix
php5
です。
0470464
2008/03/06(木) 19:11:43ID:???受信拒否解除してなかっただけでした。
すみません_| ̄|○ il||li
0471nobodyさん
2008/03/06(木) 19:14:56ID:???0472nobodyさん
2008/03/06(木) 19:21:02ID:???何も答えない癖に、何言っていんのこの馬鹿?
開発会議で全然発言しなかったくせに、
開発途中で設計に変更の必要がでると、
「やっぱり、その設計はまずかっただろう」
とか誇らしげに言っているF次長と一緒。
まったくウザイ。どうしてこんな奴が次長の椅子に座っているの?
どうなっても知らんよ。
0473nobodyさん
2008/03/06(木) 19:50:21ID:???0474nobodyさん
2008/03/06(木) 20:08:40ID:???「そろそろ基礎から学ぶ」という発言に違和感を覚えないようなら相当やばいと思う。
今すぐ行動すべき。でないと手遅れになる。
0475nobodyさん
2008/03/06(木) 20:15:14ID:???ある意味羨ましい
0476nobodyさん
2008/03/06(木) 22:17:38ID:???0477nobodyさん
2008/03/06(木) 22:30:00ID:???0478nobodyさん
2008/03/06(木) 22:45:26ID:???0479nobodyさん
2008/03/06(木) 22:55:55ID:???0480nobodyさん
2008/03/06(木) 23:14:26ID:???0482nobodyさん
2008/03/07(金) 00:27:41ID:???0483nobodyさん
2008/03/07(金) 01:05:07ID:???どういうとこで出るんだろ。
0484nobodyさん
2008/03/07(金) 01:18:39ID:???一番多そうな例としては
<?php
$hoge = $_GET['hoge'];
こんな風にいきなり書く場合が多いんじゃないかな
0485nobodyさん
2008/03/07(金) 01:53:29ID:???0486nobodyさん
2008/03/07(金) 02:37:32ID:???こういうのはecho "<a href=\"$url\">$title<a>;
こうした方がいいのでしょうか?
echo "<a href=\"$url\">".$title."<a>";
0487nobodyさん
2008/03/07(金) 02:50:08ID:???0488nobodyさん
2008/03/07(金) 02:58:35ID:dvnvybavつまりページを再取得するという意味。
0489nobodyさん
2008/03/07(金) 04:07:02ID:slLJ/4/bforeach($_POST as $k => $v){
// 「magic_quotes_gpc = On」のときはエスケープ解除
if (get_magic_quotes_gpc()) {
$v = stripslashes($v);
}
$v = htmlspecialchars($v);
$$k = $v;
}
}
これの意味がわかりません。
なんでこれでデータをゲットできるの?
0490nobodyさん
2008/03/07(金) 04:48:49ID:???0491nobodyさん
2008/03/07(金) 05:13:05ID:???コマンドって・・・
PHPは入力などを受け取ってサーバ側で処理をしてブラウザに結果を返すというだけのもの。
現実的なのはPHPでmetaタグのrefreshコード(HTMLの)を出力するとか。
F5と同じ働きをするわけではないが、結果をリアルタイムに取得して表示することが可能なAjaxという技法を使うか。
チャットとかでリアルタイムに表示したいようなものを作るならAjaxが定番。
ページ遷移が行われるmeta refreshによる自動更新はかえって迷惑なのでやめたほうがいい。
0492nobodyさん
2008/03/07(金) 06:48:34ID:9kEaF3pZ例)1.2.3.4.5
↓
12345
よろしくお願いいたします。
0495nobodyさん
2008/03/07(金) 07:06:26ID:???0496492
2008/03/07(金) 08:20:19ID:???レスありがとうございました。
実際はいくつかの文字変化が必要でしたので次のようにしてみました。
みなさんありがとうございました。
$moji0 = "1.2,3.4,5 6 7" ;
$moji1 = array ("/\./" , "/,/" , "/./" , "/,/", "/ /", "/ /") ;
$moji2 = array ("", "", "", "", "", "") ;
echo preg_replace ($moji1, $moji2, $moji0) ;
0497nobodyさん
2008/03/07(金) 14:31:43ID:l69x+LwZ作る方法を解説したサイトはありますか?
C++の基礎がやっと分かる程度ですが、
Smartyのpluginのような感じで簡単に追加できるならやってみたいと思います。
0498nobodyさん
2008/03/07(金) 14:47:17ID:???function 関数名(仮引数)
例えばaとbを足したものを返す関数は
function sum($a, $b) {
return $a + $b;
}
型ありの言語だと
int sum(int a, int b) {
return a + b;
}
とかになるのかな
http://www.php.net/manual/ja/language.functions.php
0499nobodyさん
2008/03/07(金) 15:38:41ID:???解読願います。
Service Temporarily Unavailable
The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.
--------------------------------------------------------------------------------
Apache/1.3.34 Server at www.hashimoto-toru.com Port 80
0500nobodyさん
2008/03/07(金) 15:45:32ID:???アクセス集中時で繋がらないときのメッセージ
通常時間をおけば解消する
っていうかスレ違いだしそんくらいググレ
0501nobodyさん
2008/03/07(金) 15:47:29ID:???つ http://academy6.2ch.net/english/
0502nobodyさん
2008/03/07(金) 15:50:14ID:9kEaF3pZなんて読むのでしょう。シンフォニーだとスペルがちがいますし。
またPHPのフレームワークにもいくつかあるようですが、主流というのは
あるのでしょうか。よろしくお願いいたします。
0505nobodyさん
2008/03/07(金) 16:14:58ID:???橋本さんの所の人なんですか?
公人の場合、こういう場所に書くとき、
色んな事に気をつけたほうがいいと思いますけどね。
余計なお世話ですけど
0506nobodyさん
2008/03/07(金) 16:35:51ID:???政治家のサイトの更新するようなやつがそんな質問するわけないw
0507nobodyさん
2008/03/07(金) 16:40:13ID:???■ このスレッドは過去ログ倉庫に格納されています