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

【PHP】下らねぇ質問はID出して書き込みやがれ 127

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2013/03/19(火) 22:13:49.76ID:???
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 126
http://kohada.2ch.net/test/read.cgi/php/1359808868/

◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】

◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)

◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0243nobodyさん2013/03/29(金) 11:55:25.73ID:???
>>242
何の話をしているんだ?
0244nobodyさん2013/03/29(金) 11:58:48.24ID:???
>>237
それをループさせる(爆)
0245nobodyさん2013/03/29(金) 12:53:54.89ID:???
>>198の話だけど?
0246nobodyさん2013/03/29(金) 13:44:23.45ID:???
とっくにそんな話は終わってんだろ
0247nobodyさん2013/03/29(金) 13:56:24.60ID:???
>>246
そう思うんならほっとけよ
0248nobodyさん2013/03/29(金) 14:02:33.34ID:???
ループしないといけない場合でも、ストアドで実装できるならストアドの方がいいね。
0249nobodyさん2013/03/29(金) 17:04:23.71ID:???
>>243
質問はID出せゴミ
0250nobodyさん2013/03/29(金) 19:01:31.30ID:YTM0Vtw2
【OS名】FreeBSD
【PHPのバージョン】5.4
【質問内容】
サブクラスに定義していない(スーパークラスの)関数
の中でサブクラスの変数は利用できないのでしょうか

これができればサブクラスの関数をスーパークラスに
引き上げることができて少しエレガントになるのですが
0251nobodyさん2013/03/29(金) 19:29:51.89ID:???
>>250
引数にすれば利用できる
0252nobodyさん2013/03/29(金) 20:05:29.23ID:???
その変数も基底クラスにもってけば?
0253nobodyさん2013/03/30(土) 13:44:04.73ID:???
【OS名】UbuntuServer12.04
【PHPのバージョン】5.3.10
【連携ソフトウェア】MySQL
データが1行のテーブルに記録された情報をmysql_fetch_assocなどの取得系で求めると必ずfalseが帰ってきます。
ただ2行以上ある場合はしっかりと帰ってくるのですが、肝心の1行目の情報がスルーされて2行目以降のデータが帰ってきます。
例)AAAのみ : bool(false) 、 AAA BBB CCCの三行 : BBBとCCCのみ帰ってくる

この場合ってどうしたらいいんでしょうか。SQL側の問題になるのでしょうか?
0254nobodyさん2013/03/30(土) 13:50:33.39ID:???
phpmyadminかコンソールからSQL実行したらどうなるの?
0255nobodyさん2013/03/30(土) 13:55:28.58ID:???
>>254
一行の場合でも結果がしっかり返ってきます。
書き忘れてましたがこのケース、whileで回すときだけ発生するのです。
0256nobodyさん2013/03/30(土) 14:12:46.69ID:???
>>1
0257nobodyさん2013/03/30(土) 14:53:57.28ID:???
>>255
ルールより自己の利益を優先するクズ野郎は消えろ
0258nobodyさん2013/03/30(土) 16:38:18.23ID:???
>>255人間のクズ
0259nobodyさん2013/03/30(土) 16:54:59.61ID:???
>>255の特徴

IDを隠す池沼
情報を後出しする糞
0260nobodyさん2013/03/30(土) 21:59:35.99ID:OzKgLCO2
PHPの配列で存在しない値を変数に代入したときどうなるの?
例えば

$a = $hairetsu['unko'];

unkoに対応する値はない。
このとき$aにはなにがはいるの?
こうしたとき、

isset($a)

ってしたときfalseかえってくる?
0261nobodyさん2013/03/30(土) 22:16:16.60ID:???
>>260
>◆質問する時の注意
>・ 質問者として、態度をわきまえること。
0262nobodyさん2013/03/30(土) 23:15:19.20ID:???
試してから質問してはいかがでしょうか
0263nobodyさん2013/03/31(日) 00:35:53.39ID:???
>>260
だれもテメーみたいなksに期待なんかしてないんだからfalseが返ってこようがこまいが関係ないだろ
一生電子ゴミを生産してろ
0264nobodyさん2013/03/31(日) 02:21:28.12ID:???
これは < 3 で真のはずなのに結果が 34 22 76となり
3回繰り返されず1回出力されるだけなんですがどうしてでしょうか?

<?php
$result[0] = 34;
$result[1] = 22;
$result[2] = 76;

for ($i = 0; $i < 3; $i++){
print $result[$i].'<br />';
}
?>
0265nobodyさん2013/03/31(日) 02:30:52.73ID:???
>>264
ルール無視のゴミは消えろ
0266nobodyさん2013/03/31(日) 07:47:45.45ID:???
http://ideone.com/tOT1Ek

3回出るけど
02672642013/03/31(日) 12:16:43.33ID:???
>>266
出ない理由を聞いているのであってあなたが試した結果はきいていません。
うっとうしいのでわざわざアンカうってレスしてもらわなくて結構です。
0268nobodyさん2013/03/31(日) 12:29:24.24ID:???
> これは < 3 で真のはずなのに結果が 34 22 76となり
何もおかしくない
02692642013/03/31(日) 12:31:32.34ID:???
267さんは偽です。
3回ってのは

34 22 76
34 22 76
34 22 76

こういうことです。for文は繰り返しですよね?
0270nobodyさん2013/03/31(日) 12:32:33.16ID:???
0からやり直せや
0271nobodyさん2013/03/31(日) 13:05:01.07ID:???
>>270
いいから教えろや
0272nobodyさん2013/03/31(日) 13:47:40.15ID:???
id出さない限り何度でも騙られるぞw
02732642013/03/31(日) 14:32:08.32ID:???
>>272
騙りではありません。
煽りたいだけなら黙っていてください。

ここにいる人たちはこんな簡単な質問にも答えられないのでしょうか?
0274nobodyさん2013/03/31(日) 14:38:59.41ID:???
俺は別にIDなんて気にしないけどIDに異様に拘る人がいるから質問するのならなりすましを防ぐ意味も込めてID出しとけばいいんじゃない
0275nobodyさん2013/03/31(日) 14:55:52.30ID:???
異様に拘るってアホか。騙りが出るからID出せって最初から言ってんだろ。テンプレ読めよアスペ。
02762642013/03/31(日) 17:55:19.44ID:???
IDとかどうでもいいねん。
質問したんだから答えろや
話が先に進まねぇやろ
0277nobodyさん2013/03/31(日) 18:04:09.79ID:???
あの手のガキはどっちみち答えないと思うよ
0278nobodyさん2013/03/31(日) 18:42:32.12ID:???
2重ループに陥って死ねや
0279nobodyさん2013/04/01(月) 13:20:46.87ID:???
質問に答えた上でIDだしてくれない?
とか普通に言えばいいのに、いちいち煽る
0280nobodyさん2013/04/01(月) 13:47:43.63ID:???
またそんなこと言ってルールに文句言うw
0281nobodyさん2013/04/01(月) 14:27:33.67ID:???
>>280

ルール重視して、スレの目的が達成できないとか本末転倒なので
柔軟に対応しろってこと。
ルール作った目的は偽者防止のはずだが、明らかに偽者じゃない人
にもIDだせってやりすぎだろ。
0282nobodyさん2013/04/01(月) 14:28:07.73ID:???
一番のルールは、荒らしを相手にしないことだ。
0283nobodyさん2013/04/01(月) 14:29:39.13ID:???
ruby基地が消えたと思ったら此れだよ
02842812013/04/01(月) 14:31:30.54ID:BwLTFG84
mysqlで少し場違いな気がする質問ですが
DBを利用した掲示板を作成しました
データを20件までとして古いものから削除したいので
以下のようにコード組みました
もう少しスマートにコード作りたいのですが
ご教授ねがいます


//日付と時刻の変数宣言
$date = date("Ymd");
$time = date("His");

//書き込み内容をDBへ
$result_insert = 'INSERT INTO date(name,body,date,time) VALUES (\''
.$name.'\',\''.$body.'\','.$date.','.$time.')';
mysql_query($result_insert, $con);

//指定件数の超過数算出
$result_select = 'SELECT * FROM date';
$number_count = mysql_num_rows(mysql_query($result_select, $con)) - 20;

//超過分を削除
$result_delete = 'DELETE FROM date ORDER BY date,time LIMIT '.$number_count;
mysql_query($result_delete, $con);
02852842013/04/01(月) 14:32:53.28ID:BwLTFG84
書き込んだら更新されて名前が>>284じゃなくなってました
気にしないでください
0286nobodyさん2013/04/01(月) 14:49:18.51ID:???
mysql_queryは非推奨
0287nobodyさん2013/04/01(月) 14:57:31.80ID:???
DELETE FROM date where not exists (select * from date order by date desc ,time desc limit 0,20 )
0288nobodyさん2013/04/01(月) 15:06:49.28ID:???
>>282
答える能力ないやつはすっこんでろ
0289nobodyさん2013/04/01(月) 15:22:49.33ID:???
>>284
・これ一件書き込んだら20件消えない?
・SQLインジェクションは大丈夫?
02902892013/04/01(月) 15:24:18.12ID:???
ごめん、
> ・これ一件書き込んだら20件消えない?
これ勘違いだった。
0291nobodyさん2013/04/01(月) 15:30:12.59ID:???
必ずPREPARE使う様にした方がいい、すぐ慣れるさ。
基本的に読む時に20件引っ張ってくればいいんで
消すこともないと思う。
0292nobodyさん2013/04/01(月) 15:30:22.40ID:???
SQLのlimit部分だけ$_GET['limit']で取得してるんですけど、これでもDELETEとかDROPされちゃう可能性ってあるんでしょうか?
0293nobodyさん2013/04/01(月) 15:31:05.51ID:???
>>286
嘘つくなよ・・・
0294nobodyさん2013/04/01(月) 15:31:51.91ID:???
>>292
数字としてバインドすれば問題ない
0295nobodyさん2013/04/01(月) 15:31:52.11ID:TTwnP515
すみません>>292ですがsageのチェックはずしたつもりが●のチェック外してました…
0296nobodyさん2013/04/01(月) 15:32:25.27ID:???
>>294
なるほどありがとうございます
0297nobodyさん2013/04/01(月) 15:33:41.44ID:???
>>292
limit="; DROP TABLE hoge"
とでも書けばいけるやん?
0298nobodyさん2013/04/01(月) 15:36:08.44ID:???
SQLに;が入ってれば弾けばいい
0299nobodyさん2013/04/01(月) 15:40:12.17ID:???
>>298
どうせ半端なことするなら mysqli_real_escape_string() 使え
半端なら半端をつらぬきとおせ
03002842013/04/01(月) 15:40:30.63ID:BwLTFG84
>>286>>293
わからんからそのままつかうことにします

>>287
単体で実行したけどエラーが出ました
#1093 - You can't specify target table 'date' for update in FROM clause
sqlよくわかってないんですみません

>>289
SQLインジェクションはnameとbodyに対し事前に行ってます
指摘ありがとうございます
0301nobodyさん2013/04/01(月) 15:41:05.73ID:???
>>298
わたしなら 0 を足す。
0302nobodyさん2013/04/01(月) 15:42:06.13ID:???
>>300
今はmysqli_queryだぞ
03032842013/04/01(月) 15:48:29.65ID:BwLTFG84
>>291
ごめんちょっと調べたけど
俺の実力では意味がわからなかった
0304nobodyさん2013/04/01(月) 15:48:33.69ID:???
>>300
table名が同じだと無理。別名つけてやればいいはず
数を数えるのと消すのを別の行でやると複数同時に動いた時バグるぞ。
トランザクションにしてもいいけど
0305nobodyさん2013/04/01(月) 16:06:43.25ID:???
>>297
mysql_queryって2つのSQL同時に実行出来ないでしょ ;で区切っても
03062842013/04/01(月) 16:28:56.62ID:BwLTFG84
>>302
置き換えてみたら動かなくなった

>>304
言ってることはわかるけどどうやって実現するのかわからない
勉強しないと駄目だね
0307nobodyさん2013/04/01(月) 16:40:33.45ID:???
>>306
動かなくなった じゃなくてさあ・・・
いや、別に良いや俺のサイトじゃないし
0308nobodyさん2013/04/01(月) 17:14:32.75ID:???
他の部分がmyql_のままなんだろ
mysqlとmysqliでは別モンだから全部変えなきゃいけないぞ
03092842013/04/01(月) 17:26:22.71ID:BwLTFG84
>>307>>308
ごめん名知識が無くて
全部変えて見たらデータベースに接続なってもうた
よくわからなくなってしまった
03102842013/04/01(月) 17:29:28.39ID:BwLTFG84
説明不足でした
mysql_connectをmysqli_connectに変えて接続かのうか処理したところ
弾かれたという現状です
受け渡す値もかえないとだめだったりするかもです
0311nobodyさん2013/04/01(月) 17:33:58.04ID:???
弾かれた
って何がどうなったの?
03122842013/04/01(月) 17:51:18.80ID:BwLTFG84
$con = mysqli_connect('126.0.0.1', my_user', 'パスワード');
if (!$con) {
$error = true;
exit('データベースに接続できませんでした。');
}


ここの処理で接続が弾かれてしまう

そもそもmysqlとmysqliの違いもわかってない
やばい
0313nobodyさん2013/04/01(月) 17:58:43.53ID:???
mysqli_connect_errno() の値は?
0314nobodyさん2013/04/01(月) 18:33:34.88ID:???
こうじゃね?

$con = mysqli_connect('126.0.0.1', ’my_user', 'パスワード','DB名');
0315nobodyさん2013/04/01(月) 18:38:29.21ID:???
それ指摘するなら、 126も127になおしといてやろうぜw
まあ書き込みでミスったんだろうけど
03162842013/04/01(月) 18:40:42.39ID:BwLTFG84
すみません
mysqli_select_db()の方でした
それで調べてみたら入れる値の順序が逆だったそうです

うまいこと動いてくれましたありがとうございます


まだ質問が残っているのですが
>>287がうまく動いてくれない
>>304の助言を元に挑戦してます
03172842013/04/01(月) 18:42:24.59ID:BwLTFG84
>>314>>315
ごめんなさいそこは自分の使ってるサーバー情報なので
書き換えた際におかしくなっただけです
今現在動いてます
細かなところに気づいていただきありがとうございます
0318nobodyさん2013/04/01(月) 20:09:58.96ID:???
動いてる?それは何かおかしい mysqliはmysqlにくらべて多くの場合引数が1コ多い

$con = mysql_connect('126.0.0.1', 'my_user', 'パスワード');>>312
↓
$con = mysqli_connect('126.0.0.1', ’my_user', 'パスワード','DB名');>>314
0319nobodyさん2013/04/01(月) 20:19:53.03ID:???
>>318
DB名無しでも動くよ?
0320nobodyさん2013/04/01(月) 20:31:39.19ID:???
面倒くさいから全部設定に書いて引数無しで接続してるわ・・・
03212842013/04/01(月) 21:02:06.55ID:BwLTFG84
>>318>>319
問題なくINSERTやDELETEできてます
0322nobodyさん2013/04/01(月) 21:20:41.93ID:???
>>315
いや バンクの技術者かもしれん
http://www.utrace.de/whois/126.0.0.1

ためしに284はfusianasanするべき
0323284nttkyo039102.tkyo.nt.ngn2.ppp.infoweb.ne.jp2013/04/01(月) 21:28:12.90ID:BwLTFG84
>>322
いえ、違いますよ
DBを使おうとおもい勉強がてら作ってみたのですがうまく行かない
長ったらしい文章になる等々あって今回質問しました
0324nobodyさん2013/04/01(月) 21:37:33.60ID:???
メール本文にメルアド埋めるのhtmlエンコしたいけどてまきまふん
0325nobodyさん2013/04/01(月) 22:58:56.50ID:???
そーせーじえっぐまふん
0326nobodyさん2013/04/02(火) 04:22:59.24ID:???
ソーセージエッグマフィン美味しいよね
朝マックのときは大抵あれ買う
0327nobodyさん2013/04/02(火) 05:39:33.55ID:???
味覚障害
0328nobodyさん2013/04/02(火) 17:29:03.92ID:pCXIVpZH
お知らせ

市原警察署の生活安全課の帰化人創価警官の指導の元、
入学式から2週間ほど、在日の創価学会員を主体とした自称防犯パトロールが、
2週間ほど行われることになりました

生活安全課の指導であることと、パトロールであることは、
絶対に公言してはいけないとの指導も、帰化人創価警官より出ています

期間中は2人組の在日の創価学会員が、頻繁に創価批判者の自宅周辺を、
うろつき回ると思われます
日本人の方は、充分に注意してください
0329nobodyさん2013/04/02(火) 18:23:57.95ID:???
ID出てるけど質問に見えない気がしないでもない
0330nobodyさん2013/04/02(火) 19:53:45.82ID:???
ソーセージなんとかもいいけどハッシュポテトもいいよ

あれは癖になる
0331nobodyさん2013/04/02(火) 22:45:17.78ID:???
メール本文にメルアド埋めるのhtmlエンコしたいときはどうかきますか?
0332nobodyさん2013/04/02(火) 22:48:54.62ID:???
母国のコミュニティでどうぞ
0333nobodyさん2013/04/03(水) 08:13:37.42ID:h+HuJAZG
HPにphpのソース載せたいんだけどソースを無効にして表示する方法を
教えてください。よく、php系のページに載せてあるけどあの方法がわからない。
0334nobodyさん2013/04/03(水) 08:16:18.19ID:???
>>333
そこのHTMLソース見れ
0335nobodyさん2013/04/03(水) 08:48:25.20ID:???
preとかcodeとか
0336nobodyさん2013/04/03(水) 09:51:28.80ID:???
ENT_COMPAT|ENT_HTML401と等しい定数
例えばENT_DEFAULTが定義されてないとかバカだろw
その後の引数の$encodingを触りたいだけなのに
延々とENT_COMPAT|ENT_HTML401と書かされるww
0337nobodyさん2013/04/03(水) 09:59:22.29ID:???
いまどき5.4未満とか
0338nobodyさん2013/04/03(水) 10:14:17.25ID:???
PHP書くやつがHPとか言っちゃうのか
0339nobodyさん2013/04/03(水) 10:39:54.58ID:Ko35x5uB
imagejpegについて質問させてください。
imagerotateで画像を回転させて
imagejpeg($rotate_file, null, 100);
とすると画像データがそのまま表示され、画像が表示されません。
以下のようにヘッダーをつけると
header("Content-Type: " . $mime . "");
imagejpeg($rotate_file, null, 100);
「Warning: Cannot modify header information - headers already sent」というエラーが出ます。
HTML上に画像として表示するにはどうすればよいのでしょうか?
0340nobodyさん2013/04/03(水) 11:47:27.38ID:???
>>339
画像処理スクリプトは、HTMLと混在させず、画像専用に単独でPHPファイルに記述します。
その画像ファイルを<img src="gazou.php">などとしてHTMLファイルから読み込みます。
03413392013/04/03(水) 12:14:26.87ID:Ko35x5uB
>>340
回答ありがとうございます。

画像処理部分は色々な関数を突っ込んでる部分の一部になります。
function.php内にあるfunction rotate(){ 処理 } という感じになります。

単独となるとfunction.phpからrotate()関数を切り出さないといけないということでしょうか。
そうなるとちょっと構成そのものを見直さないといけないので意外と面倒そうですね。
0342nobodyさん2013/04/03(水) 12:26:05.25ID:???
>>339
>function.phpからrotate()関数を切り出さないといけないということでしょうか。

いや、切り出す必要はないと思う。
画像専用ファイル(gazou.php)から、その rotate関数を読み込めばいいんじゃないかな。
そもそもローテーションしなければ表示されるの?
■ このスレッドは過去ログ倉庫に格納されています