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

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

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

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

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

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

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

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

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0528nobodyさん2014/08/26(火) 01:13:28.10ID:???
>>527
鏡に向かって話しかけながら活字に起こして投稿するって楽しいの?
0529nobodyさん2014/08/26(火) 01:36:39.98ID:???
反応したってことはやっぱそうなのか。
新規参入組の初心者蹴落として減りつつあるPHPの良いお仕事見つかるといいね。
0530nobodyさん2014/08/26(火) 01:47:52.45ID:???
と、反応せざるを得なかった負け犬>>529の捨て台詞

だからお前は誰にも一人前の人間として扱ってもらえないんだよ
0531nobodyさん2014/08/26(火) 03:39:54.05ID:???
何この糞スレ
0532nobodyさん2014/08/26(火) 11:48:06.96ID:I7gPs9eW
$url = isset($_POST['url']) ? trim($_POST['url']) : '';

↑調べても trimの前の ? の意味と終わりの: ''の意味が出てこないので教えていただきたい
0533nobodyさん2014/08/26(火) 11:50:52.95ID:???
>>532
http://php.net/manual/ja/language.operators.comparison.php#language.operators.comparison.ternary
0534nobodyさん2014/08/26(火) 15:08:19.55ID:???
      ___   ━┓  ___    ━┓
     / ―  \  ┏┛/ ―\   ┏┛
    /  (●)  \ヽ ・. /ノ  (●)\  ・
  /   (⌒  (●) /. | (●)   ⌒)\
  /      ̄ヽ__) /   |   (__ノ ̄  |
/´     ___/     \        /
|        \          \     _ノ
|        |          /´     `\
--------------------------------------
このスレはあなたにとって役に立ちましたか?

 ○ 非常に役にたった
 ○ 役にたった
 ○ どちらともいえない
 ○ 役に立たなかった
 ○ 全く役にたたなかった
 ● むしろ見てくれた連中に謝罪が必要
0535nobodyさん2014/08/26(火) 16:29:11.62ID:???
>>532
notice出さないように$_GETや$_POSTに対してissetで確認してから使うのはPHPの常套手段
$_GETや$_POSTが多いほど同じ処理をしなきゃいけないしif-elseで書くと行数が長くなりがち
そこでよく使われるのがその三項演算子
可読性が悪くなるので無闇に使うのはよくないけどこのケースではよく使われる
全てのif-else文を行数削減に三項演算子に置き換えようとするのは愚行とみなされるので注意

if ($a === 1) {
echo "a";
} else {
echo "b";
}

echo ($a === 1) ? "a" : "b";
0536nobodyさん2014/08/26(火) 18:16:20.06ID:???
PHPは避けてRubyでやるのが常套手段
そうしないと>>535みたいにかわいそうな人になってしまう
0537nobodyさん2014/08/26(火) 18:19:05.02ID:???
今どき3項演算子を知らないということは、PHPが初めてなんじゃないの
0538nobodyさん2014/08/26(火) 18:22:19.49ID:???
phpから入ったならもうプログラマとしての前途は断たれたも同然。
0539nobodyさん2014/08/26(火) 18:51:51.07ID:???
確かに3項演算子ではあるが、この場合は条件演算子と呼んであげるべき。
0540nobodyさん2014/08/26(火) 19:26:37.93ID:???
>>538
何でそうなるんだよ
0541nobodyさん2014/08/26(火) 19:29:32.07ID:???
>>540
そいつにとっては、言語一個入れたらもう頭がいっぱいなんだろ
0542nobodyさん2014/08/26(火) 19:30:54.08ID:???
>>541
俺はPHP終わったらC#、Rubyってやっていくつもりだけど?
0543nobodyさん2014/08/26(火) 19:47:56.78ID:???
今の段階でもJavaScript Python Java C#ぐらいは出来る
その上でPHPやってるしそんなやつが大半だろ
少なくともこのスレの回答者側に回ってるやつはJavaScriptも出来るはず
0544nobodyさん2014/08/26(火) 19:53:30.52ID:???
>>536
今日もスレ1日監視してたんだな?
自分に向けられたレスでもないのに動向が気になっちゃって
寝てる時以外定期的にリロード繰り返してるんだろ?

ていうかRubyistと見せかけて出来もしないRuby出すんじゃねえよ
0545nobodyさん2014/08/26(火) 20:18:31.16ID:???
>>543
改めていうけど、Cを経験してないマはなにやっても大抵ダメ。
限度をしらない富豪的プログラミングをしたりする。
0546nobodyさん2014/08/26(火) 20:20:20.33ID:???
確かにCはやりたい
0547nobodyさん2014/08/26(火) 20:31:32.47ID:???
チートシートどぞ
http://hyperpolyglot.org/
0548nobodyさん2014/08/26(火) 20:50:57.40ID:???
PHPもCも大して変わらんよ
ポインタがあるかないぐらいの差
0549nobodyさん2014/08/26(火) 21:01:09.63ID:???
いや、C使えれば(最新の機能はともかく)PHP使えるだろうけど、
PHP使えてもCはつかえねーな。 文字列の操作ですら無理でしょ。
0550nobodyさん2014/08/26(火) 22:14:06.65ID:jZ6iEOxc
phpのずぶの初心者です。BBSを作ろうとしています。質問させてください
質問の箇所はここです

if(isset($_POST["write"])){
$name=convString($_POST["name"]);
if (!$name) $name = "名無しさん";

$body=convString($_POST["naiyou"]);
$body=autoLinker($body);
$body=$body."\n";
$time=date("Y/m/d (D) H:i:s", time());

$serv = $_SERVER["REMOTE_ADDR"];
$serv_md5 = substr(md5($serv), 0, 30);
$date_md5 = substr(md5(date("Y-m-d")), 0, 20);
$key_md5 = substr(md5("samplekey"), 0, 10);
$id_md5 = md5($serv_md5 . $date_md5 . $key_md5);
$id = substr(base64_encode($id_md5), 0, 8);
$input="名前:$name:投稿日:$time ID:$id<br/>$body";
$fp=@fopen("./keijiboad.log","a");
flock($fp,LOCK_EX);
fputs($fp,$input);
fclose($fp);
}

$data = file("./keijiboad.log");
for($i=0; $i<count($data); $i++){
$no=$i+1;
echo " $no:$data[$i]<br/>\n<hr />";
0551nobodyさん2014/08/26(火) 22:15:18.70ID:jZ6iEOxc
と、Noと、postからゲットした情報(名前、本文)と時間とIDを$inputに突っ込んで、ログファイルに全て書き込み、
そのログファイルから抽出するようにしました

名前が空白の時には「名無しさん」と入れるようにして、
本文が空白の時などにエラーを吐き出すようにしたいです
が、本文の処理をしても、他の名前やナンバーや時間やIDが一緒くたに処理されているので
本文だけの書き込みが無いままに処理されると言う事態になっています
本文にエラーが生じた時に、クリックした送信ボタンが中断されると言うようなphpの構文を教えて下さい。宜しくお願いします
0552nobodyさん2014/08/26(火) 22:16:37.16ID:jZ6iEOxc
$body=convString($_POST["naiyou"]);
$body=autoLinker($body);

などに関しては、拾ってきたfunction構文です。
このような感じです

function convString($string) {
if(get_magic_quotes_gpc()){
$string = stripslashes($string);
}
$string = htmlspecialchars($string,ENT_QUOTES,'utf-8');
$string = str_replace(",",",",$string);
$string = str_replace(array("\r\n","\n","\r"),"<br />",$string);
return $string;
}

function autoLinker($str)
{
$pat_sub = preg_quote('-._~%:/?#[]@!$&\'()*+,;=', '/');
$pat = '/((http|https):\/\/[0-9a-z' . $pat_sub . ']+)/i';
$rep = '<a href="\\1">\\1</a>';
$str = preg_replace ($pat, $rep, $str);
return $str;
}
0553nobodyさん2014/08/26(火) 22:22:42.26ID:jZ6iEOxc
nameは名前、naiyouは本文、
writeは送信ボタンに付けた名前です

わかりにくくてごめんなさい。宜しくお願いしますm(_ _)m
0554nobodyさん2014/08/26(火) 22:36:35.27ID:jZ6iEOxc
凄く簡単にしてみるとこんな感じです。
余分なのを取っ払ってみました

<?php

if(isset($_POST["write"]))
{
$name=($_POST["name"]);
if (!$name) $name = "名無しさん";
$body=($_POST["naiyou"]);
$body=$body."\n";
$input="名前:$name:<br/>$body";
$fp=@fopen("./keijiboad.log","a");
flock($fp,LOCK_EX);
fputs($fp,$input);
fclose($fp);
}

$data = file("./keijiboad.log");
for($i=0; $i<count($data); $i++){
$no=$i+1;
echo " $no:$data[$i]<br/>\n<hr />";
}
?>

これで、名前は空欄のままでOKで、本文がエラーの時に送信を中断するようにしたいです
宜しくお願いします
0555nobodyさん2014/08/26(火) 22:39:35.06ID:???
if ($POST["naiyou"] === "") {
echo "だめです。";
exit();
}
0556nobodyさん2014/08/26(火) 22:45:36.03ID:jZ6iEOxc
>>555
本文が無い場合と言う指定だけでは、Noや名前、時間、IDなどが書き込まれてしまうので
本文が書かれていない場合、送信ボタンを中止する
と言うような物はできないでしょうか
0557nobodyさん2014/08/26(火) 23:12:46.78ID:???
>>556
できない
お前には無理
0558nobodyさん2014/08/26(火) 23:20:32.29ID:???
だめです言ったあとheader関数でRefreshヘッダ使って元のページに戻す。
>>556の要件を満たすにはJavaScript使うしかない。
0559nobodyさん2014/08/26(火) 23:25:13.37ID:VKuoWNAX
鯖と蔵の区別すら付けられないのがぺちぱーの既定値だからな
0560nobodyさん2014/08/26(火) 23:26:07.93ID:jZ6iEOxc
>>557
初心者なので大目に見てください><;

>>558
なるほど、phpでは無理なんですか……
道理で検索かけても引っかからないと
ありがとうございました。その方向で試してみますm(_ _)m
0561nobodyさん2014/08/26(火) 23:28:46.91ID:???
>>550=マジクズ。

他人に頼る前提で作り始めるとかマジで頭沸いてんな。

最近質問してくるのはこういうどうしようもないクズばっか。
0562nobodyさん2014/08/26(火) 23:34:11.42ID:???
初心者を免罪符にし始めたぞw成長性ゼロのテンプレみたいな奴だなww
0563nobodyさん2014/08/26(火) 23:39:20.99ID:jZ6iEOxc
>>561-562
2chでわざわざ人を叩いている人の成長性はいかほどなんでしょうねぇ
不愉快ですね

ではでは
0564nobodyさん2014/08/26(火) 23:49:03.47ID:???
こういう奴は初心者じゃなくなったらなくなったで
また何かしらできない言い訳を探すんだよ
根性が腐ってるからどうしようもない
0565nobodyさん2014/08/26(火) 23:50:20.27ID:???
>>563
ここしか質問する場所がないゴミがよく言うわw
0566nobodyさん2014/08/26(火) 23:59:04.69ID:???
明らかにおかしい人を排除するのにアンチは役立つな
それ以外は邪魔だけど
0567nobodyさん2014/08/27(水) 00:14:04.64ID:???
>>556
書き込む前にその処理を入れるんだよ。そうすれば書き込まれない。
>>555 の $POST → $_POST だけど。
0568nobodyさん2014/08/27(水) 00:35:35.75ID:???
↑馬鹿発見
0569nobodyさん2014/08/27(水) 01:10:25.04ID:???
PHPみたいな言語もどきでやっとプログラミングもどきができるようになったから自己顕示したいんだろ。
0570nobodyさん2014/08/27(水) 01:34:43.06ID:???
質問者は>>1嫁
>(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
0571nobodyさん2014/08/27(水) 01:36:06.79ID:???
PHPのアンチが湧くってのはジャップとチョンだけの文化。
いやだね根暗なアジア人は。
0572nobodyさん2014/08/27(水) 02:42:31.13ID:???
どっかで聞いたけど世界のPHP人口の17%は南チョンらしいぞ
南チョン御用達の言語PHP

日本人ならRuby
0573nobodyさん2014/08/27(水) 09:56:06.38ID:???
今どきBBSなんて作って何がしたいの?個人サイト開くなら別だけど
0574nobodyさん2014/08/27(水) 11:09:51.09ID:???
>>572
そして、荒らしのあなたは北朝鮮人なんですね。
わかります。
0575nobodyさん2014/08/27(水) 13:05:15.68ID:???
>>573
ID出てません
0576nobodyさん2014/08/27(水) 13:09:55.06ID:KzHvyhgr
普段はarray_key_exists使ってるな
0577nobodyさん2014/08/27(水) 17:00:24.87ID:???
掲示板はWebProg入門成果としてよく作られるんじゃね?
自分も昔アップロード掲示板作ったわー
0578nobodyさん2014/08/27(水) 18:17:56.73ID:U01vlsnG
ファクトリーメソッドで返ってくる変数に
タイプヒンティングつけたいんぁけど
どうしたらいいかな
0579nobodyさん2014/08/27(水) 18:18:49.39ID:???
>>578
ググればいいんじゃね?
その程度も思い付かないのかクズ
0580nobodyさん2014/08/27(水) 18:25:20.94ID:???
>自分も昔アップロード掲示板作ったわー
この人自分のブログと2chの区別もつかないとかかなり頭悪そう。
0581nobodyさん2014/08/27(水) 18:53:10.26ID:???
あー戻り値ではタイプヒンティング出来ないのか
意外な弱点があるな
0582nobodyさん2014/08/27(水) 18:54:26.34ID:???
意外も何もPHPでまともなシステム作ろうと思うほうが間違い
0583nobodyさん2014/08/27(水) 19:16:35.29ID:???
>>578
https://wiki.php.net/rfc/returntypehinting

まあ、所詮html組み立て用スクリプトからチマチマ機能増やしてきただけの言語ですので。
0584nobodyさん2014/08/27(水) 19:27:30.81ID:???
いきなりレス増えたな
おはよう今日も昼夜逆転荒らし頑張ってね
0585nobodyさん2014/08/27(水) 19:38:45.98ID:???
来年の5.7に乗るといいなってとこだな。
0586nobodyさん2014/08/27(水) 20:05:25.91ID:???
PHP自体が終わってから乗ってももう遅い
終わる前に乗せるべきだったな
0587nobodyさん2014/08/27(水) 20:25:23.75ID:???
phpinfoの中に朝鮮語バナーが入ってる奴www
0588nobodyさん2014/08/27(水) 21:18:51.70ID:???
これ昼夜逆転とか言い出した当の本人が昼夜逆転してるパターンだろうなw
0589nobodyさん2014/08/27(水) 23:23:32.63ID:???
だなw>>588とか見事に昼夜逆転してんなw
0590nobodyさん2014/08/28(木) 02:54:34.04ID:???
こういう人ってアンカつけないと自分のことを言われてるみたいで不安なのかな。
0591nobodyさん2014/08/28(木) 06:24:48.99ID:???
一人だけ草はやしてるから見分けがつけやすいね
0592nobodyさん2014/08/28(木) 17:36:32.05ID:d5muQxti
phpでデータベースからfetchAllで取得した配列をそのままjson_encodeしてpicojsonでパースしたいんですけど

[{"mission_id":"1","mission_name":"hoge"},{"mission_id":"2","mission_name":"hoge"}]
という形で名前が無くてパースが失敗するんですがどう識別したらいいですか?
サーバー側で手作業で文字列連結するしかないんですか?
"missions":[{"mission_id":"1","mission_name":"hoge"},{"mission_id":"2","mission_name":"hoge"}]
0593nobodyさん2014/08/28(木) 18:10:42.94ID:???
picojsonが失敗する理由なんかしらねーし、
そうすりゃ読めるならそうすればいいだろ。

array( "missions" => $data) ってやってからエンコードしたって、
jsonなんだから、
{"missions":[{"mission_id":"1","mission_name":"hoge"},{"mission_id":"2","mission_name":"hoge"}]}
になるだけなんで、その例のような出力にはならんで。
0594nobodyさん2014/08/28(木) 20:04:18.51ID:???
5.6.0きたで〜
0595nobodyさん2014/08/28(木) 20:24:21.48ID:???
>>592みたいな馬鹿にはPHPがお似合いだな
他の質問スレにこういう馬鹿がくるとウザいだけだし
0596nobodyさん2014/08/28(木) 20:41:54.30ID:???
>>595
お前は死ぬか消えるかどっちかにしろ
0597nobodyさん2014/08/28(木) 20:47:51.15ID:???
と、一番消えるべき人間が申しております。
0598nobodyさん2014/08/28(木) 20:56:30.07ID:???
消えるべきは>>592みたいなガチクズだよ

>>596は生きてる価値がないから
当然死ぬ価値もない
>>596の命の値段=\0
0599nobodyさん2014/08/28(木) 21:01:36.21ID:???
<?php
$test = "aa";
?>

<?php

echo $test;

?>


同じファイル内で上記のようにPHPを分けて書いた場合、
上のセクションで定義した変数を、下のセクションで参照することできないんでしょうか?
0600nobodyさん2014/08/28(木) 21:05:47.60ID:???
>>599
IDが出ていません
0601nobodyさん2014/08/28(木) 21:40:35.32ID:xK1DLfnq
<?php
$test = "aa";
?>

<?php

echo $test;

?>


同じファイル内で上記のようにPHPを分けて書いた場合、
上のセクションで定義した変数を、下のセクションで参照することできないんでしょうか?
0602nobodyさん2014/08/28(木) 21:47:03.74ID:???
>>601
参照できるよ。
実際に試してみ。
0603nobodyさん2014/08/28(木) 21:55:58.15ID:xK1DLfnq
いえ、できなかったので聴いてるんですが。。
0604nobodyさん2014/08/28(木) 22:05:58.03ID:???
>>603
上下のセクション間のどこかで、知らずに
変数を別の値で上書きしているんじゃないの。
怪しい箇所でvar_dump()してみなよ。
0605nobodyさん2014/08/28(木) 22:10:06.51ID:xK1DLfnq
変数名ミスでした。。。本当にすいませんでした
ありがとうございました
0606nobodyさん2014/08/28(木) 23:49:00.08ID:???
>>605
同一の変数名とかハイライトできるエディタ使っとけ。
0607nobodyさん2014/08/28(木) 23:52:26.13ID:???
>>605
二度と来るな精神異常
0608nobodyさん2014/08/29(金) 00:03:03.24ID:???
>>607
おや。
北朝鮮人と言われて否定しなかった荒らしさんじゃないですか。
0609nobodyさん2014/08/29(金) 00:13:14.70ID:???
エディタもそうだが、そもそも NOTICE 出るようにしとけ
0610nobodyさん2014/08/29(金) 00:28:40.88ID:???
「変数を間違えると新しい変数が作られる」そのまんまでワロタwwwwwwwwwwwwwwwwwwwwwwwwwwwwww



ゴミ言語PHPは今日も利用者に無用な混乱を与えていますwwwwwwwwwwwwwwwwwwwwwwwwwwwwww



こんなゴミ使ってるからそんな無駄なところで時間食うんだろwwwwwwwwwwwwwwwwwwwwwwwwwww



何千歳まで生きるのか知らんけど無駄な時間を使えるほど長い人生の人はいいですなぁwwwwwwwwwwwwwwwwwwwwwwwwwww
0611nobodyさん2014/08/29(金) 00:33:16.14ID:???
このオッサン何言ってんの?
0612nobodyさん2014/08/29(金) 00:34:41.44ID:???
変数のチェックすらせずに質問するとかゴミ以外の何物でもないな
0613nobodyさん2014/08/29(金) 00:44:06.59ID:???
お、きたきた。思ったより喜んでるな
0614nobodyさん2014/08/29(金) 01:06:21.98ID:???
ぶっちゃけさせてもらうともっと別の理由が原因で表示されなかったんだが
説明がめんどかったんでよくある変数名ミスってことで誤魔化しといた
なんかキチガイが湧いてたみたいだから本当のこと書いとくわ
0615nobodyさん2014/08/29(金) 01:47:52.74ID:???
キチガイにエサをやらないでください
0616nobodyさん2014/08/29(金) 06:02:26.26ID:???
>>614
いいから二度と来るな基地害。
0617nobodyさん2014/08/29(金) 15:15:02.98ID:???
>>598
お前真面目にPHPやって質問してる人に対して「ガチクズ」とか言って恥ずかしくないの?

あと俺が生きてる価値がないってどういうところで断定したの?
0618nobodyさん2014/08/29(金) 15:15:45.18ID:???
>>617
荒らしに加担するな。迷惑だ。
0619nobodyさん2014/08/29(金) 15:24:11.38ID:???
>>618
うまい逃げ方だな
0620nobodyさん2014/08/29(金) 15:52:46.59ID:???
スルーしろと周知することで、いつもの人がのびのびとレスをできる環境を作ってあげてるんだなぁ。
相手されないといなくなるなんてタイプじゃないよアレは。
0621nobodyさん2014/08/29(金) 15:55:21.02ID:???
レスのあるなし関係なく荒らすアレはどうでもいいんだよ。
0622nobodyさん2014/08/29(金) 20:40:15.85ID:???
今日も昼間からニートの運動会か

業界全体の動きとしてPHPを使わない方向になりつつあるから、
PHP厨が仕事を見つけられないのも無理はない
0623nobodyさん2014/08/29(金) 23:11:27.45ID:???
そりゃ終了の決まったものを使い続けるアホ企業はごく一部だけだろw
0624nobodyさん2014/08/29(金) 23:53:55.48ID:Ii5bZrEx
この本
http://www.sbcr.jp/products/4797369458.html

買ってphpからmysqlを弄る練習を1周した位の知識しか頭に付いていないのですが

PDOで画像や動画をデータベースに保存したり出力させたりというサンプル・勉強ができるオススメの本は何かありますか?
0625nobodyさん2014/08/29(金) 23:58:29.89ID:???
phpマニュアルのPDOの欄をみましょう
画像や動画の型が何なのかわかってれば余裕じゃね
0626nobodyさん2014/08/29(金) 23:58:31.45ID:???
>>624
自分で探せないようなゴミにオススメの本はありません。
0627nobodyさん2014/08/30(土) 00:00:22.34ID:???
>>624
30万円くれたら2日間みっちり教えてやんよ
■ このスレッドは過去ログ倉庫に格納されています