【PHP】下らねぇ質問はID出して書き込みやがれ 91
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2009/12/08(火) 13:53:09ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 90
http://pc11.2ch.net/test/read.cgi/php/1258187482/
◆質問用テンプレ
【OS名】vine linux
【PHPのバージョン】php5.26
【連携ソフトウェア】mysql
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0290nobodyさん
2009/12/14(月) 13:13:41ID:???いや、ぼくちんはmb_split反対派なんでw
mb_splitでバリデーションと分割はできないつってるんですよーw
0291nobodyさん
2009/12/14(月) 13:15:30ID:???0292nobodyさん
2009/12/14(月) 13:17:21ID:???0293nobodyさん
2009/12/14(月) 13:18:08ID:Rd8pmwhFこれを
2009/12/6 10:21:20
に置き換える関数みたいなのはあるのでしょうか?
0294nobodyさん
2009/12/14(月) 13:21:24ID:???0295nobodyさん
2009/12/14(月) 13:23:49ID:???0296nobodyさん
2009/12/14(月) 13:28:24ID:???21は無視した。
0297nobodyさん
2009/12/14(月) 13:46:37ID:Rd8pmwhF21は間違いコピペでした・・・すいません・・・
0298nobodyさん
2009/12/14(月) 14:08:28ID:???0299nobodyさん
2009/12/14(月) 14:12:44ID:???横鳥スンナ〜
0301nobodyさん
2009/12/14(月) 16:36:42ID:EQ57m/rj静止画になってしまいます
これはどうしたら解決するでしょうかヨロシクお願いします<m(__)m>
環境 FEDORA
PHP Version 5.2.10
gd
GD Support enabled
GD Version bundled (2.0.34 compatible)
FreeType Support enabled
FreeType Linkage with freetype
FreeType Version 2.3.7
T1Lib Support enabled
GIF Read Support enabled
GIF Create Support enabled
JPG Support enabled
PNG Support enabled
WBMP Support enabled
XPM Support enabled
XBM Support enabled
0302nobodyさん
2009/12/14(月) 18:54:19ID:???検索したのかい?
ttp://www.google.co.jp/search?q=gd+php+gif+%E3%82%A2%E3%83%8B%E3%83%A1&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja:official&client=firefox-a
このページのトップに君が探してるものが見当たるようだけど
0303nobodyさん
2009/12/14(月) 18:59:58ID:EQ57m/rjGD Version bundled (2.0.34 compatible)なので、
GIF問題はすでに解決しているのではないでしょうか?
なので、何か設定の問題なのかと思い質問させてもらいました。
0304nobodyさん
2009/12/14(月) 19:06:34ID:???素晴らしい検索エンジンは惜しみなく使いましょう
ttp://idocsq.net/page/162
0305nobodyさん
2009/12/14(月) 19:42:10ID:???0306nobodyさん
2009/12/14(月) 19:59:03ID:???もちろん、animeGIFの書き出しのその関数にPHPは対応して無いし。
0307nobodyさん
2009/12/14(月) 21:49:24ID:???一応GDでアニメGIF(圧縮してない形式)のリサイズだけは出来るみたいだけど
それ以外はほとんど対応してないみたい
一応リサイズは出来るはずなんだけど
0308nobodyさん
2009/12/15(火) 10:56:38ID:k1G/c/jQ$testの前3文字が「abc」の時、trueにして一致しない場合はfalseにしたいと思います。
どういう関数を使えばよいのでしょうか?
strpo($test,"abc")==0
としてみたのですが、上手く行きませんでした。
0309nobodyさん
2009/12/15(火) 10:58:55ID:???strpo
strpo
strpo
strpo
strpo
strpo
strpo
strpo
strpo
strpo
strpo
strpo
0310nobodyさん
2009/12/15(火) 10:58:56ID:???0311nobodyさん
2009/12/15(火) 11:06:39ID:k1G/c/jQ出来ました!
=を3つにしなければいけないんですね。ありがとうございます。
0312nobodyさん
2009/12/15(火) 12:58:25ID:???0313nobodyさん
2009/12/15(火) 14:15:17ID:???0315nobodyさん
2009/12/15(火) 14:44:56ID:???0316nobodyさん
2009/12/15(火) 14:51:30ID:???<?php
$mystring = 'abc';
$findme = 'a';
$pos = strpos($mystring, $findme);
// === を使用していることに注目しましょう。単純に == を使ったのでは
// 期待通りに動作しません。なぜなら 'a' が 0 番目 (最初) の文字だからです。
if ($pos === false) {
echo "文字列 '$findme' は、文字列 '$mystring' の中で見つかりませんでした";
} else {
echo "文字列 '$findme' が文字列 '$mystring' の中で見つかりました";
echo " 見つかった位置は $pos です";
}
?>
0317nobodyさん
2009/12/15(火) 15:23:32ID:oEMc2L99どこを弄ればいいんでしょうか
よろしくお願いします
http://q.hatena.ne.jp/1161496002
0318nobodyさん
2009/12/15(火) 15:25:14ID:???【 スクリプト改造依頼スレ】(丸投げ) part7再々
http://pc11.2ch.net/test/read.cgi/php/1222645553/
0319nobodyさん
2009/12/15(火) 16:16:22ID:HMx+PrJaarray(1,2,4,5,7)
array(2,5,8,9,10)
→2,5
っていうようなことをやりたいのですが。1個ずつ確認していくしかない?
0320nobodyさん
2009/12/15(火) 16:29:32ID:???0321nobodyさん
2009/12/15(火) 16:32:05ID:???調べたらarray_intersectがあった
0322nobodyさん
2009/12/15(火) 16:39:07ID:HMx+PrJa>321
天才!ありがと〜
0323nobodyさん
2009/12/15(火) 18:21:21ID:???function set_node($parent,$treeNode){
global $db,$stt;
$flag=FALSE;
$rs=$db->execute($stt,$parent);
while($row=$rs->fetchRow(DB_FETCHMODE_ASSOC)){
$flag=TRUE;
$mid="m".$row['mid'];
$$mid=new HTML_TreeNode( // ← ココです
array('text'=>$row['title'],'link'=>$row['link']));
$result=set_node($row['mid'],$$mid);
if($result){
$$mid->setOption("icon","folder.gif");
$$mid->setOption("expandedIcon","folder-expanded.gif");
}
$treeNode->addItem($$mid);
・・・
質問させて下さい
上記の$$mid=new HTML_TreeNode( )のような、$$はいったいどういう事なのでしょうか?
マニュアルやgoogleで単に「$$」で検索しても出てきません
意味と、こういうものの名称を教えて下さい
0324nobodyさん
2009/12/15(火) 18:29:43ID:???$$mid = "world";
print $hello;
0325nobodyさん
2009/12/15(火) 18:31:10ID:???0326nobodyさん
2009/12/15(火) 19:41:19ID:???あまり使うべきじゃないとか?
0327nobodyさん
2009/12/15(火) 19:46:04ID:???0328nobodyさん
2009/12/15(火) 19:49:22ID:???$items = array("name","tel","address");
foreach ( $items as $eachval ) {
if ( isset( $_POST( $eachval) ) {
$$eachval = $_POST[ $eachval ];
}
}
ってやってごまかしたなぁ。
0329nobodyさん
2009/12/15(火) 20:30:50ID:???ビューのHTMLをパーツ化してて、ほとんどのコントローラで最終的に呼ばれるものがあります。
例えばページのメニュー表示の部分とか。
この中身が今は完全にべた書きになっていて、これをDBから取得した値に動的にしたいんだけど
これって全部のコントローラのコンストラクタ内にDB取得の処理入れなくちゃいけないものですか?
もしくはそれぞれアクションの中にとか。。
ただ、メニュー表示のHTMLが読み込まれない場合もあるので
コントローラ内で必ず取得しにいくってのも無駄だなぁって思ってます。
これはメニュー表示のHTMLが読み込まれた時だけ、ajaxで取得して書き換えるようにしといたほうがスマートですか?
なんかフレームワーク使ってなければ、必要なページでメニュー表示のPHPを読み込むだけで済むのにって思いました。
フレームワーク使うと、ビュー側でどうされてもいいように、コントローラ側で全対応しとかなきゃいけないのが
無駄が多いなぁと感じるんですが自分がフレームワークをよく理解してないせいでしょうか??
0330nobodyさん
2009/12/15(火) 21:08:49ID:???0333nobodyさん
2009/12/16(水) 00:07:08ID:???・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
テンプレどころかスレタイすら読めないやつって馬鹿なの?死ぬの?
0334nobodyさん
2009/12/16(水) 00:25:27ID:KyqIhUTU間違っていれば、ファイル削除失敗!!、というメッセージを出したいのですが、うまくいきません。
↓
<?php
$user_pass = "0000";
if($passwd == $_POST['pass']) {
unlink( "aaa.log");
echo "ファイルを削除しました";
}
elseif($passwd) {
echo "ファイル削除失敗!!";
}
?>
<form method="post" enctype="multipart/form-data" action="1.php" >
削除パス<input type="txt" size="10" name="pass" value="" maxlength="10" class="box" tabindex="2" accesskey="2" />
<input type="submit" value="削除" tabindex="4" accesskey="4" >
<input type="reset" value="Cancel" tabindex="5" accesskey="5" />
</form>
これをどうしたら良いでしょうか?どうぞヨロシクお願いします
0335nobodyさん
2009/12/16(水) 00:27:25ID:???0336nobodyさん
2009/12/16(水) 00:29:57ID:???これは何?
0337nobodyさん
2009/12/16(水) 00:34:35ID:???0338nobodyさん
2009/12/16(水) 00:49:50ID:KyqIhUTUif($passwd == $_POST['pass']) {
unlink( "aaa.log");
echo "ファイルを削除しました";
}
echo "ファイル削除失敗!!";
これにしたらできました
ありがとうございました
0339nobodyさん
2009/12/16(水) 00:51:52ID:???$passwd = "0000";
if($passwd == $_POST['pass']) {
unlink( "aaa.log");
echo "ファイルを削除しました";
}
else {
echo "ファイル削除失敗!!";
}
0340nobodyさん
2009/12/16(水) 00:52:44ID:H8S7D90g参考になればいいけど
http://www.geocities.jp/retort_curry119/TaskManage.htm
0341nobodyさん
2009/12/16(水) 01:04:17ID:???0342nobodyさん
2009/12/16(水) 01:26:48ID:???POSTで受け取った値をそのままSESSIONにいれ
さらにSQLのwhere句に使い、mysql_queryで実行してるのはどうなんだ?
mysql_real_escape_stringがコメントになってるあたり
対策しなければという意志はあるようだが・・・
0343nobodyさん
2009/12/16(水) 01:28:19ID:???0344nobodyさん
2009/12/16(水) 01:39:19ID:KyqIhUTUありがとうございます
完璧です!
0345nobodyさん
2009/12/16(水) 01:45:52ID:???・<script>タグにtype属性は必須、language属性は廃止された
・PHPは厳密等価演算子を使うと等価演算子と比べて10倍程度高速に動作するので厳密等価演算子を使うことをお勧めする
・公開するならコメント書け、コードの3分の1程度が目安
0346nobodyさん
2009/12/16(水) 01:52:38ID:???頭の悪いツッコミだな
最後のコメント書けには同意だけどな
拡張したら簡易フレームワークになるな
宿題だフレームワークを作りなさい
0347nobodyさん
2009/12/16(水) 01:58:13ID:???0348nobodyさん
2009/12/16(水) 02:22:27ID:???意味が通じればおk
0349nobodyさん
2009/12/16(水) 10:51:08ID:???いかにも練習で作った程度のレベルなんですけどネタっすか?wwww
世の中にも既に晴らしいスクリプトが素晴らしいソフトが出てますよ?w
ttp://opentask.jp/
ttp://alexking.org/projects/tasks-jr
0351329
2009/12/16(水) 11:00:30ID:KzRQDWcs0352nobodyさん
2009/12/16(水) 13:54:56ID:???おもしろそうだし、コードレビューくらいしてみたい
0353nobodyさん
2009/12/16(水) 17:55:00ID:GOmT2CGyこういう転送量まではじき出してくれるダウンロードカウンターって、
PHPでありますか?Apacheのログを解析してやってる感じではないので、
スクリプトの処理としてやってる感じなんですけど、やり方が分かりません
0354nobodyさん
2009/12/16(水) 18:08:48ID:???0355nobodyさん
2009/12/16(水) 19:54:38ID:???カウントしときゃいいだけじゃないの。アクセスカウンタの延長でしょ。
0357nobodyさん
2009/12/16(水) 21:42:21ID:???mod_rewriteでも使えば、いくらでも調べれる
0359nobodyさん
2009/12/17(木) 00:14:10ID:DlTo5u8A<a href="URL">リンク先</a>
↑こちらのリンクタグを使い
(html)リンクをクリック→(php)セッションをもたせる→ページ移動
という処理はできるのでしょうか?
<INPUT type="submit" name="" value="リンク先">
↑こちらを使えばできるのはわかるのですが、こちらは使いたくない状況なので・・・
お願いします。
0360nobodyさん
2009/12/17(木) 00:18:27ID:???0361nobodyさん
2009/12/17(木) 00:19:31ID:???http://jp2.php.net/manual/ja/session.idpassing.php
0362nobodyさん
2009/12/17(木) 00:39:22ID:???リンクにパラメタ追加して、ページ移動先でセッション処理書けばいいじゃない。
同じページへのリンク+パラメータでセッション開始のチェック+headerでページ移動でもいいけどさ。
0363nobodyさん
2009/12/17(木) 01:11:49ID:DlTo5u8A回答ありがとうございます。
うまくいかないのでもう一度質問させていただきます。
このような形じゃだめなのでしょうか?
セッションしたいのはリンクのとこにあるvalueです。
<?php
if(isset($_POST[link])){
session_start();
session_register("sesid");
$_SESSION[sesid] = $_POST[link];
header("location: nextpage.php");
}
?>
<HTML>
<?php
print("<a href='nextpage.php' name'link' value='.$id.'>next</a>");
?>
</HTML>
0364nobodyさん
2009/12/17(木) 01:19:00ID:???if(isset($_GET["link"])){
session_start();
session_register("sesid");
$_SESSION["link"] = $_GET["link"];
header("location: nextpage.php");
}
?>
<HTML>
<a href="?link=<?php echo $id ?>">next</a>
</HTML>
0366nobodyさん
2009/12/17(木) 01:38:51ID:???パラメータとして必要があるのはCookieがoffの時
0368nobodyさん
2009/12/17(木) 01:49:49ID:???あと、この分だと、うまくいかないっていうnextpage.phpもダメじゃないかな。
0369nobodyさん
2009/12/17(木) 01:53:43ID:DlTo5u8A>>365
言葉でうまくまとまらなかったので、ソースはりつけます
chdir("Company");
$dirh = opendir(".");
while($companyfile = readdir($dirh)){
if(is_file($companyfile)){
$datafile = file($companyfile);
print("<a href='companydata.php?id=".$companyfile.">".$datafile[2]."</a>");
print("<BR>");
}
else{
}
}
closedir($dirh);
>>364のおかげで少し前進した(と思いたい)のですが
print("<a href='companydata.php?id=".$companyfile.">".$datafile[2]."</a>");
がうまく表示されません。どこが間違っているのでしょうか・・・?
0371nobodyさん
2009/12/17(木) 01:59:42ID:???うまく表示されないってどういうこと?
print("<a href='companydata.php?id=".$companyfile."'>".$datafile[2]."</a>");
0372nobodyさん
2009/12/17(木) 02:00:08ID:???> >>364のおかげで少し前進した(と思いたい)のですが
とあるけどそれにセッションがどう関わってくるのか分からん。
結局関係ないの?
> がうまく表示されません。どこが間違っているのでしょうか・・・?
printの中でカンマ区切りの文字列渡しは使えません。
今回はいいけど、どううまく表示されないのか言ってもらわないとこちらも困るので次からお願いします。
0373nobodyさん
2009/12/17(木) 02:09:10ID:DlTo5u8A1個目のdatafile[2]
2個目のdatafile[2]
3個目の...
となってほしいのですが、
最後のdatafile[2]
のみしか表示されませんでした。
>>372
言葉足らずでごめんなさい。
目的はセッションすることではなく、nextpageに$companyfileを渡すことです。
なのでリンクにパラメータもたす方法でもおkということです。
0374nobodyさん
2009/12/17(木) 03:18:54ID:???0376nobodyさん
2009/12/17(木) 10:32:42ID:n6lHIqwVクロスドメインではセッションの維持はできないのでしょうか?
Cookieを使うしかないのでしょうか?
0377nobodyさん
2009/12/17(木) 11:08:42ID:???0378nobodyさん
2009/12/17(木) 11:23:33ID:???0379nobodyさん
2009/12/17(木) 11:26:24ID:???0380nobodyさん
2009/12/17(木) 11:27:04ID:???存在するかどうか返すとか簡単にできるだろ
その際、セッション変数があれば同時に返せばいいし、もちろん問い合わせ時の暗号的なものが必要なことは言うまでもない
0381nobodyさん
2009/12/17(木) 13:58:35ID:XErTSTUM判別する方法はあるのでしょうか?
前者の場合、<html>〜</html>の表示が必要ですし、
後者の場合、コンテンツ部分(<img>とか)だけ出力すればいいです。
やはり2パターンを用意するしかないのでしょうか?
0382nobodyさん
2009/12/17(木) 14:02:02ID:???もっとPHPを進めていって、いずれ今の質問を見返したとき、
いかに自分がおかしな質問をしてるのかがわかると思う。
なので基礎をもっと勉強してね。
0383nobodyさん
2009/12/17(木) 14:09:44ID:???直接アクセスされたのか、includeされたのか判別は一応可能だけど
#html.php
<html>
<?php include("img.php"); ?>
</html>
#img.php
<img src="">
みたいに作っておけばいいんじゃない?
そもそも直接アクセスされるものと、インクルードする物を一緒にしない方がいいよ
0384nobodyさん
2009/12/17(木) 14:53:28ID:???やはりその方法しかありませんか。
ファイルの数を減らしたくて対応策を考えていたのですが
無理だと言う事で理解しました。
0385376
2009/12/17(木) 15:12:41ID:???session_idを取得して、そのidをCookieに保存し、次のリクエストで
Cookieからidを取り出して、明示的にsession_startしたけど
情報はとれませんでした・・・
やはり無理なんでしょうか?
0386nobodyさん
2009/12/17(木) 15:25:08ID:???0387376
2009/12/17(木) 15:30:40ID:???同サーバー内では問題なく動くのを確認しています。
現在単純にログイン成功時にセッション内に入れたデータを
次のリクエストで読もうとしていますが、成功しません。
cakephpとflashを使用しています。
0388nobodyさん
2009/12/17(木) 16:31:12ID:???クッキーにはドメイン情報もあるからそれをもとにセッション弾いてるんじゃ?
スタート前にsession_set_cookie_paramsとかでドメイン合わせてやれば
■ このスレッドは過去ログ倉庫に格納されています