mpx の回答履歴

全347件中181~200件表示
  • PHPでエクセル参照すると、指定と違うセルを参照することがあります

    お世話になります。 PHPでエクセルを参照しているのですが、ときどき(というか、かなりの頻度で)指定シートの指定セルと全く違うシートの違うセル位置を参照してしまいます。 環境は Windows Vista PHP5.0 エクセルデータ参照に「phpExcelReader」というツールを使用 直値で参照しています。 (例) echo $excel->sheets[0]["cells"][1][1]; これをA1からE5まで並べてみると、B5、C4、D4、E3、E4の5か所で参照が間違っていました。 直値参照なので、コードのミスではないと思うのですが、何でも結構ですので、何かご存じの方いらっしゃいましたら、ご回答宜しくお願い致します。

  • 「送信」ボタンからフォーカスを自動的に外す方法

    こんにちは。PHP初心者です。 先日、PHPでメールフォームを作成しました。 テキストエリアに"住所""名前"など入力し、最後に『送信』ボタンを押す。 と、ごく普通のメールフォームです。動作などは全く問題ありません。 でもどうしても気になることが。。。 それは最初にページを開いて、テキストエリアをクリックすると、 『送信』ボタンにもフォーカスされてしまいます。 これだと、入力が完了してない状態でエンターキーを押してしまうと、 次ページ(確認ページ)に移動してしまうのです。。。 どこがどうなって、こういった現象が出るのかわかりません。 簡単な方法としては、常に『送信』ボタンからフォーカスを外す方法 と安易に考えてます。。。 教えて下さい。 また、これが原因じゃない?という意見などもあれば教えて下さい^^

  • files関数配列取得について

    Notice: Undefined index: in /var/www/html/intern/sr/add.php on line 72 Warning: array_keys(): The first argument should be an array in /var/www/html/intern/sr/add.php on line 72 Notice: Undefined index: in /var/www/html/intern/sr/add.php on line 73 Warning: array_values(): The argument should be an array in /var/www/html/intern/sr/add.php on line 73 上記のようなエラーが発生します。 ソースは以下の通りです。 やりたいことはpostから送られてきたfileを連想配列? として取得することです $file_key = array_keys($_FILES["$jisseki_img"]); $file_val = array_values($_FILES["$jisseki_img"]); for ($i = 0; $i < count($file_key); $i++) { $$file_key[$i] = mb_convert_encoding($file_val[$i], "EUC-JP", $enc_input); }

    • ベストアンサー
    • prunote
    • PHP
    • 回答数2
  • 文字列からタグを探す

    こんばんは。お世話になっております。 質問のタイトルですが、あるサイトに指定したURLが設置されているか?といったスクリプトを作っているのですが、単純にサイトのソースを引っ張り出して、探すべくURLをstrstr()にて見つける分には、正常な結果を得ることが出来るのですが、そのURLがリンク機能として設置されているか?と、aタグ内に記述されているのか?とするには、どのようにしたら良いのでしょうか。 現在は、、、 $sagasu_site = "http://www.○○○.com/";//探したいURL $addfname = $sagasu_site; $mokuteki_url = "http://△△△.biz/";//設置されているか見つけ出したいURL $link = $mokuteki_url; $addstr = file_get_contents($addfname); $fp=@fopen("$addfname","r"); $no = ''; if($fp){ $file = ""; while (!feof($fp)){ $no++; $file .= fgets($fp,1000); } } fclose($fp); $f_copy = nl2br(htmlspecialchars($file)); if(!strstr($f_copy, $link)){ $message = "no<br>"; }else{ $message = "ok<br>"; } と、している分には問題ないのですが、リンクとして機能しているか?と、aタグないに記述されているかを調べるために、 $link = $mokuteki_url; これを、 $link= "<a href=\"".$mokuteki_url.""; とすると、正常に認識されません。 お忙しい中恐縮ですが、アドバイスのほど宜しくお願い申し上げます。

    • ベストアンサー
    • mayu_chap
    • PHP
    • 回答数1
  • 文字列(丸数字)の文字化けについて

    今自分で関数を作成しているのですが、文字列(丸数字)の文字化けにかなり苦しんでいます。 (※注※)これ以降(1)など()の中に数字を入れて記述しているものは実際のソースコード上では丸数字で記入してます。教えてgooでは丸数字が記述できないようでして… 関数の内容としては、(1)あ(2)い(3)う……このように丸数字で区切られている文字列を配列名を$dataとすると、$data[0]には「あ」、$data[1]には「い」、$data[2]には「う」が入るような関数を作成しています。 この丸数字の数は(10)まで対応させようと考えてます。 実際のソースは function bunkai($str1){ if (strstr($str1, "(10)") != NULL){ define("kugiri","(1)(2)(3)(4)(5)(6)(7)(8)(9)(10)"); // 区切り文字 }else if (strstr($str1, "(9)") != NULL){ define("kugiri","(1)(2)(3)(4)(5)(6)(7)(8)(9)"); // 区切り文字 }else if (strstr($str1, "(8)") != NULL){ define("kugiri","(1)(2)(3)(4)(5)(6)(7)(8)"); // 区切り文字 }else if (strstr($str1, "(7)") != NULL){ define("kugiri","(1)(2)(3)(4)(5)(6)(7)"); // 区切り文字 }else if (strstr($str1, "(6)") != NULL){ define("kugiri","(1)(2)(3)(4)(5)(6)"); // 区切り文字 }else if (strstr($str1, "(5)") != NULL){ define("kugiri","(1)(2)(3)(4)(5)"); // 区切り文字 }else if (strstr($str1, "(4)") != NULL){ define("kugiri","(1)(2)(3)(4)"); // 区切り文字 }else if (strstr($str1, "(3)") != NULL){ define("kugiri","(1)(2)(3)"); // 区切り文字 }else if (strstr($str1, "(2)") != NULL){ define("kugiri","(1)(2)"); // 区切り文字 }else if (strstr($str1, "(1)") != NULL){ define("kugiri","(1)"); // 区切り文字 } $count = 0; $token = strtok($str1, kugiri); while ($token) { $data[$count] = $token; $token = strtok(kugiri); $count++; } $data[$count] = NULL; return $data; } なんですが、 $str1に"(3)した(名)(4)しも(名)(5)もと(名)(6)さ-げる(動ガ下一)(7)さ-がる(動ガ下一)(8)くだ-る(動ラ五[四])(9)くだ-す(動サ五[四])(10)くだ-さる(動ラ五[四])"という文字列を入れて $dataを表示させてみると $data[0]=した(名) $data[1]=しも(名) ここまではできるのですが、これ以降 $data[2]=も� $data[3]=(名) $data[4]=さ-げる(動ガ下一) $data[5]=さ-がる(動ガ下一) $data[6]=く� $data[7]=-る(動� : : となってしまい、ところどころでうまく丸数字を読み込めていません。特に$str1に違う文字列をいれてみても(1)(2)(3)(4)まではきちんと読み込めてその後の(5)でまず最初の文字化けが絶対発生してしまいます。でも(5)を通過したあとの(6)(7)はきちんと判別していたりとよく原因がわかりません……。 がんばってexplode関数で同じようなことしてもいいかなと考えているのですが、関数自体が長くなってしまうので、めんどくさいなーと思います。 どなたか、このバグの原因がわかるかた、または、こんな関数を使ってこんなことしたら丸数字を判別して配列に入れることができるよーという意見もあったら欲しいです。 お願いします。困ってます。

    • ベストアンサー
    • ritsurin03
    • PHP
    • 回答数3
  • PHP でMysqlを使用して日本語を登録する。

    すいません、教えて下さい。現在、PHPとMYSQLを連携させてデーターベースを構築中なのですが、日本語が登録できません。mysqlモニタにてinsert 文で登録すると日本語が登録できるのですが、phpを経由すると登録できないのです。phpから、既存のデータベースを呼び出すと日本語のところがすべて文字化けしてしまいます。ちなみにmysqlのmy.iniの設定はsjisにしてあります。ujisにするとmysqlモニタからでも日本語が登録できなくなります。どこの設定がいけないのでしょうか?ちなみにWindows Vista php5.1 mysql 5.1 です。

    • ベストアンサー
    • yappuri
    • PHP
    • 回答数1
  • PHP 文字コード forとかでまとめて変更

    $v1 = mb_convert_encoding($v1, 'SHIFT-JIS','auto'); $v2 = mb_convert_encoding($v2, 'SHIFT-JIS','auto'); $v3 = mb_convert_encoding($v3, 'SHIFT-JIS','auto'); ↑これをまとめたいので $DataValue = array( $v1, $v2, $v3 ); $DataNum = count( $DataValue ); for( $i = 0; $i < $DataNum; $i++ ) { $DataValue[$i] = mb_convert_encoding($DataValue[$i], 'SHIFT-JIS','auto'); } としても期待した結果になりません。 $DataValue[0]ではなく$v1をエンコードしたいのです。 このケース以外にも言える事なんですが。。 このような処理は基本的な事かと思いますがどなたか助けてください。。

    • ベストアンサー
    • tkmkok
    • PHP
    • 回答数2
  • phpのincludeについて

    お世話になります。 Apache/2.2.3 PHP5.1.6 のレンタルサーバを利用しています。 httpdocs   |___lib   |  |___test.php   |___index.php という構造にしています。 -----test.php-------- <?php $a = 'sample'; ?> --------------------- -----index.php------- <?php include_once 'lib/test.php'; echo $a; ?> --------------------- 上記の場合、index.phpには 「sample」と表示されます。 -----index.php------- <?php include_once 'http://example.com/lib/test.php'; echo $a; ?> --------------------- 上記の場合、なぜか表示されません。 そこで「http://~~」はincludeできないのかなと思ったのですが -----test.php-------- <?php $a = 'sample'; echo $a; ?> --------------------- -----index.php------- <?php include_once 'http://example.com/lib/test.php'; ?> --------------------- とすると、なぜか「sample」と表示されました。 この結果から、includeはできているみたいです。 なんとか -----test.php-------- <?php $a = 'sample'; ?> --------------------- -----index.php------- <?php include_once 'http://example.com/lib/test.php'; echo $a; ?> --------------------- で「sample」と表示させたくて試行錯誤してみたのですが どうしても解決できません。 お力添えのほどお願いできればと思います。 よろしくお願いいたします。

    • ベストアンサー
    • masarin16
    • PHP
    • 回答数2
  • mb_send_mailの受信メールが一部反映されません、どなたか教えて頂ければ助かります。

    フォーム入力→確認画面→メールソフトに送信→送信完了画面を作成したのですが、フォームの内容は確認画面に反映され、メールソフトに送信できます。しかし、メールソフト送られてくる性別が全て女性になり、セレクトタグで選んだ項目が、メールソフトには何も表示されてません。どなたか知恵を貸していただければたすかります。PHPを習い始めてまだ、3ヶ月ほどです。 if(!isset($PHP_SELF)){ $PHP_SELF = $_SERVER["PHP_SELF"]; } if(!isset($action)){ $action = $_REQUEST['action']; } if(!isset($namae)){ $namae = $_REQUEST['namae']; if( get_magic_quotes_gpc() ) { $namae = stripslashes("$namae"); } $namae = htmlspecialchars ($namae); } if(!isset($old)){ $old = $_REQUEST['old']; if( get_magic_quotes_gpc() ) { $old = stripslashes("$old"); } $old = htmlspecialchars ($old); } if(!isset($sei)){ $sei = $_REQUEST['sei']; if($sei= ="m"){ $sei="男性"; }else{ $sei="女性"; } 一部省略 $pc_str=array("ooから","ooから","ooから","ooから","ooりから","oo","ooから","その他"); if(!isset($pc)){ $pc = $_REQUEST['pc']; $pc_mozi=$pc_str[$pc]; } --------------------------------------------------------------- <body> <?php if($action = = "post"){ if($_REQUEST["namae"] && $_REQUEST["mail"] && $_REQUEST["mail2"] && $_REQUEST["mail"]==$_REQUEST["mail2"]){ print ("内容(下記の内容でよいろしいですか)<br><br>\n"); print ("<form action=\"$PHP_SELF\" method=\"post\">\n"); print ("<input type=\"hidden\" name=\"action\" value=\"send\">\n"); print ("名前:$namae<br><br>\n"); print ("<input type=\"hidden\" name=\"namae\" value=\"$namae\">\n"); print ("E-mail:$mail<br><br>\n"); print ("<input type=\"hidden\" name=\"mail\" value=\"$mail\">\n"); print ("E-mail2 : $mail2<br><br>\n"); print ("<input type=\"hidden\" name=\"mail2\" value=\"$mail2\">\n"); if($sei){ print ("性別 : $sei<br><br>\n"); print ("<input type=\"hidden\" name=\"sei\" value=\"$sei\">\n"); } 一部省省略してます。 if($pc_mozi){ print ("きっかけ : $pc_mozi<br><br>\n"); print ("<input type=\"hidden\" name=\"pc_mozi\" value=\"$pc_mozi\">\n"); } print ("<input type=\"submit\" name=\"submit\" value=\"送信\"></from>\n"); print ("\n"); }else{print ("必須項目が未入力、もしくは確認用メールが不一致です。再度入力お願い致します。<br><br>\n"); print ("<a href=\"javascript:history.back()\">戻って修正する</a>"); } }elseif($action = = "send"){ mb_language("ja"); mb_internal_encoding("SJIS"); $header="Content-Type: text/plain;charset=ISO-2022-JP"; $header.='From: oo@oo.jp'; $header.='Reply-To:oo@oo.jp'; $header.='X-Mailer: PHP/' . phpversion(); $to="oo@oo.jp"; $sub="問い合わせ内容"; $message = "お名前=".$namae."\n"; $message.="性別=".$sei."\n";●すべて女性になってます。 (一部省略してます) $$message.="きっかけ=".$pc_mozi."\n";●この中身が反映されません $message.= "質問=".$msg."\n"; if(mb_send_mail($to,$sub,$message,$header)){ print "送信完了しました。"; ・・・こんな感じです

  • メールが送信出来ないのですが

    PHPでメールを送信すると、以下のエラーが出るのでが、こんな時何を手がかりに対処していいかわかりません。お手数ですが、アドバイスを頂けたらうれしいのですが。(素人なもんでよろしくお願いします。) Warning: mb_send_mail() [function.mb-send-mail]: Failed to connect to mailserver at "localhost" port 587, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in xxxxxxxx.php on line nnn

    • ベストアンサー
    • farnear
    • PHP
    • 回答数4
  • メールが送信出来ないのですが

    PHPでメールを送信すると、以下のエラーが出るのでが、こんな時何を手がかりに対処していいかわかりません。お手数ですが、アドバイスを頂けたらうれしいのですが。(素人なもんでよろしくお願いします。) Warning: mb_send_mail() [function.mb-send-mail]: Failed to connect to mailserver at "localhost" port 587, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in xxxxxxxx.php on line nnn

    • ベストアンサー
    • farnear
    • PHP
    • 回答数4
  • HEADERについて

    無知でお恥ずかしいのですが、PHPで出力する際 header("Content-Type: text/html;charset=EUC-JP"); などと最初にヘッダーを出力すると思うのですが、例えばtest.phpが以下のようになっていた場合でもPHPでヘッダーを出力する必要があるのでしょうか? test.php ※1<?php header("Content-Type: text/html;charset=EUC-JP"); ?> <HTML> <HEAD> <META HTTP-EQUIV="Content-Type" CONTENT="TEXT/HTML; CHARSET=EUC-JP"> <TITLE></TITLE></HEAD> <BODY> TEST <?php echo $test; ?> </BODY> </HTML> 参考書などを見てみると「全ての出力の前に記述する必要がある」と書いてあるだけで、書かずとも正常に表示されますし、仮に文字化けしても <META HTTP-EQUIV="Content-Type" CONTENT="TEXT/HTML; CHARSET=EUC-JP"> と追加すれば文字化けも解決するので、疑問は感じつつも思い出したときにPHPにもヘッダを記述するようにしていたのですが、少しづつPHPを勉強しやれる事が増えてくる内に、記述してあるものと記述して無いものが混在してきて気持ち悪く感じてきました。 皆さんはどのようにされていますか? ※他サイトで配布されているPHPスクリプトなども見てみたのですが、毎回記述している方、一切記述していない方それぞれでした。 あと、全く違う質問ですが、MYSQL接続中にエラー処理でexit;する場合、exit;する前にMYSQL接続を切断する必要ってあるのでしょうか?

    • ベストアンサー
    • kurarigu
    • PHP
    • 回答数2
  • ヒアドキュメントについて

    こんにちは。 ヒアドキュメントで $html = <<<HTML <tr> <td> <input name="tmp" type="radio" value="aaa"> </td> <td> {$value} </td> </tr> HTML; とし、 html内で <table> <%=$html=%> </table> などとして、ブラウザで表示させた場合、 『ソースを表示』などとしてソースを表示させると、改行などなく、大変見づらくなってしまいます。 この場合、どのようにしたら『ソースを表示』したとき、html構造が見やすい形で表示することができるでしょうか? よろしくお願いいたします。

    • ベストアンサー
    • paradii
    • PHP
    • 回答数1
  • ヒアドキュメントの中で別ファイルをインクルード

    PHPでヒアドキュメントの中で別ファイルをインクルードする方法はどのように処理するのでしょうか? sample.txt <p>サンプルテキストからの文字</p> ------------------------------------ sample.php $sample = <<<_EOM_ <html> <head> </head> <body> サンプルサンプル<br> *ここにsample.txt内のhtmlソースをインクルードしたい。 </body> </html> _EOM_; 以下省略(echoとかで出力)

  • 小数点を『#』で代用させたい

    初心者です。質問が稚拙であり申し訳ございませんが、 この手の参考資料を発見できずに苦労しています。 よろしければ、ご教授ください。 レンタルサーバー(ロリポップ)を活用しています。 フォームからPOSTを使って、 計算結果を表示させるようにしています。 そこで [例]0.5(ユーザ入力)×10=『5』   0#5(ユーザ入力)×10=『5』 というふうに#を小数点として認識させたいのですが、 どのような方法があるのでしょうか? …というのも、つい最近まで何も設定していなかったのですが、 『#』を小数点として計算ができていたので、標準的なものかと 思っていたのですが、突然、認識されなくなっていました。 素人ながら、レンタルサーバのPHPバージョンが4→5へなったことがなにがしか関係しているのではないか?とは思っているのですが… それでないとすると何も設定を触っていないので、何が原因なのやらと… お力添えよろしくお願いします。

    • ベストアンサー
    • skyhot
    • PHP
    • 回答数2
  • <img src=http://にしたい

    PHPでWebページのソースを取得して そのソースの中の<img>タグの src属性がもしhttp://で始まらなかった場合 取得したURLをsrc属性に加える方法はないでしょうか? 例 URL=http://www.○○.com ソース <img src="/image/01.jpg"> ↓ <img src="http://www.○○.com/image/01.jpg"> に変更したいです。 よろしくお願いします。

    • ベストアンサー
    • montan113
    • PHP
    • 回答数2
  • 配列の中身をボタンをおすことによって順次表示させたいです

    $files は配列です。 この中に値が格納されております。 この値をNEXTボタンを押すことによって順次表示させていきたいです。 どのようにしたらよいのでしょうか? <?php if($_POST['next']){ echo "<img src=\"img/$files[4]\">"; } ?> <form method="post" action="test.php"> <input type="submit" name="next" value="NEXT" > </form>

    • ベストアンサー
    • abesouri
    • PHP
    • 回答数3
  • 区切り文字を配列に格納する方法を教えて下さい。

    区切り文字を配列に格納する方法を教えて下さい。 $array[] = "abc,1981,1,12"; $array[] = "def,1982,2,18"; $array[] = "ghi,1991,4,12"; list($name[$i],$yy[$i],$mm[$i],$dd[$i]) = split("\,",$array[$i]); でループさせればそれぞれの変数に代入できますが、例えば $name["abc"]["yy"] = "1981"; $name["abc"]["mm"] = "1"; $name["abc"]["dd"] = "12"; のように分解するにはどうすれば良いでしょうか?

  • phpデータ受け取りについて

    (1)以下の場合や foreach($datas as $data){ $data=$node-> data[0]; $data2=$node-> data2[0]; $data3=$node-> data3[0]; . . .続く (2)以下の場合 $data1 = $_POST[\'data1\']; $data2 = $_POST[\'data2\']; $data3 = $_POST[\'data3\']; . . 続く の様ないくつものデータを受け取ったり定義する場合に、シンプル、スマートにするやり方って有りますか? php勉強中の素人です

  • 変数名の連結

    以下のような配列があるとします。 $str[0] = aaa; $str[1] = bbb; $str[2] = ccc; foreachでまわし変数名を連結し代入するというような事は可能なの でしょうか? foreach ($str as $key => $val) { //$keyをechoすると012と表示 //ここで変数名を$data0,$data1のようにしたいがうまくいかない $data . $key = $val; //配列にするぶんには正常に動作しました $data[$key] = $val; }

    • ベストアンサー
    • dcx147
    • PHP
    • 回答数4