【PHP】下らねぇ質問はID出して書き込みやがれ 104
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2011/02/14(月) 16:45:59ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 103
http://hibari.2ch.net/test/read.cgi/php/1295956018/
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0552nobodyさん
2011/03/04(金) 21:17:36.83ID:???0555nobodyさん
2011/03/05(土) 03:29:38.29ID:???0556nobodyさん
2011/03/05(土) 10:45:45.24ID:???0557nobodyさん
2011/03/05(土) 11:16:04.08ID:OCDkynbh食べれるのかな?
0558nobodyさん
2011/03/05(土) 12:39:24.75ID:APBkW1/M0559nobodyさん
2011/03/05(土) 12:44:23.65ID:gZQzEiVH自分ZendFrameWorkしか使えないので、応募できる企業が少ないです;;
なぜZendFrameWorkはハブられてるんですか?
0560nobodyさん
2011/03/05(土) 13:16:06.60ID:???0562nobodyさん
2011/03/05(土) 13:32:47.24ID:???0564nobodyさん
2011/03/05(土) 16:20:51.30ID:Rt5/I4WD【PHPのバージョン】5.1.6
【連携ソフトウェア】MySQL
【質問内容】
全角文字を含むSJISのCSV(セパレータは,)をUTF8に変換して
mb_splitを使ってカラムとごに分割したのですが、
サーバの環境に寄って,で分割できない場合があります。
現象としては1行に15個の,があったときに
16個のデータに分割したいのですが、
15個のデータにしか分割できません。
全角文字を含むカラムの時に,で分割できないように
みられます。
どちらもPHPは5.1.6ですが、サーバのOSだけが
CentOSの5.3と5.6で異なります。
おかしな現象がでるのは5.3で出てます。
ソースは以下のような感じで分割しています。
mb_split(',',$data);//$dataにはCSV1行分のデータが入っています。
全角文字を含むCSVを分割するときは
mb_splitでなく、他の関数を利用したほうが良いのでしょうか?
アドバイスをお願いいたします。
0565nobodyさん
2011/03/05(土) 16:28:23.65ID:???0566564
2011/03/05(土) 16:38:45.25ID:???str_getcsv
(PHP 5 >= 5.3.0)
と書いてあるので5.1.6では使用できないと思うのですが。
使ってみたら、動きませんでした。
0567nobodyさん
2011/03/05(土) 16:49:22.32ID:???0569566
2011/03/05(土) 17:09:52.27ID:???変換はちゃんとできておりました。
日本語を含むカラムもちゃんと分割できているところもあれば、
出来ていないところもあったりします。
一貫性が無いので気持ち悪いところです。。。
>>568
php.ini確認してみました。
mb_internal_encodingを確認したところ、
どちらもデフォルト(未設定)でしたが、
mbstring.languageが
5.3はJapanese
5.6はデフォルト(未設定)でした。
このあたりを少し整理したいと思います。
文字コードはサーバ側は基本utf8で行きたいので、
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
で統一してテストしてみます。
0570nobodyさん
2011/03/05(土) 17:10:24.62ID:???0571nobodyさん
2011/03/05(土) 17:25:52.40ID:???エスパーじゃないんだからわかるわけ無いだろ
0572nobodyさん
2011/03/05(土) 17:36:41.53ID:kv11pV2Y現在、書き込みがあったら管理人にメールという仕様になっていますが
下記のようなシステムに変更したいと思います。
閲覧者が掲示板に書き込み
↓
管理人の携帯電話に内容をメール
↓
管理人が承認すれば掲示板に反映
(メール内のURLをクリック等)
fromへのPOSTをURLクリックで実現できるしょうか? お願いします。
0573572
2011/03/05(土) 17:44:54.47ID:kv11pV2Y情報を管理人のメールへ送信させています。
次の一歩が行き詰っています。
0575566
2011/03/05(土) 17:48:21.49ID:???ご指摘の通りphp.iniのmb_internal_encodingあたりの設定を見直したら
どちらのサーバでも全データがちゃんと「,」で分割できました。
とても助かりました。
どうもありがとうございました。
>>571
>>568さんのおかげで解決したので
とりあえず行を晒すのは控えさせていただきたいと思います。
また問題が発生したときにはさっさと晒すようにしますね。
0576572
2011/03/05(土) 17:50:29.82ID:kv11pV2Y書き込みデータに、そのフラグを追加したとしてどうやってメールから
フラグ変更すればよろしいでしょうか?
今は、iモードから管理ページを開いてパスワード入力して
問題のある書き込みを削除って手続きをしていますが
この作業に1分近くかかりってしまい、とても面倒なので
メールのワンクリックで済むシステムに変更したいと考えていました
0577nobodyさん
2011/03/05(土) 17:51:02.43ID:???0578nobodyさん
2011/03/05(土) 21:37:22.46ID:???call_user_func_arrayでパラメータを指定してメソッドを呼び出す前に
Warning: Missing argumentのエラーが出るか出ないかを知りたいです
0580nobodyさん
2011/03/05(土) 21:48:40.21ID:Ir6pR7Ev【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】無し
【質問内容】
>>578
0581nobodyさん
2011/03/05(土) 22:47:31.67ID:???〜〜.php?postid=〜〜
というリンクを管理者の携帯から踏んだときだけ許可するようにするとか。
0582nobodyさん
2011/03/06(日) 01:11:54.73ID:???Ajaxも知らないような奴らに質問するんじゃなかった。
質問して損した。
0583nobodyさん
2011/03/06(日) 01:12:18.60ID:???全く初歩的な質問いい?
0584nobodyさん
2011/03/06(日) 01:33:20.16ID:???最初の質問の段階でIDを出さない奴に応えるなよ。
IDを出す必要が無いと考えて、最初から sage なんだから
確信犯
なんだよ。
そろそろ釣りを理解しましょう。
0585nobodyさん
2011/03/06(日) 07:26:55.22ID:Mp6bgfAZ例えば、自分のサイトのあるページに、外部リンク、
http://abc1.jpg
http://abc2.jpg
http://abc3.jpg
・
・
・
http://abc10000.jpg
へのリンクが貼ってあります。
当然ですがクリックすると直接上記のjpg画像に飛びます。
そこで質問なんですが、
クリックすると直接jpgの画像に飛ばずに、
自動で作成される自分のサイトのページ(abc1〜abc10000ページ分)を1ページ挟んで、
そこにリンク先のjpg画像が表示されるようにするにはどうすればいいでしょうか。
説明が下手なので、、同じことを少し変えて言います。
<a href="$url"><img src="$thumb_url" width="$80px" height="$80px" border="0"></a>
という感じになっていて、80×80の画像をクリックすると、直接画像URLに飛びます。
それをもうひとつの作った自分のサイトのページの中に画像を直接表示したいのです・・・
ページャーを使うだとかセッション??とか考えましたが混乱してうまくできずに
朝を迎えてしまいました・・・・・
セッションっぽい気がしますけどできません;;
0586nobodyさん
2011/03/06(日) 07:30:50.51ID:???>それをもうひとつの作った自分のサイトのページの中に画像を直接表示したいのです・・
インラインフレームにすれば?
0587nobodyさん
2011/03/06(日) 07:43:33.35ID:???ごめんなさい。
モバイルサイトなのでインラインフレームは使えないのです。。
0588nobodyさん
2011/03/06(日) 07:44:31.77ID:Mp6bgfAZ0590nobodyさん
2011/03/06(日) 07:54:39.54ID:Mp6bgfAZそれって、img画像の数だけクッションページを作らなきゃ無理ですよね。。?
それならちょっと厳しいです。
0591nobodyさん
2011/03/06(日) 08:14:43.67ID:???>それって、img画像の数だけクッションページを作らなきゃ無理ですよね。。?
動的にやればいいと思います。
0593nobodyさん
2011/03/06(日) 08:49:43.76ID:???0594nobodyさん
2011/03/06(日) 09:50:51.01ID:Mp6bgfAZ自分のサイトの80×80のサムネイルのリンク先URLが
http://自分のサイトURL.com/thumbnail/?q=http://外部URL.jpg
みたいな感じになる方法がよさそうですが、
むずかしいですね。。
まず、サムネイルが並んでるページにセッションID(PHPSESSID)
を付けました。
そして、B.htmlってページを作って、そこで外部サイトの画像を表示。。。
ンー
むずかしい。。
0595nobodyさん
2011/03/06(日) 10:07:43.53ID:???クッションページにURLを送ってリダイレクトするだけ
0596nobodyさん
2011/03/06(日) 10:23:34.33ID:???# サムネイルの表示部分
<a href="./link.php?url=画像のURL1"><img src="サムネイルのURL1" /></a>
<a href="./link.php?url=画像のURL2"><img src="サムネイルのURL2" /></a>
<a href="./link.php?url=画像のURL3"><img src="サムネイルのURL3" /></a>
# link.phpの内容
<?php $url = htmlspecialchars($_GET[?url?], ENT_QUOTES, ?UTF-8?); ?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta http-equiv="refresh" content="5; url=<?php echo $url; ?>" />
</head>
<body>
5秒後に自動的に移動します。<br>
移動しない場合は<a href="<?php echo $url; ?>">ここをクリック</a>
</body>
</html>
0597nobodyさん
2011/03/06(日) 10:26:02.83ID:???>?UTF-8?
ここの「?」は文字化けです。「'」に直してください。
0598nobodyさん
2011/03/06(日) 10:28:07.69ID:JMplRI2k入力元
<form action="output.php" method="POST">
<textarea input type="text" name="name" cols="30" rows="5"></textarea>
<input type="submit" value="入力">
</form>
output.php
<?php
$name = $_POST['name'] nl2br($name);
print ("$name<br />");
?>
どうしてもできない。教えてチョモランマ
0599nobodyさん
2011/03/06(日) 10:28:42.92ID:???リライトでサムネイルへのリンクページ返すのがむずいって言ってるのかと思ったが
0600nobodyさん
2011/03/06(日) 10:34:27.17ID:???$name = nl2br($_POST['name']);
print ("$name<br />");
0603nobodyさん
2011/03/06(日) 10:42:09.15ID:???0604nobodyさん
2011/03/06(日) 10:43:58.10ID:S94yEs2h悔しいからってコピペするって恥ずかしいことだよ
小学生と同じ
0605598
2011/03/06(日) 10:44:09.84ID:JMplRI2kできました!ありがとチュッチュ
0607nobodyさん
2011/03/06(日) 15:45:25.99ID:???いえ、私小学生なんですけど。
0608nobodyさん
2011/03/06(日) 16:01:16.63ID:???ゲットメソッドで画像のURLを渡して、受け取った画像を表示するphpをかきゃよくね?
大量の画像へのリンクを作るならふつうそうすると思うが
0610nobodyさん
2011/03/06(日) 16:26:29.98ID:???0612nobodyさん
2011/03/06(日) 17:07:52.89ID:???beポイント:21468
登録日:2010-01-15
紹介文
朝鮮人は殺略されるべき
そして悶え苦しむが良い
↑
こいつ超知恵遅れ
0613nobodyさん
2011/03/06(日) 18:03:18.62ID:???0614nobodyさん
2011/03/06(日) 18:08:22.23ID:???0615nobodyさん
2011/03/06(日) 18:43:45.25ID:JBTCMSAE実際の画像表示画面と、確認画面では階層が違うため、どちらか一方しか表示出来ません。
IMGタグ内に相対パスではなく、絶対パスやURLを書けばいけるのですが、相対パスで行う方法はありますか?
確認画面だけが別画面なので、この画面上だけパスが通ればいいのですが。
試した方法ですが、IMGタグの中の画像ファイル名だけを配列に抜き出し、../をファイル名にstr_replaceで追加、
srcにURLを含むIMGタグだけは../を追加しない、という処理を行なっていますが、スマートでは無いので、、
0616nobodyさん
2011/03/06(日) 18:48:56.73ID:Mp6bgfAZ>>596さん、その他の方々ありがとうございました。
しかしエラーとなり表示できなかったです。。
自分のやりたいことをできるだけわかりやすく伝える為に、
絵に書いてアップローダーにアップしました。
http://www.dotup.org/uploda/www.dotup.org1401610.gif.html
下半分のようにしたいです。
★サムネイル表示ページ(samuneiru.html)のサムネイル表示部分
<a href="$url"><img src="$thumb_url" width="$80px" height="$auto" border="0"></a>
★クッションページ(cushion.html)
ここが全くわかりません。。(以下は半分独り言です)
サムネイル表示ページの"$url"もリンク先が違うので、
596さんがおっしゃるように、
<a href="./link.php?url=画像のURL1"><img src="サムネイルのURL1" /></a>
このようにサムネイルのURL情報を引き継いで自動でリンクが必要かな。。。
なのでセッションidが必要になるのかな・・・
とおもいました。。
0617nobodyさん
2011/03/06(日) 19:26:14.00ID:???ちょっと突っ込みどころが多くて回答に困る
そもそも他人の画像を直リンで使用するのは迷惑行為だからこれ以上勧められない
0618nobodyさん
2011/03/06(日) 19:35:33.83ID:???自己回答ですが、
$imgdir = "img/";
$str = $imgdir;
$str2 = "../".$imgdir;
$body = str_replace($str,$str2,$body);
これでもまだスマートじゃ無い気がしてきています。
0619nobodyさん
2011/03/06(日) 19:54:06.73ID:Mp6bgfAZそうですよね・・・
Yahoo!デベロッパーネットワークの api 画像検索ってのに登録したら、
直リンクで表示しちゃうんです。。。
0620nobodyさん
2011/03/06(日) 20:38:13.46ID:Mp6bgfAZ本当にありがとうございました。
いろいろと出直してきますm(_ _)m
0621nobodyさん
2011/03/06(日) 20:45:07.27ID:???0623nobodyさん
2011/03/07(月) 01:31:33.09ID:???XMLの中にサムネイルURLというものがありますよね?
検索結果にまずそれを表示させて
echo "<a href=表示させたい小ページのURL?q=画像の本アドレス><img src=サムネイルURL></a>";
それで表示させたい小ページで
$img = $_GET['q'];
<img src={$img}>
で出来ませんか?
0624nobodyさん
2011/03/07(月) 01:50:39.29ID:???$bodyを後からstr_replaceするんではなくて
$bodyを作成する段階で必要な箇所に$str2を埋め込むべき
0625nobodyさん
2011/03/07(月) 10:45:29.51ID:???$bodyはユーザが入力するフォームと、表示するフォームを兼用しているので、ユーザ入力側に仕込むのは難しいです。
0626nobodyさん
2011/03/07(月) 11:44:18.47ID:???ドキュメントルートにimgがあるとして(たとえば /home/user/htdocs がルートで /home/user/htdocs/imgに画像)
src="/img/hoge.jpg"
と最初に/つければ、どこの階層からでもだいじょうぶだけど、それじゃだめな理由があるの?
0627nobodyさん
2011/03/07(月) 11:54:52.41ID:3E6woW5/書き込んだ文字列を読み込んでhtmlに出力する
このときエスケープはいつ行えばいいんですか?
出力するときにエスケープしろと言われるのをみますが書き込むときに改行を<br>に変換しないと1行1データにならないので書きこむときにエスケープと変換作業を行います
そうすると自然に出力前は何も出来ない。エスケープしたら<br>が無効されるのです
出力するときにエスケープしろというのはたぶんデータベースを利用したときの事ですよね
ファイルベースのときは書き込むときにエスケープして出力前は何もしなくても大丈夫ですよね?
もしXSSになるとしたら何故なるのかその理由の教えてください
0628nobodyさん
2011/03/07(月) 12:14:10.23ID:???理由はわからんが
> 相対パスではなく、絶対パスやURLを書けばいけるのですが、相対パスで行う方法はありますか?
0629。 ◆oDupeixhZv52
2011/03/07(月) 12:25:34.47ID:???<br>以外に変換とか、変換されちゃった<br>元にもどすとかいろいろあるけどね。
出力前にってのは、その例でいうと、ファイルから読んで出力する前に
変換してるとあとでいろいろ足したりするのがやりにくい、処理追加してその分の処理を忘れがちとか
そんな話。 データベースの話はまた別。
0630nobodyさん
2011/03/07(月) 13:19:42.53ID:???シンボリックリンクを作ればいい。ソースに手を加えないのだから、一番スマートだ。
>>626,628
理由は>>625だろうな。ユーザの負担がかかるとかじゃないかな。
ユーザ入力が絡むなら、スマートさより確実性を重視すべきだと思うんだが。
0633nobodyさん
2011/03/07(月) 19:33:23.28ID:???0634nobodyさん
2011/03/07(月) 20:27:02.42ID:W5zBM93k【連携ソフトウェア】 MySQL
【質問内容】
二行二列の配列に各々年齢とポイントが入っている配列があり、
年齢ごとに合計値を出したいと考えているのですが
何をどうすればいいのやらという感じでお手上げです
同じ年齢を抜き出す部分が特にわかりません
何卒ご教授ください
二次元配列テーブル
$[0][0] = 1;
$[0][1] = 10;
$[1][0] = 2;
$[1][1] = 10;
$[2][0] = 1;
$[2][1] = 5;
$[3][0] = 1;
$[3][1] = 1000;
$[4][0] = 4;
$[4][1] = 30;
結果(欲しい完成形のデータ)
1歳 1015
2歳 10
4歳 30
0635nobodyさん
2011/03/07(月) 20:30:41.18ID:???みたにループで回すだけ
0636nobodyさん
2011/03/07(月) 20:36:45.79ID:???0637nobodyさん
2011/03/07(月) 21:02:11.76ID:???foreach($arr as $item) {
$result[$item[0]] += $item[1];
}
0638nobodyさん
2011/03/07(月) 21:04:38.41ID:???echo "{$age}歳 $point\n";
}
0639nobodyさん
2011/03/08(火) 02:19:35.87ID:vGghQykN単に1行で書き込みたいんだったらserialize()でもしとけ
0640nobodyさん
2011/03/08(火) 02:32:56.42ID:5ZtbGR1Hですが調べてみてもさっぱりわかりません
カテゴリ分けするにはどうしたらいいんでしょうか?
0641nobodyさん
2011/03/08(火) 02:34:27.70ID:???0642640
2011/03/08(火) 02:40:27.05ID:5ZtbGR1Hありがとうございます、ねばってみます
あとひとつ聞きたいのです
データベースで商品のカテゴリ分けする場合、商品のテーブルのほかにカテゴリのテーブルも作成するんですか?
0643640
2011/03/08(火) 02:43:06.87ID:5ZtbGR1H○あとひとつ聞きたいです
0644 忍法帖【Lv=5,xxxPT】
2011/03/08(火) 02:53:11.85ID:mHC9A3l4ライブラリまたはデバイスとか実装されていないですか?
0645640
2011/03/08(火) 02:53:25.79ID:5ZtbGR1H商品用のテーブルとカテゴリ用のテーブル
どうやってリンクさせるのですか?
さっぱりわからない…
0646nobodyさん
2011/03/08(火) 02:56:40.52ID:???例とかないの?
具体的にどういうテーブル構造のものをどのようにフロントで表示させたいの?
これ明確にしてくれないと答えようがない
エスパー的には
商品テーブルとカテゴリテーブルをJOIN
0647640
2011/03/08(火) 03:12:02.45ID:5ZtbGR1Hすみません
商品用のテーブルには商品のデータ(商品名、値段など)が登録してあって、
その商品のデータをカテゴリべつに分けて表示したいと思っています
商品用テーブル items
id (商品番号)
title (商品名)
category_id (カテゴリー番号または名前)
カテゴリ用テーブル category
category_id (カテゴリー番号または名前)
category_name (カテゴリー名)
これでわかるでしょうか…
0648nobodyさん
2011/03/08(火) 03:16:06.00ID:???いやそのテーブル構成はわかってるんだ
> カテゴリべつに分けて表示したい
これをどのように表示させるんだ?
例えば、GETでカテゴリIDを指定してそれを表示させるのか
1画面でカテゴリごとにブロック作って表示するのか
書き出したあとのイメージ書いてみろ
0649640
2011/03/08(火) 03:27:50.50ID:5ZtbGR1HカテゴリURLをクリックしたら、
そのカテゴリに登録されている商品をずらーっと並べたいです
入れ子はないです
すみません、わかりませんよね…
phpは初めてで、ゼロから作っているのでおっしゃっている意味もイマイチわからないです
ごめんなさい
0650nobodyさん
2011/03/08(火) 03:30:51.45ID:???商品一覧出したい気持ちはわかる
その前に手順踏もうぜ!
まず、データベースでSELECT文は分かる?
GET、POSTは分かる?
0651640
2011/03/08(火) 03:36:19.34ID:5ZtbGR1Hすみません
SELECTはわかります
GET、POSTはいまいちです
↓今はここまで書けました
$url = "localhost";
$user = "root";
$pass = "";
$db = "";
// MySQLへ接続する
$link = mysql_connect($url,$user,$pass) or die("MySQLへの接続に失敗しました。");
$result = mysql_query( 'set character set utf8' );
// データベースを選択する
$sdb = mysql_select_db($db,$link) or die("データベースの選択に失敗しました。");
// クエリを送信する
$sql = "SELECT * FROM category";
$result = mysql_query($sql, $link) or die("クエリの送信に失敗しました。<br />SQL:".$sql);
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
$category_id = $row['category_id'];
$category_name = $row['category_name'];
}
0652nobodyさん
2011/03/08(火) 03:39:25.12ID:???データベース使うより先にGET/POST優先すべきかな
URLで例えば
http://localhost/index.php?c=test
こんな?c=testみたいなの見たことない?
チャットじゃないんで手短にいうけど
?c=testとパラメータついてる時、
$_GET['c']という変数に「test」が入る
URLで?c=1みたいに、カテゴリIDを渡したらどうなる?
それをクエリ内での検索で使ってみたらどうかな?
■ このスレッドは過去ログ倉庫に格納されています