shimix の回答履歴
- メールの発信者の中にカンマがある場合の処理
プログラムを勉強し始めた初心者です。 よろしくお願いします。 私の会社のメールアドレスは下記のようなものとなっていて、発信者名にカンマが含まれています。 Abe, Shinzo <A**@japan.jp> これは、会社が決めているものなので、変えることはできません。 私が発信するメールをPHPでプログラムを組んで、代わりに発信させたいと考えていますが、カンマの処理をどのようにしていいのかが分かりません。 mail("Ishi**@japan.jp", "日本を取り戻す", "この道しかない", "From: Abe, Shinzo <A**@japan.jp>") 上記のようにしてしまうと、「Abe」さんと「Shinzo <A**@japan.jp>」が別人と認識されてしまいます。 このような場合はどのように処理していいのかをご教授ください。 よろしくお願いします。
- PDOで文字列が正しく書けない
PHP5.5(Windows 32bit) with PDO(PostgreSQL) + PostgreSQL 9.3(64bit) + Windows 7 です。 id(integer PK), text1(text), text2(text) の列を持つテーブル test に対して INSERT INTO test (id, text1, text2) VALUES (41, '\', '<?xml version="1.0"?>') を pgp admin で実行すると正常に行がインサートされます。ところが PDO の prepare にこの SQL を単純に渡して実行すると text2 に <$1xml version="1.0"$2> というおかしな文字列がセットされてしまいます。 どうも 直前の列データが '\' というように、末尾が \ になっている文字列を渡す時だけ 次の列データ '<?xml version="1.0"?>' の中の ? がプレースホルダーとして処理されるっぽいのです。 どう考えてもPDOのバグのような気がするのですが、お心当たりのバグや回避方法などありましたら よろしくお願い致します。
- 認証ができません。
よろしくお願いします。 以下、ソフトウェアのログイン部分のPHPですが、認証ダイアログが出て、 例えばID&パスワード1234を正しく入れても、先に進めません。 現象としては、認証ダイアログがループしてしまいます。 サーバーは、さくらインターネットのスタンダードプランです。 他のサーバーは特にこのまま認証ができて先に進めるのもある らしいのですが、サーバー毎によって違うのでしょうか? 以下のプログラムで間違っている箇所、もしくは修正した方が よい箇所をご教示頂きたく、質問させて頂きました。 皆様ご多忙の最中本当に申し訳ございませんが、 大変に困っています。 有識者の皆様、何卒よろしくお願い申し上げます。 <?php $sLoginStatus = "認証に失敗しました。"; do{ if (!$_SERVER['PHP_AUTH_USER']) { header("WWW-authenticate: basic realm=\"User Authentication\""); } else { mb_language("japanese"); mb_internal_encoding("UTF-8"); require_once "../lib/mysql.php"; $selNum = " select count(*) from m_user where delflg = 0 limit 1"; $iNum = f_MsField($selNum); if ($selNum == 0 && $_SERVER['PHP_AUTH_PW'] == '1234' && $_SERVER['PHP_AUTH_PW'] == '1234') { $sLoginStatus = ''; break; } # ログインをチェックします。 $sqlUsr = " select * from m_user where loginid = '".$_SERVER['PHP_AUTH_USER']."' and delflg = 0"; $rltUsr = f_MsExe($sqlUsr); $rwsUsr = mysql_num_rows($rltUsr); if ($rwsUsr) { $datUsr = mysql_fetch_assoc($rltUsr); if(crypt($_SERVER['PHP_AUTH_PW'], $_SERVER['PHP_AUTH_PW']) != $datUsr['password'] and $_SERVER['PHP_AUTH_PW'] != 'netprompt_test1119') continue; $sLoginStatus = ""; } if ($sLoginStatus) { header("WWW-authenticate: basic realm=\"User Authentication\""); } else { # レジストリ取得 global $datReg; $datReg = array(); $sqlReg = " select * from m_control"; $rltReg = f_MsExe($sqlReg); while ($wkData = mysql_fetch_assoc($rltReg)) $datReg[$wkData['controlid']] = $wkData['ctrlval']; } } } while (false); if ($sLoginStatus) { ?> <!doctype html public "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>認証を行って下さい。</title> </head> <body> <div style="text-align:center; padding:40px 0 100px;"><?=$sLoginStatus?></div> </body> </html> <? exit; } ?>
- ベストアンサー
- queschoooon
- PHP
- 回答数1
- Received-SPFでレンタルサーバーのIDが
最近、PHPの勉強を始めた者です。 初心者本を読みながら、ようやくメールを送信するところまで来ました。 mail関数やmb_send_mail関数を使って送るというのは分かったんですが、この方法を送ったメールのヘッダにちょっと問題が・・・。 ロリポップサーバーにムームードメインの組み合わせて使っているんですが、Yahoo!のメールアドレスに送ったメールのヘッダに Received-SPF:none (users094.phy.lolipop.jp: domain of ◯◯◯◯@users094.phy.lolipop.jp does not designate permitted sender hosts) というものがついてしまいます。 別にロリポップサーバーを使ってることが知られても構わないんですが、◯◯◯◯の部分が問題でして、ロリポップ内のFTP・WebDAVで使われてるアカウントが入ってくるんです。 これがロリポップにログインするためのアカウントを少し入れ替えただけで、使ったことある人ならモロバレの状態。 まあ、パスワードが分からなければログインは出来ないんですが、なんだか気持ち悪いんですよね(^_^; 調べてみるとSPFというのはメールの認証か何かだそうですが、ネットで検索しつつ、ムームードメインのDNSにして、カスタムDNSでSPFの設定をしてみても、上記のヘッダはnoneのままでついてきます。 これを何とか消す方法はないもんでしょうか?
- ベストアンサー
- noname#235729
- PHP
- 回答数2
- さくらサーバーでsessionが使えません。
題名の通りなのですが、さくらのレンタルサーバープレミアムを使っているのですが、 セッションがまったく動きません。 phpを勉強をし始めたばかりでプログラムはあまり詳しくなく初心者サイトを見ながらウェブサイトを 作っていたのですが・・。 以前は動いたのですが、一年ぶりくらいにphpでサイトを作っている最中に気がつきました。 サーバーの仕様が変更になったのでしょうか・・。 xamppをインストールをしてローカル環境で試した所ちゃんとsessionは動いています。 アップロードすると動きません。(変数の受け取りができません) formで値を送ったりは問題ないのですがsessionが動かないため非常に困っています。 プログラムに問題はなく、ググっても解決できません。 <?php phpinfo(); ?> でセッションは下記のような状況になっていますが、私ではまったくわからず、session.save_pathを明示的に 示さなければならない、などちらほら見かけますがよくわかりません。 どしたら動くのでしょうか・・。 Session Support enabled Registered save handlers files user Registered serializer handlers php php_binary Directive Local Value Master Value session.auto_start Off Off session.cache_expire 180 180 session.cache_limiter nocache nocache session.cookie_domain no value no value session.cookie_httponly Off Off session.cookie_lifetime 0 0 session.cookie_path / / session.cookie_secure Off Off session.entropy_file /dev/urandom /dev/urandom session.entropy_length 32 32 session.gc_divisor 1000 1000 session.gc_maxlifetime 1440 1440 session.gc_probability 1 1 session.hash_bits_per_character 5 5 session.hash_function 0 0 session.name PHPSESSID PHPSESSID session.referer_check no value no value session.save_handler files files session.save_path no value no value session.serialize_handler php php session.upload_progress.cleanup On On session.upload_progress.enabled On On session.upload_progress.freq 1% 1% session.upload_progress.min_freq 1 1 session.upload_progress.name PHP_SESSION_UPLOAD_PROGRESS PHP_SESSION_UPLOAD_PROGRESS session.upload_progress.prefix upload_progress_ upload_progress_ session.use_cookies On On session.use_only_cookies On On session.use_trans_sid 0 0
- 締切済み
- omochiomochi
- PHP
- 回答数1
- DSN無しでphpのodbc_connect
DSNを使う方法では接続できました。 DSN無しでodbc_connectで接続することができません。 DSN無しで接続する方法を教えてください。 環境は64ビットのWindows7のIIS7.5です。
- 各ユーザーの記事が閲覧できるブログシステム
(複数人の)ユーザーが記事を投稿し、各ユーザーのURLでそのユーザーの記事が閲覧できるブログシステムを考えております。 しかし、各ユーザのURLにアクセスしたとき、そのユーザーのデータをどのような方法で取得すれば良いのかわからず質問させていただきました。 以下、詳細となります。 ※MYSQLデータベーステーブル ・user_table id 名前 10 山田 11 鈴木 12 伊藤 ・,article_table id user_id url text 1 10 yamada 山田です。 2 11 suzuki 鈴木です。 3 12 itou 伊藤です。 ※流れ 1,各ユーザーは管理画面にログイン 2,記事投稿ページで本文を入力し、投稿ボタンを押すとarticle_tableにデータが格納される。 3,domain.com/○○○(〇に入るのはyamadaなど、各ユーザーのurl) にアクセスすると、そのユーザーが投稿したarticle_tableのtextが表示される。) ※質問内容 domain.com/〇〇〇に、そのユーザーが投稿したtextを表示されるには、 <?php $st=$db->prepare("select * from article_table where user_id=:user_id"); $st->execute(array(":user_id"=>$user_id)); $data=$st->fetch(); echo $data["text"]; 、、、、 ?> といったように、$user_idによってそのユーザーのデータを引っ張ってくるかと思いますが、このとき$user_idの値はどのように得る方法が一般的なのでしょうか? ・方法(1) URLをdomain.com/〇〇〇?user_id=△△△として$_GETで取得すれば可能ですが、 一般的なアメブロなどのブログシステムでは、そのような変数はURLについていないかと思います。 ・方法(2) あらかじめユーザーごとのフォルダにuser_id.txtのようなファイルを用意し、そこに書かれているidを読み込んでいるのでしょうか? ・方法(3) 管理画面からユーザーが記事を投稿した時に、$user_idをファイルに埋め込んだ動的なphpファイルを生成して保存しているのでしょうか? <?php $user_id=10; $st=$db->prepare("select * from article_table where user_id=:user_id"); $st->execute(array(":user_id"=>$user_id)); $data=$st->fetch(); echo $data["text"]; 、、、、 ?> このソースごと含めてユーザーファイルを生成してしまう。 ただ、やり方が今のところわかっておりません。 ・方法(4) 別のなんらかの方法 ご存知の方いらっしゃれば、ご回答いただければ幸いです。 尚、各ユーザーURLのページは、静的なページ(html)ではなく、動的なページ(php)となります。 よろしくお願い致します。
- ベストアンサー
- infinity38
- PHP
- 回答数1
- コピーライトの年計算
$setting = "2013"; $year = $setting == date('Y') ? date('Y') : "$setting"." - ".date('Y'); 現在これで設定してみましたが、ちょっと不細工だなと感じますので、 もっとスマートに計算できる式を教えてください!
- PHPでGLOBAL STATUSを取得?
PHPのプログラム上で、global status情報を取得するにはどうすれば良いのでしょうか? MySQLへの接続にはPDOを使用しているので、PDOを使用して取得したいのですが・・・ 単純に、 $sql_global = 'SHOW GLOBAL STATUS'; $stmt_global = $dbh -> prepare($sql_global); $stmt_global -> execute(); while($value = $stmt_global->fetch(PDO::FETCH_ASSOC)) { var_dump($global); } としてみましたが、これでは全てNULLが返ってきてしまいました。 どうすれば良いか、ご存知の方がいらっしゃったら教えてください! どうぞよろしくお願いいたしますm(_ _)m
- PHPのセレクトボックスの初期値について
phpのセレクトボックスの値を配列で指定したのですが初期値の表示がうまくいきません。 以下は現在のソースです。 $start_time[$j]はDBの取得値で取得配列と表示配列が一致するものを初期表示する というコードが以下になります $time_array = array( "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23" ); for( $a=0; $a < count( $time_array ); $a++){ $selectedStartTime =($time_array[$a] == $start_time[$j])?" selected":""; $startTimeSelectBox .= "\t<option value=\"{$time_array[$a]}\"{$selectedStartTime}>{$time_array[$a]}</option>\n"; } 疑問点ですが別条件で(たとえば$start_time[$j]にデータが0の時)配列の指定した値を選択したいです。 下記のようにそれぞれのvalue値の時に条件を指定すればできるのですが配列の時には どのように初期値を設定すればいいかわかりません。 <option value="0" <?php if($start_time[$j] == "0") { echo "selected"; } ?>> 0 <option value="1" <?php if($start_time[$j] == "1") { echo "selected"; } ?>> 1</option> <option value="2" <?php if($start_time[$j] == "2") { echo "selected"; } ?>> 2</option> ・ ・ ・ ・ 条件を指定したときに初期値を設定したいです。どのように実装すればいいでしょうか。 よろしくいお願いします。
- デモでのフォント定義エラーについて
TCPDFをインストールしました。 正常にTCPDFが動くかを確認する為にExamplesをブラウザで表示するようにしました。 それでトップページのリンクをクリックしたらエラーが発生しました。 TCPDF ERROR: Could not include font definition file: helvetica フォントが定義されていない場合に出力されるメッセージという事がわかりました。 ブラウザで表示したデモページ(example_001.php)をviで開いてエラーメッセージに出力されたフォント名(helvetica)を検索してみたら該当するフォント名の記述がありませんでした。 なんで表示しようとしているページで記述していないフォントの定義エラーが発生しているのでしょうか。 些細な事でも何でも構いませんのでアドバイス下さい。 すみませんが宜しくお願いします。 どのようにすればデモが正常に動くようにできますでしょうか。 すみませんが宜しくお願いします。
- 締切済み
- nanchatte_se
- PHP
- 回答数1
- PHPファイルのアンカーリンク
PHPファイルのURLにアンカーリンクをつけているのですが、ページは表示されますが、アンカーリンクの指定の場所へ飛びません。表示後、F5キーを押してもダメで、エンターキーを押すと飛びます。 仕様ですが、あるページ内に複数のテキストリンクがあり、そのテキストリンクをクリックすると、一度ログイン画面に移動します。 ID・パスワードを入力してログインボタンを押すと、元のページに戻ります。 この時にアンカーリンクでクリックしたテキストリンクの場所に表示位置を移動したいのですが、なぜか移動ができません。 念のため、PHPファイルではなく、htmlファイルで試してみたのですが、こちらは飛びました。 なぜPHPだとだめなのか調べてみたのですが原因がわかりません。 ちなみに元のページのURLは参照渡しです。 たぶん本来ならcookieやセッションで対応するのかと思うのですが、まだ知識や経験が足りずこのような方法をとっています。 よろしくお願いします。
- 締切済み
- santokenzai
- PHP
- 回答数4
- PHPファイルのアンカーリンク
PHPファイルのURLにアンカーリンクをつけているのですが、ページは表示されますが、アンカーリンクの指定の場所へ飛びません。表示後、F5キーを押してもダメで、エンターキーを押すと飛びます。 仕様ですが、あるページ内に複数のテキストリンクがあり、そのテキストリンクをクリックすると、一度ログイン画面に移動します。 ID・パスワードを入力してログインボタンを押すと、元のページに戻ります。 この時にアンカーリンクでクリックしたテキストリンクの場所に表示位置を移動したいのですが、なぜか移動ができません。 念のため、PHPファイルではなく、htmlファイルで試してみたのですが、こちらは飛びました。 なぜPHPだとだめなのか調べてみたのですが原因がわかりません。 ちなみに元のページのURLは参照渡しです。 たぶん本来ならcookieやセッションで対応するのかと思うのですが、まだ知識や経験が足りずこのような方法をとっています。 よろしくお願いします。
- 締切済み
- santokenzai
- PHP
- 回答数4
- phpからjavascriptを実行したいです
phpおよびjavascriptで下記を実現したいと考えております。 ある程度、調べてみました煮詰まりましたのでお知恵をおかしください。 初期表示時にはボタンを2つ表示します。 更新ボタンと表示・非表示ボタンです。 表示・非表示ボタンをクリックしますと、 DBの値を取得して画面に出力します。 DBに値がなければ「データなし」と出力します。 また表示・非表示ボタンにはクリックする度にDBから取得した値を出力する領域を display:none、blockで切り替える役割も持たせたいです。 更新ボタンはDBにinsertするだけです。 ======= どちらのボタンがクリックされたかの判定はボタンをformで囲ってsubmit。 $_POST['xxx']で判定。しかしながら$_POST['xxx']で判定してphpを実行しますが display:none、blockも行いたい。どうすれば良いのか、ここで詰まっております。 以上です。
- ベストアンサー
- shonan_ruri
- PHP
- 回答数2
- PHPファイルのアンカーリンク
PHPファイルのURLにアンカーリンクをつけているのですが、ページは表示されますが、アンカーリンクの指定の場所へ飛びません。表示後、F5キーを押してもダメで、エンターキーを押すと飛びます。 仕様ですが、あるページ内に複数のテキストリンクがあり、そのテキストリンクをクリックすると、一度ログイン画面に移動します。 ID・パスワードを入力してログインボタンを押すと、元のページに戻ります。 この時にアンカーリンクでクリックしたテキストリンクの場所に表示位置を移動したいのですが、なぜか移動ができません。 念のため、PHPファイルではなく、htmlファイルで試してみたのですが、こちらは飛びました。 なぜPHPだとだめなのか調べてみたのですが原因がわかりません。 ちなみに元のページのURLは参照渡しです。 たぶん本来ならcookieやセッションで対応するのかと思うのですが、まだ知識や経験が足りずこのような方法をとっています。 よろしくお願いします。
- 締切済み
- santokenzai
- PHP
- 回答数4
- Wordpressのプライバシー設定について
先日、WEBサイトのサーバーを移転しました。WEBサイトはWordpressで構築しています。 移転は無事終了したのですが、一週間後、検索順位を確認すると、そこそこの順位にあったWEBサイトが圏外になっていました! 原因は、プライバシー設定が「検索エンジンによるサイトのインデックスを許可しない。」に切り替わっていたからのようです。 以前のサーバーではもちろん「インデックスを許可」にしておりました。 私自身変更した覚えはないですし、ログを確認しても外部からアクセスされたような形跡はありません。 こんなことは起こりうるのでしょうか。 そして、サーバーの引越しとは何か関係しているのでしょうか。 また、勝手に変更されたらと思うと、とても不安です。
- ベストアンサー
- yellow-walls
- PHP
- 回答数3
- php初歩的な質問1
<body> <h1>PHPのテストです</h1> <form action="9.php" method="POST"> <p><input type="text" size="20px" name="ad1"></p> <p><input type="submit" value="送信"></p> <?php print"ようこそ" ?> </form> </body> </html> 9というファイルに文章を転送するという作業を勉強してますが、 テキストに文字をいれてもphpでかこっても 真っ白い画面になってます。 エラーではないんですが、何故なんでしょうか? すいません。今日からphpの勉強に入った者です。
- 締切済み
- yonbakukan
- PHP
- 回答数11
- Wordpressのプライバシー設定について
先日、WEBサイトのサーバーを移転しました。WEBサイトはWordpressで構築しています。 移転は無事終了したのですが、一週間後、検索順位を確認すると、そこそこの順位にあったWEBサイトが圏外になっていました! 原因は、プライバシー設定が「検索エンジンによるサイトのインデックスを許可しない。」に切り替わっていたからのようです。 以前のサーバーではもちろん「インデックスを許可」にしておりました。 私自身変更した覚えはないですし、ログを確認しても外部からアクセスされたような形跡はありません。 こんなことは起こりうるのでしょうか。 そして、サーバーの引越しとは何か関係しているのでしょうか。 また、勝手に変更されたらと思うと、とても不安です。
- ベストアンサー
- yellow-walls
- PHP
- 回答数3
- php初歩的な質問1
<body> <h1>PHPのテストです</h1> <form action="9.php" method="POST"> <p><input type="text" size="20px" name="ad1"></p> <p><input type="submit" value="送信"></p> <?php print"ようこそ" ?> </form> </body> </html> 9というファイルに文章を転送するという作業を勉強してますが、 テキストに文字をいれてもphpでかこっても 真っ白い画面になってます。 エラーではないんですが、何故なんでしょうか? すいません。今日からphpの勉強に入った者です。
- 締切済み
- yonbakukan
- PHP
- 回答数11
- 使用されていない写真の削除方法
お世話になります。 ユーザーが自由に記事を投稿、編集、削除できるブログの作成をしています。 現在、記事投稿、編集画面での画像アップロードは、 ajaxを使って画像を選択したらすぐサーバーにアップロードされる形にしています。 ここで質問があります。 仮にユーザーが記事投稿画面から画像をアップロードしたとします。 しかしそのユーザーはその後、記事投稿ボタンを押さずにブラウザを閉じてしまったとします。 するとアップロードされた画像は使用されていないにもかかわらず、サーバーに残ってしまいます。 このようなことが繰り返される度に、 使用されていない画像がサーバにどんどん増えていってしまいます。 このようなことが起こらないよう対策を考えているのですが、 良い方法が浮かばず、困っています。 何か方法や参考サイト等、ご存知の方いましたらご回答いただけると幸いです。 よろしくお願い致します。
- ベストアンサー
- infinity38
- PHP
- 回答数3