【PHP】ID出さんでも質問OKなスレ【初心者歓迎】2
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2009/09/10(木) 22:52:33ID:???PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
姉妹スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 80
http://pc11.2ch.net/test/read.cgi/php/1233479457/
0628624
2009/10/16(金) 11:55:18ID:???正規表現ですか。
まだ本当に記号の羅列にしか見えないですね。
でも正規表現使えればあの汚いものがこんなにシンプルな1行になるわけですね。
ちょっと正規表現勉強してみます。
ありがとうございます。
0629nobodyさん
2009/10/16(金) 12:05:20ID:???preg_match("![0-9][\._-0-9]*!",$str,$match);
print_r($match);
0631nobodyさん
2009/10/16(金) 12:20:37ID:???0634nobodyさん
2009/10/17(土) 13:36:36ID:???\n のような特殊な文字(エスケーッぷ?)の一覧を教えて。
あと、\nが CR+LFになるのかLFになるのかを
プログラム中から知る手段も教えてほしい。
0635634
2009/10/17(土) 13:43:17ID:???0636nobodyさん
2009/10/17(土) 20:14:28ID:???調べてみたのですが、「クライアント電話番号」と書かれている部分だけ分かりません。
どのように取得すれば良いかご存知の方がいらっしゃれば、ご教授いただけないでしょうか。
以下は、他の欄に使われていると思われる変数です。
--------------------------------------------------
情報を取得した時間:date("Y年\nm月\nd日\n A \nH時 i分\n s秒\n")
現在接続しているホスト名:$_SERVER['SERVER_NAME']
現在接続している場所(現IP):$_SERVER['REMOTE_ADDR']
現在接続している場所(元IP):$_SERVER['FORWARDED_FOR']
クライアント電話番号:不明
プロバイダー名:gethostbyaddr($_SERVER['REMOTE_ADDR'])
サポート言語:$_SERVER['HTTP_ACCEPT_LANGUAGE']
ポート番号:$_SERVER['REMOTE_PORT']
クライアントの場所:$_SERVER['HTTP_FORWARDED']
クライアントID:$_SERVER['REMOTE_USER']
ユーザ名:$_SERVER['REMOTE_IDENT']
クッキー:$_SERVER['HTTP_COOKIE']
使用ブラウザ:$_SERVER['HTTP_USER_AGENT']
どこのURLから来たか:$_SERVER['HTTP_REFERER']
proxyのバージョン等:$_SERVER['HTTP_VIA']
proxyの効果:$_SERVER['HTTP_PROXY_CONNECTION']
FORMの情報:$_SERVER['REQUEST_METHOD']
FORMのタイプ:$_FILES[...]['type'] ← 自信無し
FORMのバイト数:$_FILES[...]['size'] ← 自信無し
HTTP_X_LOCKING:$_SERVER['HTTP_X_LOCKING']
HTTP_FROM:$_SERVER['HTTP_FROM']
データ取得の手段:$_SERVER['REQUEST_METHOD']
エンコードの仕様:$_SERVER['HTTP_ACCEPT_ENCODING']
MIMEの仕様:$_SERVER['HTTP_ACCEPT']
--------------------------------------------------
0637nobodyさん
2009/10/17(土) 20:54:10ID:???0638nobodyさん
2009/10/17(土) 23:00:26ID:???「php whole」などで検索してみたのですが、どういうことか分かりません…。
もう少し詳しく教えていただけないでしょうか。
0640nobodyさん
2009/10/17(土) 23:42:00ID:???0641636
2009/10/17(土) 23:47:19ID:???解決したありがとう
0644nobodyさん
2009/10/18(日) 00:25:07ID:???「phone」と言う項目がありました。
これは、
PCの場合、登録に関する連絡の担当者(もしくは技術的な連絡の担当者)の電話番号
携帯電話の場合、クライアントの電話番号(使用者の電話番号)
になると考えて良いのでしょうか。
0645nobodyさん
2009/10/18(日) 09:38:00ID:???0648nobodyさん
2009/10/18(日) 10:20:56ID:???0649nobodyさん
2009/10/18(日) 10:24:15ID:???641から642
レス早いだろ
0651nobodyさん
2009/10/18(日) 10:45:08ID:???だから、番号を通知する設定にするとリクエストに番号が載るキャリアがあるんじゃね?
もしくはダイアルアップの場合のみ、とか。
0652nobodyさん
2009/10/18(日) 10:53:44ID:???0653nobodyさん
2009/10/18(日) 14:26:46ID:???サブスクライバIDとか、UIDとか、端末識別暗号とかEZ番号とか、
呼び方は色々だけど、つまりはそういうことです。
0654636
2009/10/18(日) 16:52:42ID:???つまり、「クライアント電話番号」というのは、携帯の電話番号というわけではなく、
「携帯端末ごとに決められているユニークな番号」という意味だったんですね。
ようやく理解することができました。
最後に、>>653さんの単語から検索した結果、色々な情報が出てきたので、まとめておきたいと思います。
--------------------------------------------------
・ドコモの場合
個体識別情報:<a>タグや<form>タグに「utn」という文字を入れると、$_SERVER[’HTTP_USER_AGENT’]の後ろに付加される
iモードID:GETやPOSTで引数に「guid=ON」を入れると、$_SERVER['HTTP_X_DCMGUID']から取得できる
・auの場合
個体識別情報(=EZ番号=サブスクライバID):auは固体識別子を毎回送信しているので、$_SERVER['HTTP_X_UP_SUBNO']から取得できる
・ソフトバンクの場合
個体識別情報:ソフトバンクの固体識別番号は、常にユーザーエージェントに含まれているので、$_SERVER[’HTTP_USER_AGENT’]から取得できる
個体識別情報:httpのページからhttpsへ遷移するようなケースであれば、$_SERVER['HTTP_X_JPHONE_UID']からも取得可能
・イーモバイルの場合
個体識別情報:HTTPリクエストヘッダの「x-em-uid」($_SERVER[’HTTP_X_EM_UID’]?)から取得できる
・ウィルコムの場合
現時点では取得不可能?
--------------------------------------------------
長い間、レスを使ってしまい申し訳ありません。とても勉強になりました。
答えてくださった方、本当にありがとうございます。
0655nobodyさん
2009/10/18(日) 17:06:22ID:???0656nobodyさん
2009/10/18(日) 17:49:47ID:mL8oRkmgプレースホルダに設定する値が数値"0"のとき、
空文字に自動変換されてしまって困ってます。
解決策わかる型いらっしゃいませんか?
環境は
DB:MySQL5.0.45
PHP:php5.2.8
PEAR:1.9.0
です。
0657nobodyさん
2009/10/18(日) 18:11:30ID:mL8oRkmg自己解決しました。
自動変換によるものではなく、
変換メソッドが悪さをしていたようです。
0659nobodyさん
2009/10/18(日) 19:27:11ID:???ネットショップ立ち上げのために先日oscommerceをインストールしてみたのですが
しょっぱなからちゃんと動作しないなどの不具合が。
oscommerceはデータベースサーバなどと連携している分、不具合やエラーが出やすいかなと
思い、perl言語のみのルミーズカートcgiに興味を持ちました。
以前、perl言語のクイズ作成cgiを設置して何のトラブルもなくずっと使えていたのでcgi単独だと
安定して使えるのかなというイメージがあります。
ずばりルミーズカートならoscommerceよりも安定して管理できるでしょうか?
多少機能が劣っていてもシンプルな構成でトラブルが少なく扱いやすい物が一番と考えております。
個々の環境にもよるとは思いますが一般論でお答えいただければ幸いです。
0660nobodyさん
2009/10/18(日) 19:30:45ID:???0661nobodyさん
2009/10/18(日) 20:28:40ID:???phpなんかよりperl使うべきですね。
0662nobodyさん
2009/10/18(日) 20:38:15ID:???0663nobodyさん
2009/10/18(日) 20:52:19ID:???そして己が人に教える時のことも考えてもコストが安い
0664nobodyさん
2009/10/18(日) 20:55:30ID:???軽量FWもたくさんでてるし時代遅れって事は無いと思う
0665nobodyさん
2009/10/18(日) 21:08:54ID:???まだまだPerlはUnixなんかのシステムにはよくつかわれてるんだぜ
0666nobodyさん
2009/10/18(日) 21:13:10ID:???0667nobodyさん
2009/10/19(月) 11:22:19ID:???条件分岐を $hogehoge == "" としててもうまく機能せず $hogehoge == "NULL" とするとうまくいくのでどうなのかな?と。
CとかVBは数年使ってたのでプログラム自体は素人ではないのですがPHPは使い始めて1週間です。
0668nobodyさん
2009/10/19(月) 11:24:56ID:???0669nobodyさん
2009/10/19(月) 11:42:48ID:???とPHPを初めて1ヶ月の俺が適当に答えてみるテスト
0670nobodyさん
2009/10/19(月) 11:44:28ID:???と呼び出しているphpに、呼び出し時に値を一緒に渡したいのですがどうすればいいでしょうか?
0671nobodyさん
2009/10/19(月) 12:05:24ID:???本当にただのNullの場合、緩い比較である==演算子を使っても文字列としては通らない。
よって$hogehoge == "NULL";で通るということはNULLという文字列が入っていると考えられる。
ためしに$hogehoge == "null;"と小文字にして確かめてみるとよい。
0672nobodyさん
2009/10/19(月) 12:50:51ID:6KYWXDe7何が危ないのでしょうか?
0673nobodyさん
2009/10/19(月) 12:55:31ID:???0675nobodyさん
2009/10/19(月) 13:04:20ID:???var_dump(0 == "NULL");
0677nobodyさん
2009/10/19(月) 13:39:05ID:???何がいいたいかわからん
ていうかvar_dumpをそんな使い方してる人ははじめてみたな
$a = null;
var_dump($a);
if ($a == "null") {
echo 1; //nullはStringではないので表示されない
}
0680nobodyさん
2009/10/19(月) 14:01:26ID:???empty()でチェックしたり、intval()とかで変換したりしろ
0681nobodyさん
2009/10/19(月) 14:22:30ID:???だから・・
言ったやつがどういう意図で言ったか根拠を本人に聞いてないとここで答えようがないだろつってんだよ
0682680
2009/10/19(月) 14:26:31ID:???>>668で終わりなんだけどね
http://jp.php.net/manual/ja/reserved.variables.files.php
ファイルが送られなくても$_FILESは空にはならない
$hogehogeはそれが何なのかわからないのでなんとも
http://jp.php.net/manual/ja/language.operators.comparison.php
>>674
boolとstringとの比較なのでboolに変換され、true == true
>>675
numberとstringとの比較なので数値に変換され 0 == 0
>>677
nullとstringとの比較なので""に変換され "" == "null"
0683nobodyさん
2009/10/19(月) 14:40:52ID:???http://www.php.net/manual/ja/reserved.variables.argv.php
0685nobodyさん
2009/10/19(月) 17:55:34ID:???この$hogeの中身を1文字ずつずらしてbcdとしたいのですが1文字ずらすのはどうすればいいんでしょうか?
文字コード拾ってきて1個ずらすとかでしょうか?
0686nobodyさん
2009/10/19(月) 18:18:28ID:???$hoge = "abc";
foreach (str_split($hoge) as $eachVar ) {
print ( chr ( ord( $eachVar ) + 1 ) );
}
0687nobodyさん
2009/10/19(月) 19:08:07ID:???$hoge = "abc";
foreach (str_split($hoge) as $eachVar ) {
print (++$eachVar);
}
0689nobodyさん
2009/10/19(月) 20:11:26ID:???$hoge = "abc";
$hoge = ++$hoge;
echo $hoge // bcd;
0691nobodyさん
2009/10/19(月) 20:16:01ID:???$hoge = --$hoge;
$hoge = $hoge + 1;
echo $hoge // bcd;
0694nobodyさん
2009/10/19(月) 20:20:33ID:???0695nobodyさん
2009/10/19(月) 20:33:24ID:???自分自身を消した後に指定アドレスにlocationするという事をしたいです。
ore.php
include_once("hogehoge.php");
いろんな処理〜
exec("rm -rf ore.php");
header("Location: yahoo.co.jp");
このような事なのですがlocationする前に消しているせいか、locationしてくれません。(当たり前ですが)
かと言ってlocationを先にするとファイルが消されません。
ファイルを消してなおかつlocationするにはどうすればいいのでしょうか?
馬鹿な私に知恵をお貸し下さい。
0696nobodyさん
2009/10/19(月) 20:46:53ID:???ファイルが使用中だから消せないとか?分からんけど。
別な方法としてはGETやリファラでファイル名を渡して遷移先で消すとか。あるいは間に1ページ挟むとか。
0697nobodyさん
2009/10/19(月) 22:37:55ID:???なんでそういうことをしたいのか分からないので最適な方法はどれになるかわからんけど
消したいファイルのリストを生成しておき(exec使ってるらへんに)
次回アクセス時にリストにあった場合それらを消すというのはいかがだろう?
0698nobodyさん
2009/10/19(月) 23:32:01ID:???ID出さないスレで質問してるから後ろめたい悪意を背後から感じられる
0701nobodyさん
2009/10/20(火) 10:58:33ID:???0702nobodyさん
2009/10/20(火) 11:38:40ID:???unlinkだと中身あると面倒だしな
0703nobodyさん
2009/10/21(水) 10:49:18ID:???<?php
require_once("../MySmarty.class.php");
$o_smarty=new MySmarty();
$o_smarty->assign("data",array(1,2,3,4,5,6,7,8,9,10));
$o_smarty->display("fnc_capture.tpl");
?>
/* fnc_capture.tpl */
{capture name="exp"}
{include file="fnc_section2.tpl"}
{/capture}
{if $smarty.capture.exp|strip:""!=""} // ココの "" != "" の意味が分かりません
結果)<br />
{$smarty.capture.exp}
{/if}
/* fnc_section2.tpl */
{section name="loopName" loop=$data start="2" step="2" max="3"}
{$smarty.section.loopName.rownum}.
{$data[loopName]} <br />
{/section}
すみません、上の3つのファイルで、fnc_capture.tplの『"" != ""』の意味が分かりません
strip修飾子で繰り返された空白・改行・タブを、1つの空白または与えられた文字列によって置き換えたものが空白ではない???
って感じで理解が出来ません
簡単な事だとは思うのですが、どなたか教えて下さい
0704nobodyさん
2009/10/21(水) 12:01:18ID:???{if ($smarty.capture.exp|strip:"")!=("")}
ということではないかと
0705nobodyさん
2009/10/22(木) 10:03:21ID:h4MlR9Snしらねえなら今から調べて来い
12時に飯食うからそれまでにとっととggってこいや
時間がねえからさっさとしろよksども
0706nobodyさん
2009/10/22(木) 10:12:13ID:???0708nobodyさん
2009/10/22(木) 15:02:17ID:???使おうと思っているのですが、PEARでインスコ出来ません。
pear install --alldeps Spreadsheet_excel_writer
というコマンドをターミナルから実行するのですが、しばらくすると
No releases available for package "pear.php.net/Spreadsheet_excel_writer"
と出て終わってしまいます。
何か違う方法でインストールするのでしょうか?
0709nobodyさん
2009/10/22(木) 15:39:17ID:???0710703
2009/10/22(木) 15:55:36ID:???つまり、 ($smarty.capture.exp|strip:"") != ("")と言う事は、取得した配列から空白文字を取り除いたものが、
空文字でなければ{$smarty.capture.exp}を出力するという事でしょうか?
>>707
風邪でブッ倒れていました
体調悪いです・・・
0711708
2009/10/22(木) 16:14:33ID:???ping pear.php.net を行うと、pingが帰って来ないのでpear.php.netにアクセス出来ない感じです。
どうしたらいいんでしょうか・・・?
0712nobodyさん
2009/10/22(木) 16:21:16ID:???0713708
2009/10/22(木) 16:57:33ID:???pear.php.netはping帰ってこないのに、
pecl.php.netはpingが帰ってくる・・・。
当然 pear installは出来ないけど、pecl installはOK。
困ったぞ・・・
0714nobodyさん
2009/10/22(木) 23:29:06ID:???php.ini にその設定追加してあげれば動くはず
つーか、昔のExcelWriter/Reader 使っているサイト改修したときはそうした。
0715nobodyさん
2009/10/23(金) 02:43:19ID:???フォントの大きさを14より
大きくするにはどうしたらいいの?
0716708
2009/10/23(金) 08:58:03ID:???ローカルインストールして解決しました。
de.pear.php.netには接続出来るので、チャンネルのURLを変更しようとしても
pear.php.netに一旦アクセスしないといけないので変更出来ず・・・。
ずっとこのままだとちと面倒だなぁ・・・。
0717nobodyさん
2009/10/23(金) 10:51:39ID:???しっかりしたエディタをカスタマイズしろよ!!!!!!!!!!!!
0718nobodyさん
2009/10/23(金) 14:33:10ID:TDVXUmCb【PHPのバージョン】php5.21
【質問内容】
PHPで画像を表示させ、「何秒か経過したら他の画像を表示させる」
プログラムが作れません。グーグル先生は俺の日本語が下手すぎて回答内容
も僕を導いてはくれませんでした。そもそもhtmlに結果のみを表示するPHPで
質問内容が出来るものなのか?と正直自分は思っています。
出来るのでしたらどなたかやり方を教えてください。
よろしくお願いいたします。
0720nobodyさん
2009/10/23(金) 14:35:42ID:???JavaScriptスレにおいで
http://pc11.2ch.net/test/read.cgi/hp/1255424883/
0722nobodyさん
2009/10/23(金) 15:19:18ID:EL5fculY空白ができてしまいます。
PHPファイルの文字コードをANSIに変えてやると問題ないのですが...
現在は、UTF-8を使用していますが、やはりANSIに切り替えるしかないでしょうか?
アドバイスよろしくお願いします。
0723nobodyさん
2009/10/23(金) 15:20:38ID:???0724722
2009/10/23(金) 15:20:44ID:EL5fculYUTF-8のBOMをとってやればOKでした
0725nobodyさん
2009/10/23(金) 20:19:55ID:???そうなります。広告のポップやフォトフレームみたいに
「自動で画像が変える」為のプログラムがわかりません。
一度きりの表示はわかるんですが。
>>720
この問題はJavaScriptスレで聞けば良いということなのでしょうか?
0726nobodyさん
2009/10/23(金) 20:23:09ID:???JSでやったほうが楽だけど
PHPでやるならランダムで画像を出力するページをインラインフレームで表示してrefleshで定期的に更新させるとか
■ このスレッドは過去ログ倉庫に格納されています