【PHP】質問スレッドpart21【php】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
04/08/27 18:00ID:???・新規質問の方は上げてください。age進行でお願いします。
・質問する際には環境も明記。
・正しい日本語で分かりやすく。
・レスがつかないからって逆切れする厨お断り。
・解決しなくてもこたえてもらったら礼を。
■本家
http://www.php.net/
■日本 PHP ユーザ会
http://www.php.gr.jp/
■PHP マニュアル
http://www.php.net/manual/ja/
■PEAR マニュアル
http://pear.php.net/manual/ja/
過去スレ, 関連スレ等>>2-4
0557nobodyさん
04/09/07 14:24ID:???確認は取ってない
----string.txt------
<?php
echo "dear_".$mama;
?>
--------------------
<?php
$mama = "papa";
include("string.txt");
?>
0558nobodyさん
04/09/07 14:24ID:???string.txt の内容を
dear_<?=$mama?>
みたいにすれば、
<?php
$mama="papa";
include 'string.txt';
?>
でいけるけど、どうよ?
0559nobodyさん
04/09/07 14:30ID:???$hoge["$lob"] これでも、エラーが山のようにでるのさ。
$hoge['$lob'] これだとうごかないのさ。
$hoge[$lob[$i]] これだったらもうほんとねーとんでもないよ。
誰かエラーの取り方教えてください。
宜しくお願い致します<(_ _)>
0561nobodyさん
04/09/07 14:34ID:???おまいが何をしたいのか、どんなエラーがでるのか
それが分からんと何も分からん
というか、その配列の部分がエラー元だと思う根拠も聞きたい
0562556
04/09/07 14:55ID:???素早いレスありがとうございます。
やり方についてはわかりました。
もしよろしければ、それが意味するところを知るには、
マニュアル等でどこを見れば良いかも教えてもらってもいいでしょうか?
0564nobodyさん
04/09/07 15:06ID:???http://www.php.net/manual/ja/language.basic-syntax.php
<q><?= expression ?> は "<? echo expression ?>"のショートカットです</q>
0565nobodyさん
04/09/07 15:06ID:???<?=・・・?> の書き方についてなら echo かな。
include したらファイルの内容が表示されることについてなら・・・
どこだろう?
PHPスクリプトは、評価(実行)されるときには <? 〜 ?> の外側はそのまま出力される、ってことを思い出せば理解できるかな?
0568nobodyさん
04/09/07 15:17ID:???includeの項でいいんじゃないかな。
|ファイルが読み込まれるときには、読み込まれるファイルの先頭で
|PHPモードを抜けてHTMLモードになり、最後に再びPHPモードに戻ります。
|このため、読み込むファイル中のPHPコードとして実行する必要がある
|コードは、有効なPHPの開始タグおよび終了タグで括る必要があります。
HTMLモード(そのままechoされる)で。
大元のやりたいことはテンプレートシステムのつくりを調べると
色々な実現の仕方があるということに気がつくと思う。
0569nobodyさん
04/09/07 15:29ID:3rwpPIvY俺も普通にテンプレートを勉強するのがいいと思う。
0570nobodyさん
04/09/07 15:43ID:???>>560 >>561 >>563 >>566
レスありがとうございます。
Notice [PHP]: Undefined index: in file c: ・・・
申し訳ないです。エラーではなかったです。
このメッセージ消す方法はありますでしょうか。宜しくお願い致します。<(_ _)>
0571nobodyさん
04/09/07 16:03ID:???掲示板で、串制限する方法おしえてください。
よろしくおねがいします。
0572nobodyさん
04/09/07 16:09ID:???$lobがundefinedのときにはどんな動作にしたいの?
無視するとか、$lobを0に見立てるとか、なんかあるでしょ?
0573nobodyさん
04/09/07 16:10ID:???出ている警告のとおりインデックス($lob)をきちんと設定してやればいい。
プログラム的に未設定だったら該当コードをスルーするようにするか。
エラーレポートレベルを下げて「見ない振りをする」という手もあるが、
プログラム初学者の場合、悪い癖が付くのでお勧めできかねる。
0574nobodyさん
04/09/07 16:11ID:???ていうかNoticeってデフォルトでは出ないはずじゃなかったか
Notice全部イラネってんならphp.iniで
error_reporting = E_ALL & ~E_NOTICE
今だけ消したいならそのスクリプト中で
error_reporting(E_ALL | ~E_NOTICE);
でいけると思われ
0575nobodyさん
04/09/07 16:39ID:???>>572 >>573 >>574
ありがとうございます。
ちと、小コードで再現できないので、再現できたらまた来ます。
0576nobodyさん
04/09/07 17:22ID:???定義、未定義をしっかり確認するほうがいい
0577ぬるぽ ◆GmgU93SCyE
04/09/07 17:51ID:???Cryptでやってみたけど多すぎ
0578nobodyさん
04/09/07 18:00ID:???0579ぬるぽ ◆GmgU93SCyE
04/09/07 18:05ID:UlF+H5yzこれを10桁&2ちゃんとまったく同じ変換にするにはどうすればよいか・・・
0580nobodyさん
04/09/07 18:09ID:???0582nobodyさん
04/09/07 18:37ID:???ちょうどこんなの見つけた
http://headlines.yahoo.co.jp/hl?a=20040907-00000001-imp-sci
0584nobodyさん
04/09/07 19:21ID:qMLjw9o/というように36進数を連続して生成するためには
なんという関数を使えばよいのでしょうか?
0585nobodyさん
04/09/07 19:30ID:???基底を変換する方法が分からないのか、どっちか分からんけど、
base_convert使っとき。
0588nobodyさん
04/09/07 19:48ID:???$password = CRYPT_STD_DES("abc"); # saltを生成
echo $password;
?>
0589nobodyさん
04/09/07 20:00ID:???0591nobodyさん
04/09/07 20:47ID:???// 昔作った関数だけど
function gettrip($tripkey) {
$tripsalt=preg_replace('/[^.-z]/','.',$tripkey);
$tripsalt=strtr($tripsalt,':;<=>?@[\]^_`','ABCDEFGabcdef');
$tripsalt=substr($tripsalt.'H',1,2);
$trip=substr(crypt($tripkey,$tripsalt),3,10);
return($trip);
}
// 2ちゃんと全く同じかは(゚�听)シラネ
0592nobodyさん
04/09/07 20:55ID:???0594nobodyさん
04/09/07 21:17ID:???まずは以下のページで串の基礎をおさらい
http://www.cybersyndrome.net/pg.html#4
そのあと「is_proxy_access」でググってみ。
前スレ289氏のサンプルが出てくるから。
0595nobodyさん
04/09/07 21:19ID:???PHP 4.3.2 + Apache 2.0.48 でとりあえずは動いてる
0596nobodyさん
04/09/07 21:38ID:???http://www.ponycanyon.co.jp/dango/
0597nobodyさん
04/09/07 21:49ID:???formでsubmitして、処理の結果次第で他のページに飛ばしたいのです。
metaタグでやるしかないんでしょうか?
よろしくお願いいたします。
0599$key="php"→ ◆BhTTgvJlYk
04/09/07 21:53ID:???つか、にちゃんと同じならぐぐればいくらでもソース出てくるだろ
下はトリップ生成ツールで生成されるトリップと一致することは確認した奴
trip(str トリップキー, int トリップ桁数)
function trip($key, $digit=10){
$salt = substr($key."H.", 1, 2);
$salt = ereg_replace("[^\.-z]", ".", $salt);
$salt = strtr($salt,":;<=>?@[\\]^_`","ABCDEFGabcdef");
return("◆".substr(crypt($key, $salt),-1*$digit));
}
0600nobodyさん
04/09/07 22:17ID:???分かってると思うがまんまBBSに実装すんなよ
0602597
04/09/07 22:30ID:???headerにそんな使い方が。。。
ありがとうございます。
>>601
なるほど。考えつきませんでした。
変数がそのまま使えていいですね。
ありがとうございます。
0603nobodyさん
04/09/07 22:36ID:Z5/Re9xzこれの携帯表示部分にすれたい検索を実装したいのだが…全くわからん。
ライフライン使わせてくれ。
0604nobodyさん
04/09/07 22:44ID:???0606nobodyさん
04/09/07 23:01ID:???0607nobodyさん
04/09/07 23:12ID:oC+AH/dT0608nobodyさん
04/09/07 23:28ID:???0609nobodyさん
04/09/07 23:28ID:???0610nobodyさん
04/09/07 23:28ID:???readfile("画像付きExcel");
0612nobodyさん
04/09/07 23:58ID:???0613nobodyさん
04/09/08 01:10ID:???windowsでやるならapache2のほうがいいのかな?
apache1はssl使うのにちょっと怪しいとこのを使うので
ちょっと不安。
IIS6でやろうかと思ったんだけど
権限の設定ではまった。。。
0615nobodyさん
04/09/08 01:41ID:???0616nobodyさん
04/09/08 02:27ID:???http://www.hoge.com/hoge.php?hoge=hogehoge
みたいな奴のことなんですが。
0619nobodyさん
04/09/08 03:04ID:???本一冊くらい買ってみたらいいんじゃないかと思う。
0620nobodyさん
04/09/08 03:51ID:???アイデアを直感的に実現する(した)時にしか使ってないな。
他ので代用聞くし、プログラムの見た目が逆に直感的でなくなる(気がする)。
0621nobodyさん
04/09/08 05:13ID:???0623軟式PHP
04/09/08 12:49ID:???0624nobodyさん
04/09/08 13:16ID:???スクリプトをコメントにして消していくと読み込めるんですが、
それを元の状態に戻すとまたアクセスできないようになります。
こういう場合は、どういったことが考えられるんでしょうか?
0626624
04/09/08 13:22ID:???中身のコーディングによって変わってくるのだから、コーディングのミスだとは思いますが
エラーが出るのではなく、アクセスできないようになるというのはどういったことが考えられるのでしょうか?
0628nobodyさん
04/09/08 13:58ID:???アクセスできないってどんな状態?
Not Found? Forbidden? それとも空白画面?
とりあえずその辺を書いてみよう。
0629nobodyさん
04/09/08 13:59ID:1bxarjSQ「アクセスできない」が何を意味するかによる。
何を見てアクセスできないと判断したのか?
apacheのエラーログとか・・・。
0630nobodyさん
04/09/08 14:00ID:???で、
display_errors = Off
になってる。
0631nobodyさん
04/09/08 15:53ID:???質問があります。
$url = $item[link];
というリンクがあるのですが、新しいウインドウで開くにはどうすればよいのでしょうか?
的外れな質問だったら申し訳ないです。
0633軟式PHP
04/09/08 16:01ID:???0634631
04/09/08 16:04ID:???申し訳ないです。 m(_ _)m
では。
0635624
04/09/08 16:08ID:???時間なかったので問題のあるところは削除して、
別の方法でコーディングやり直しました。
お騒がせしてすいませんでした。
0636631
04/09/08 16:13ID:???でも、target="_blank"ではないんです。
説明不足でしたが、
あるHTMLの中で<iframe>を使い、そのフレームの中に
index.phpをリンクさせているです。
そのindex.php中に
<?php
・
・
・
$url = $item[link];
・
・
・
?>
というものを埋め込んでいます。
「・」は自分の質問では無関係だと思われる部分なので、ここでは省略しました。
そして、この<iframe>の中のリンクをクリックすると、
フレームの中にリンク先が表示されてしまうのです。
そうではなく、新しいウインドウを開くにはどうしたらよいかが知りたかったんです。
0637nobodyさん
04/09/08 16:15ID:???<?php
$item[link] = "http://www.2ch.net";
$url = $item[link];
echo "<a href='".$url."' target='_blank'>リンク</a>";
?>
はい、どうぞ。
0638nobodyさん
04/09/08 16:16ID:???0640631
04/09/08 16:24ID:???他の皆様もありがとうございます。
<a href='".$url."' target='_blank'>で解決しました。
ご迷惑をおかけしました。
そして、本当にありがとうございました。 m(_ _)m
0641nobodyさん
04/09/08 16:27ID:???0642nobodyさん
04/09/08 17:16ID:???(ブラウザの動作を直接制御することはできない)
その出力するHTMLを変える(target="_blank")ことで間接的に制御することはできる。
クライアント側であるウェブブラウザは、送られてきたHTMLをただただ表示するのみ。
PHPが動的に出力したHTMLなのか、静的なHTMLファイルそのままなのかは知ったこっちゃない。
ただただ送られてきたHTMLをのほほんと表示するだけ。
このへんのことを理解してないような人が定期的に来るなぁ。
このへんを理解してれば「新しいウィンドウで表示させる」って時点でPHPの話じゃなくてHTMLの話だってわかって自力で問題解決に向かえると思うんだが。
0643nobodyさん
04/09/08 17:27ID:???無茶苦茶言ってるいわけでして。
0644nobodyさん
04/09/08 17:38ID:???Onのままですか?
0645nobodyさん
04/09/08 18:03ID:???以下のwap1.phpだと端末で表示されません、シミュレーターですがBadSorceになります。
$wap1を文字列ではなくPHPコードとしているから(?)だと思い、$wap1内の「"」をエスケープしましたが駄目でした。
うまく表示させるにはどうすればよいでしょうか?
その下のtest.phpではうまく表示されました。
wap1.php--------------------
<?php
header('Content-type:text/x-hdml;charset=Shift_JIS .hdml');
・
・
(CHTMLで書いた文章をWAP1用に変換し$wap1に代入)
・
・
include($wap1);
?>
----------------------------
test.php----------------------
<?php
header("Content-type:text/x-hdml;charset=Shift_JIS .hdml");
$aaa = "<hdml version=\"3.0\" ttl=\"0\" markable=\"true\"><display title=\"テスト\">テスト</display></hdml>";
include($aaa);
?>
----------------------------
0647645
04/09/08 18:18ID:???うまく説明できませんが、
header関数でヘッダ情報を出力するために、includeで変数に入れたHDMLソースを出力しています。
wap2用のスクリプトはprint関数で変数に入れたXHTMLソースを出力しています。
普通のブラウザで見るとhdmlファイルは未定義(?)のためにダウンロードをします。
すいません、決定的に不足している部分があるのはわかりますが、よろしくお願いします。
0650nobodyさん
04/09/08 18:33ID:???0651645
04/09/08 18:38ID:???printに変えてもBadSorceになってしまいます。
printに変え、PCのブラウザでDLして中身を見ると先ほどと同じでした。
0653645
04/09/08 18:46ID:???すいません、、、多分そうです。
エラー吐き出すソース書いてました。
これ全部直して、それでもうまく行かなかったらまた1時間ほど調べて、
それでも駄目ならまた戻ってきます、色々すいませんでした。
0654nobodyさん
04/09/08 19:13ID:???でエラーを表示させないようにしたかったんですが
相変わらず普通にエラーが表示されてしまいます。
(ini_getで見ると一応変更されてるようなんですけど……)
php.iniのdisplay_errorsをoffにすればエラーは非表示になりました。
でもUPする先のはいじれないんで、どうしたら良いのでしょう。
windowsのapache2のローカル環境です。
0655nobodyさん
04/09/08 19:32ID:???0656nobodyさん
04/09/08 20:16ID:???■ このスレッドは過去ログ倉庫に格納されています