【PHP】下らねぇ質問はID出して書き込みやがれ 100
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2010/10/27(水) 17:41:33ID:2BwSQxVQ過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 99
http://hibari.2ch.net/test/read.cgi/php/1286938893/
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0382nobodyさん
2010/11/04(木) 04:21:25ID:???>>369に書いたけど、getPageTitle()の中身の文字列をechoして確認してみた?
それと、>>374に書いたように $http.SERVER["HTTP_HOST"] は文法的におかしいでしょ。
SERVERじゃなくて$_SERVERにしないと。
あと、SERVER["DOCUMENT_URI"] に目星を付けて、と書いてる割に REQUEST_URI になってるけど大丈夫?
0385nobodyさん
2010/11/04(木) 07:25:23ID:H5un7pkx取得するやり方教えてください
0386nobodyさん
2010/11/04(木) 07:30:46ID:???$dc = $item->children('http://purl.org/dc/elements/1.1/');
0387nobodyさん
2010/11/04(木) 07:44:29ID:H5un7pkxありがとうございます
Node no longer existsって出ました
simplexmlオブジェクトをserializeしたらおこるみたいですね
うちのプロバイダ規制に巻き込まれてて携帯からだからお礼遅くなってすみません
0388nobodyさん
2010/11/04(木) 11:53:38ID:1iy2rlVw$_GETのパラメータで渡された ?day=2010-10-01 を検証したいとき
「これは日付を表す型だ」と一発で判別する方法(関数)ないでしょうか?
うまい表現出来ないので変な言い方になってますが
2010-11-01/2010-11/2010-01/2010-1
この4パターンを対象にしたいと思います。
ムリなんでしょうか?
カレンダーを生成するときに利用したいのですが…
お願いします
0389nobodyさん
2010/11/04(木) 11:55:56ID:???どれも日付にしたいんだよね?
0390nobodyさん
2010/11/04(木) 12:08:51ID:???strtotimeで 2010-1は無理だね。
ハイフンで切って2個なら1日とかにして checkdateではどうでしょう。
0391nobodyさん
2010/11/04(木) 12:11:55ID:1iy2rlVwこんなものがあったんですね! ありがとうございました
0392nobodyさん
2010/11/04(木) 12:22:08ID:QBk0rcZEtry {
$dbh = new PDO('sqlite:test.db');
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = 'update tab1 set tag1 = $tag1 where dirpass = $returnpass';
$stmt = $dbh->prepare($sql);
$stmt->execute();
}
catch( PDOException $e ) {
echo 'Connection failed: ' . $e->getMessage();
}
?>
DB定義ってどこまで書けばいいのですか?
普段sqlitemanagerってのを使ってますが
0393nobodyさん
2010/11/04(木) 12:28:52ID:???<?php
$mode='';
if($mode=''){
echo "空";
}else{
echo "空ではない";
}
?>
これを実行すると「空ではない」と表示されます。
どういうことですか。
また、どうすれば空を検出できますか?
0394nobodyさん
2010/11/04(木) 12:33:49ID:???だから
比較ではなく代入になってます
0396nobodyさん
2010/11/04(木) 13:02:29ID:zPbOOHCy環境は
PHP5.16
CentOS5
です。
0398nobodyさん
2010/11/04(木) 13:16:46ID:???$tag1とか$returnpassってPHPの変数なんだろうけど、それだと展開されないんじゃない?
というかprepare使ってるのにプレースホルダ使わないの?
0399nobodyさん
2010/11/04(木) 13:19:55ID:zPbOOHCy調べられる範囲で経由してきたプロキシが分かればよいです。最悪、2つ前のIPを調べられる方法でもよいです。
やりたいことは、PHPにIPでのアクセスを設けたいのですが、
プロキシ経由でWEBサーバにアクセスしてるので、プロキシのIPが制限の対象になってしまいます。
0400nobodyさん
2010/11/04(木) 13:24:48ID:???制限しなければいいじゃん。
0401nobodyさん
2010/11/04(木) 13:35:48ID:???っていう事かなと思って話しをするけど
公開プロキシなんてどこかのリストから
使えるものを使うって感じなんだろうから
それを拒否リストかなんかに登録すればいいんじゃねーの?
0402nobodyさん
2010/11/04(木) 13:36:50ID:R2ciutWbこのへん見て調べては?
0403nobodyさん
2010/11/04(木) 13:42:14ID:???誰が?あなたが?
>プロキシのIPが制限の対象になってしまいます
プロキシを拒否りたいというわけではないということか
0404nobodyさん
2010/11/04(木) 13:45:05ID:???0405nobodyさん
2010/11/04(木) 13:49:46ID:???大元のIPを見て拒否りたいということだろう
匿名プロキシじゃなくて、わざと環境変数に元のIPを漏らしてるプロキシ使ってる場合は分かるけどそれ以外は無理
刑事事件になるようなものならプロキシ運営側に情報開示させてプロキシを逆に辿るようなこともできるだろうけど
0406nobodyさん
2010/11/04(木) 13:53:37ID:nDeItJ+nini_set()でも.htaccessでもshort_open_tagだけがOffにできません
ほかの設定は反映されるのですが・・
これは何が原因だと考えられるでしょうか?
0407406
2010/11/04(木) 14:44:39ID:nDeItJ+nもう一度.htaccessをアップロードしなおしたら反映されました
(さっき反映されなかったのはなぜだろう..ブラウザ側でキャッシュ見てたのかな)
あと、もともとini_set()ではshort_open_tagは設定できないようですね
0408nobodyさん
2010/11/04(木) 18:07:14ID:En7f4Y+6【PHPのバージョン】5.1.6
【連携ソフトウェア】特になし
【質問内容】
社内の既存のシステムでmail関数を使用してメールを送信してます。
内容はログやエラー内容なんですが、ネットワークの変更に伴い社内のSMTPを使用することになりました。
そこで現状のソースを崩さすにmail関数でSMTPを指定出来ればと考えてますが可能でしょうか?
0409nobodyさん
2010/11/04(木) 18:12:52ID:R2ciutWb0410408
2010/11/04(木) 18:28:52ID:En7f4Y+6そちらのアドレスについては確認しているのですが、やはりSMTPの指定は無理ということでしょうか?
0411nobodyさん
2010/11/04(木) 18:31:18ID:???デフォルトがlocalhostのになってるとは思うけど
0412nobodyさん
2010/11/04(木) 18:38:50ID:???会社のSMTP次第だとは思うけど
リレーでなんとかならないかな?
MTU何使ってるか知らないけどそっちのスレで聞いたほうが良いと思う
0413nobodyさん
2010/11/04(木) 18:40:25ID:???なんかぐだぐだで死にたい
0414nobodyさん
2010/11/04(木) 18:51:06ID:???0415408
2010/11/04(木) 18:53:48ID:En7f4Y+6MTAに何を使っているかは不明だったのですが、社内から使用するには制限は特にないといわれました。
mail()でリレーとか出来るということでしょうか?
0416nobodyさん
2010/11/04(木) 19:04:24ID:???いや、そのphpが動作するサーバのMTAの設定で
社内のSMTPサーバへリレーさせるって意味だよ
MTAの設定変更が無理なら、mail()では無理なので
SMTP指定ができる、PEAR:mailとかQdmailとかを使う事になる
0417nobodyさん
2010/11/04(木) 19:08:17ID:QBk0rcZEselectやwhereはできました
プレースホルダ使っても駄目でした
0421nobodyさん
2010/11/04(木) 20:34:35ID:???0422415
2010/11/04(木) 20:52:00ID:beLXGvetすいません。
サーバーで使ってるのはsendmailです。
0423nobodyさん
2010/11/04(木) 21:10:02ID:???これ以上は板違いになるが
単純な転送ならSMART_HOSTに設定すればいける
サーバの管理者に相談してみて
0424nobodyさん
2010/11/04(木) 23:14:59ID:cN2tw34cPHPはこういう書き方させてくれないのがムカつく!
0425nobodyさん
2010/11/04(木) 23:18:23ID:???0426nobodyさん
2010/11/04(木) 23:19:31ID:???0428nobodyさん
2010/11/04(木) 23:21:49ID:???0430nobodyさん
2010/11/04(木) 23:31:59ID:???0431nobodyさん
2010/11/04(木) 23:35:28ID:???0432nobodyさん
2010/11/04(木) 23:36:30ID:tQnLbdgiああいった感じの機能のPHPライブラリとかってありませんか?
0433nobodyさん
2010/11/04(木) 23:37:50ID:???0434nobodyさん
2010/11/04(木) 23:46:14ID:???何となくそれが返ってくるような気がしてたw
複数ページ丸ごと落としてくるフリーライブラリは意外とないものなのかな
0435nobodyさん
2010/11/04(木) 23:56:50ID:???function r($o) { return $o; }
r(new Klass())->foo();
autoboxing パッチが受け入れられるまでこれで我慢
0436nobodyさん
2010/11/05(金) 00:23:08ID:???foreach ($urls as $url) {
$results[] = file_get_contents($url);
}
0437nobodyさん
2010/11/05(金) 00:25:20ID:FUZYrjbX0439nobodyさん
2010/11/05(金) 01:15:09ID:FUZYrjbX0440nobodyさん
2010/11/05(金) 01:19:22ID:???0441nobodyさん
2010/11/05(金) 01:21:38ID:FUZYrjbX0442nobodyさん
2010/11/05(金) 01:26:38ID:???俺々PHPとかでPHP本体自体を改造してるなら別だけどね
実際発行されてるクエリは
update tab1 set tag1 = $tag1 where dirpass = $returnpass
のままっていう可能性しかない
0443nobodyさん
2010/11/05(金) 01:55:08ID:XnKoTrfJあるいは、言語構造でもいいです。
お願いします m(__)m
0444nobodyさん
2010/11/05(金) 01:57:44ID:FUZYrjbX0446nobodyさん
2010/11/05(金) 01:59:15ID:???すいません
0449nobodyさん
2010/11/05(金) 02:25:42ID:???"update tab1 set `tag1` = '$tag1' where `dirpass` = '$returnpass'"
こんな感じに書き換えてみると良い
まぁ本当はPDOなんだからプレースホルダ使えってのが本音
$sql = 'update tab1 set tag1 = :tag where dirpass = :returnpass ';
$stmt = $dbh->prepare($sql);
$stmt->execute(array(':tag'=>$tag1,':returnpass'=>$returnpass));
0450nobodyさん
2010/11/05(金) 02:28:47ID:xucJQOJ50-9a-zA-Zのuniqueなkeyってどうやってつくるのん?
ライブラリがあると思うんだけどキーワードが思いつかない…
0451nobodyさん
2010/11/05(金) 02:30:57ID:FUZYrjbX書き換えさせていただきました
Connection failed: SQLSTATE[HY000]: General error: 1 SQL logic error or missing database
を吐いたんですけど
0452nobodyさん
2010/11/05(金) 09:14:48ID:???多分。
やったことないけど。
0453nobodyさん
2010/11/05(金) 09:48:11ID:???パーミッションでしょ。ファイルとフォルダの権限チェック
0455nobodyさん
2010/11/05(金) 14:34:50ID:???短縮URLは短さが命でしょ
uniqidはちと長いね
0-9a-zA-Zをただ単にランダムにして重複チェックするだけでしょ
長さがどうでもいいとか、0-9a-fまででいいなら>>454の言うようにuniqidでいい
0457nobodyさん
2010/11/05(金) 15:22:26ID:FUZYrjbXid 1 name 伊藤 age 23
id 2 name 田中 age 24
id 3 name 山田 age 33
id 4 name 桜庭 age 43
id 5 name 中村 age 23
を「age」の数値が多い順にソートしたいんですが良い方法ありますか?
あと「伊藤」と「中村」は「age」が一緒なんですけど
その場合はどうなりますか?
0458nobodyさん
2010/11/05(金) 15:25:12ID:FUZYrjbX0459nobodyさん
2010/11/05(金) 15:42:36ID:n8qMHMgb・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0460nobodyさん
2010/11/05(金) 15:43:17ID:FUZYrjbX0464nobodyさん
2010/11/05(金) 17:23:00ID:???____
/ \ /\ キリッ
. / (ー) (ー)\ <「つか今時キリッとか流行んないよ」
/ ⌒(__人__)⌒ \
| |r┬-| |
\ `ー’´ /
ノ \
/´ ヽ
| l \
ヽ -一””””~~``’ー?、 -一”””’ー-、.
ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒))
0466nobodyさん
2010/11/05(金) 17:34:14ID:???0467nobodyさん
2010/11/05(金) 18:17:15ID:???$inst = new Task();
$inst->Run();
$html[] = $instance->m_html;
$data[] = $instance->m_data;
0468nobodyさん
2010/11/05(金) 18:26:09ID:???0469nobodyさん
2010/11/05(金) 18:29:29ID:???0470nobodyさん
2010/11/05(金) 19:24:03ID:???isset($div["format"]) ← trueになるんだけどこんな動作してたっけ?
var_dump($div);
0471nobodyさん
2010/11/05(金) 19:27:04ID:???0472nobodyさん
2010/11/05(金) 19:36:50ID:???どうしてだろ?
$div = "sss";
if (isset($div["format"])){
echo "こっちにくるなー";
}else{
echo $div;
}
0473nobodyさん
2010/11/05(金) 19:39:34ID:???まさか$divがあった時点でtrueなのか、それとも間抜けな勘違いしてる?
0474nobodyさん
2010/11/05(金) 19:41:20ID:???if (isset($div["format"])) {
echo "こっちにくるなー";
}
0475nobodyさん
2010/11/05(金) 19:44:05ID:???$divが空文字だとfalse
$divがnullだとfalse
$divがintだとfalse
$divがfloatだとfalse
$divがbooleanだとfalse
0476nobodyさん
2010/11/05(金) 19:44:52ID:???0477nobodyさん
2010/11/05(金) 19:47:11ID:???文字列で[]やったときは違う。
さらにその[]の中を文字列にしたときは、文字列を数値としてみる。
"0"なら0 "1"なら"1" "format"なら なんと 0だ。
0479nobodyさん
2010/11/05(金) 19:50:38ID:???$div = "abc";
で
$div[0] は "a"
$div[1] は "b"
$div["1"] は "b"
$div["format"] は "a" なのだよ。
0480472
2010/11/05(金) 19:53:47ID:???>$div["format"] は "a" なのだよ。
これがわからない。
どうして$div["format"]が$div[0]になってしまうの?。
0481nobodyさん
2010/11/05(金) 19:56:42ID:???失敗したら0にする処理になってんじゃねーの?
■ このスレッドは過去ログ倉庫に格納されています