gogo-tea の回答履歴
- 【PHP】配列の最後の要素のキーを知るには
以下のような乱雑な配列があったとして中身がわからない場合、最後の要素のキーが「12」であることを知るにはどうすればいいでしょうか? お詳しい方、よろしくお願いいたします。 $myArray = array(); $myArray[2] = ''; $myArray[5] = 'a'; $myArray[9] = NULL; $myArray[12] = 'z';
- ベストアンサー
- PHP
- takosuke88
- 回答数5
- チェックボックス 複数選択
現在PHPを勉強しているのですがどうしてもわからなくなってしまったので 質問をさせて頂きます。 現在自分が作ろうとしているのは 登録フォーム→確認ページ→登録完了ページ(MYSQLに接続)の流れになっております。 その中でチェックボックスでつまずいております。 こちらにそのコードを一部を記載させて頂きます。 どこで困っているかと申しますと、登録フォームから確認ページまでは 複数選択されたチェックボックスを表示されることができたのですが、 確認ページから登録ページに変わる際に文字化けなどをし、 mysqlに接続して登録した際も文字化けになってしまいます。 他にも変数の受け渡しもうまく出来ていないと思います。 自分の中の結論としては確認ページのhiddenあたりが間違ってるのでは ないかと思ってるのですが何度試してみてもうまくいきません。 大変困っており、誰かご存知の方、もしくはこういう風に変更した方がいいとかありましたらご教授をお願い出来ませんでしょうか? 1,登録フォーム <tr> <td>施術(チェックボックス)<br />順番不問</td> <td> <span class="checkbox"><input name="sejyutu[]" type="checkbox" value="aaa" />aaa</span> <span class="checkbox"><input name="sejyutu[]" type="checkbox" value="bbb" />bbb</span> </td> </tr> 2,登録確認ページ $sejyutu = $_POST["sejyutu"]; <?php if (trim($sejyutu) == "" || !isset($sejyutu)){ echo "施術が選択されておりません。"; $flag_sejyutu=0; } elseif (empty($sejyutu)){ echo "施術が選択されておりません"; $flag_sejyutu=0; } else { if(isset($sejyutu) and count($sejyutu)>0){ $sejyutu_value = ""; for($i=0;$i<count($sejyutu);$i++){ if($i == 0){ $sejyutu_value .= $sejyutu[$i]; } else { $sejyutu_value .= " " . $sejyutu[$i]; } } } print mb_convert_encoding(trim($sejyutu_value),"sjis","euc-jp") ; $flag_sejyutu=1; } ?> <?php if($flag_sejyutu==1) { ?> <form action="reg_complete.php" method ="post"> <input type="hidden" name="sejyutu_value[]" value="<?php echo $sejyutu_value; ?>"> } 3,登録完了ページ $sejyutu = $_POST['sejyutu_value']; それからmysqlに接続。
- ベストアンサー
- PHP
- noname#130289
- 回答数5
- チェックボックス 複数選択
現在PHPを勉強しているのですがどうしてもわからなくなってしまったので 質問をさせて頂きます。 現在自分が作ろうとしているのは 登録フォーム→確認ページ→登録完了ページ(MYSQLに接続)の流れになっております。 その中でチェックボックスでつまずいております。 こちらにそのコードを一部を記載させて頂きます。 どこで困っているかと申しますと、登録フォームから確認ページまでは 複数選択されたチェックボックスを表示されることができたのですが、 確認ページから登録ページに変わる際に文字化けなどをし、 mysqlに接続して登録した際も文字化けになってしまいます。 他にも変数の受け渡しもうまく出来ていないと思います。 自分の中の結論としては確認ページのhiddenあたりが間違ってるのでは ないかと思ってるのですが何度試してみてもうまくいきません。 大変困っており、誰かご存知の方、もしくはこういう風に変更した方がいいとかありましたらご教授をお願い出来ませんでしょうか? 1,登録フォーム <tr> <td>施術(チェックボックス)<br />順番不問</td> <td> <span class="checkbox"><input name="sejyutu[]" type="checkbox" value="aaa" />aaa</span> <span class="checkbox"><input name="sejyutu[]" type="checkbox" value="bbb" />bbb</span> </td> </tr> 2,登録確認ページ $sejyutu = $_POST["sejyutu"]; <?php if (trim($sejyutu) == "" || !isset($sejyutu)){ echo "施術が選択されておりません。"; $flag_sejyutu=0; } elseif (empty($sejyutu)){ echo "施術が選択されておりません"; $flag_sejyutu=0; } else { if(isset($sejyutu) and count($sejyutu)>0){ $sejyutu_value = ""; for($i=0;$i<count($sejyutu);$i++){ if($i == 0){ $sejyutu_value .= $sejyutu[$i]; } else { $sejyutu_value .= " " . $sejyutu[$i]; } } } print mb_convert_encoding(trim($sejyutu_value),"sjis","euc-jp") ; $flag_sejyutu=1; } ?> <?php if($flag_sejyutu==1) { ?> <form action="reg_complete.php" method ="post"> <input type="hidden" name="sejyutu_value[]" value="<?php echo $sejyutu_value; ?>"> } 3,登録完了ページ $sejyutu = $_POST['sejyutu_value']; それからmysqlに接続。
- ベストアンサー
- PHP
- noname#130289
- 回答数5
- チェックボックス 複数選択
現在PHPを勉強しているのですがどうしてもわからなくなってしまったので 質問をさせて頂きます。 現在自分が作ろうとしているのは 登録フォーム→確認ページ→登録完了ページ(MYSQLに接続)の流れになっております。 その中でチェックボックスでつまずいております。 こちらにそのコードを一部を記載させて頂きます。 どこで困っているかと申しますと、登録フォームから確認ページまでは 複数選択されたチェックボックスを表示されることができたのですが、 確認ページから登録ページに変わる際に文字化けなどをし、 mysqlに接続して登録した際も文字化けになってしまいます。 他にも変数の受け渡しもうまく出来ていないと思います。 自分の中の結論としては確認ページのhiddenあたりが間違ってるのでは ないかと思ってるのですが何度試してみてもうまくいきません。 大変困っており、誰かご存知の方、もしくはこういう風に変更した方がいいとかありましたらご教授をお願い出来ませんでしょうか? 1,登録フォーム <tr> <td>施術(チェックボックス)<br />順番不問</td> <td> <span class="checkbox"><input name="sejyutu[]" type="checkbox" value="aaa" />aaa</span> <span class="checkbox"><input name="sejyutu[]" type="checkbox" value="bbb" />bbb</span> </td> </tr> 2,登録確認ページ $sejyutu = $_POST["sejyutu"]; <?php if (trim($sejyutu) == "" || !isset($sejyutu)){ echo "施術が選択されておりません。"; $flag_sejyutu=0; } elseif (empty($sejyutu)){ echo "施術が選択されておりません"; $flag_sejyutu=0; } else { if(isset($sejyutu) and count($sejyutu)>0){ $sejyutu_value = ""; for($i=0;$i<count($sejyutu);$i++){ if($i == 0){ $sejyutu_value .= $sejyutu[$i]; } else { $sejyutu_value .= " " . $sejyutu[$i]; } } } print mb_convert_encoding(trim($sejyutu_value),"sjis","euc-jp") ; $flag_sejyutu=1; } ?> <?php if($flag_sejyutu==1) { ?> <form action="reg_complete.php" method ="post"> <input type="hidden" name="sejyutu_value[]" value="<?php echo $sejyutu_value; ?>"> } 3,登録完了ページ $sejyutu = $_POST['sejyutu_value']; それからmysqlに接続。
- ベストアンサー
- PHP
- noname#130289
- 回答数5
- 【PHP】配列の最後の要素のキーを知るには
以下のような乱雑な配列があったとして中身がわからない場合、最後の要素のキーが「12」であることを知るにはどうすればいいでしょうか? お詳しい方、よろしくお願いいたします。 $myArray = array(); $myArray[2] = ''; $myArray[5] = 'a'; $myArray[9] = NULL; $myArray[12] = 'z';
- ベストアンサー
- PHP
- takosuke88
- 回答数5
- 【PHP】配列の最後の要素のキーを知るには
以下のような乱雑な配列があったとして中身がわからない場合、最後の要素のキーが「12」であることを知るにはどうすればいいでしょうか? お詳しい方、よろしくお願いいたします。 $myArray = array(); $myArray[2] = ''; $myArray[5] = 'a'; $myArray[9] = NULL; $myArray[12] = 'z';
- ベストアンサー
- PHP
- takosuke88
- 回答数5
- apacheが削除できなくなりました。
apacheが削除できなくなりました。apacheとphpをダウンロードして始めようと思ったら、phpのファイルを開くとDW8が開くようになりました。よくよく調べてみると、DW8はMySQLじゃないとphpを開けないようなことがDW8ヘルプに書いていたので、XAMPPをダウンロードしました。そして、最初にダウンロードしていたapacheとphpを削除しようと思いました。ちょっとずつごみ箱を整理していくと、apacheの一部が削除できなくなりました。どうやら、apacheの使用中に削除したためだと思われます。 しかし、大半を削除してごみ箱もカラにしてしまったためにapacheを止めることができません。どうしたら良いのでしょうか?
- PHPとDW8の関係と設定について
自分の持っているPHPの参考書の通りにApache2.0.59とPHP5.1.6をダウンロードして、PHPの勉強を始めようと思いました 。PHPの簡単なファイルを作成しました。開いてみると、DW8 が開きました。しかもprint 部分に関しては緑色の枠で囲まれたPHPという文字になっています。その部分はちゃんとPHPのプログラムができているのかを調べるためにブラウザで表示しようとすると、「サーバーサイドコードを含むページをプレビュ-するには、テストサーバーが必要です。テストサーバーを今すぐ指定しますか?」という文字が出てきます。しかし、DW8の参考書でこのあたりは出てこないので、どうしたら良いのかわかりません。設定の仕方とかわかる人がいましたら教えてください。
- エラーログの意味と対処方法を教えてください
http://www.mt312.com/のフリースクリプトの携帯対応掲示板 REP-BBSでエラーログが大量に放出されました。 その一部を書きます。 PHP Notice: Undefined index: HEAD in xxx/model.php on line 158 PHP Notice: Undefined index: page in xxx/model.php on line 793 PHP Notice: Undefined variable: nStart in xxx/model.php on line 1088 PHP Notice: Undefined index: mode in xxx/model.php on line 547 PHP Notice: Undefined index: mode in xxx/index.php on line 15 PHP Notice: Undefined index: page in xxx/model.php on line 480 まだまだあります。 サーバーから数十ギガバイトのエラーログがあると指摘されました。 どれかひとつでもいいです。対処方法教えてください。
- 締切済み
- PHP
- takuto0707
- 回答数2
- APIで取得した情報の「次ページ」
仕事で最近PHPの勉強をはじめ、将来的にはAPIを活用したサイトを作りたいのですが、次ページの表示の仕方がわかりません。 「次ページへ」 「前ページへ 次ページへ」 と表示したいのですがどのようにすれば、次ページや前ページを表示できるのでしょうか?? APIは価格comの商品検索です。 http://apiblog.kakaku.com/KakakuItemSearchV1.0.html プログラムの内容は、簡単に書きますが +++++++++++++++++++++++++++++++++++ $keyword = $_GET['Keyword']; $url = "http://api.kakaku.com/Ver1/ItemSearch.asp?Keyword=".$keyword."CategoryGroup=pc&ResultSet=medium&SortOrder=pricerank&PageNum=1"; $a = simplexml_load_file($url) or die("XMLパースエラー"); echo "検索結果".$a->NumOfResult."件"; foreach ($a->Item as $b){ echo "製品名".$b->ProductName ; } +++++++++++++++++++++++++++++++++++ です。 これで最初の5件は表示されるのですが、ここから「次ページ」「前ページ」のリンクを出すにはどのようにするのでしょうか? ご返答よろしくお願いします。
- 締切済み
- PHP
- oosaka2000
- 回答数1
- Parse error: parse error, unexpected $ エラーについて
MagpieRSS-0.72を利用して、RSSをサイトに反映させるように苦戦しています。。 HTML内でRSS.PHPをインクルードさせると、以下のようなエラーがでて困っています。。 Parse error: parse error, unexpected $ in /var/www/vhosts/*********.com/httpdocs/rss/rss.php on line 21 RSS.PHPファイルの内容 <?php require_once 'rss_fetch.inc’; // ここから MagpieRSS 0.61 を入手→ http://magpierss.sourceforge.net/ $men = array ("http://japan.****.com/rss/index.rdf", "http://www.******.com/stafflog/atom.xml"); foreach ($men as $pre) { $url = $pre; $rss = fetch_rss($url); $title = $rss->channel[title]; $title = mb_convert_encoding($title, "shift_jis", "auto"); $url = $rss->channel[link]; echo "<div class=\"RSSsite\"><p class=\"tdbg\"><a href=\"$url\" target=\"_blank\">$title</a></p></div>\n"; $rss->items = array_slice($rss->items, 0, 5); // 表示件数を5にしている foreach ($rss->items as $item ) { $title = $item[title]; $title = mb_convert_encoding($title, "shift_jis", "auto"); // 文字コードは適時変更 $url = $item[link]; echo "<div class=\"RSSline\"><li><a href=\"$url\" target=\"_blank\">$title</a></li></div>\n"; $description = $item[description]; //タイトルだけなら下の行とも削除 $description = mb_convert_encoding($description, "shift_jis", "auto"); // 文字コードは適時変更 echo "<p class=\"spc\">$description</p>\n"; } ?> 以下のサイトを参考にして作りました。 http://muto.wordpress.com/2006/06/28/%e8%a4%87%e6%95%b0%e3%81%ae%e3%83%95%e3%82%a3%e3%83%bc%e3%83%89%e3%82%92%e8%a1%a8%e7%a4%ba%e3%81%95%e3%81%9b%e3%82%8bphp/
- Parse error: parse error, unexpected $ エラーについて
MagpieRSS-0.72を利用して、RSSをサイトに反映させるように苦戦しています。。 HTML内でRSS.PHPをインクルードさせると、以下のようなエラーがでて困っています。。 Parse error: parse error, unexpected $ in /var/www/vhosts/*********.com/httpdocs/rss/rss.php on line 21 RSS.PHPファイルの内容 <?php require_once 'rss_fetch.inc’; // ここから MagpieRSS 0.61 を入手→ http://magpierss.sourceforge.net/ $men = array ("http://japan.****.com/rss/index.rdf", "http://www.******.com/stafflog/atom.xml"); foreach ($men as $pre) { $url = $pre; $rss = fetch_rss($url); $title = $rss->channel[title]; $title = mb_convert_encoding($title, "shift_jis", "auto"); $url = $rss->channel[link]; echo "<div class=\"RSSsite\"><p class=\"tdbg\"><a href=\"$url\" target=\"_blank\">$title</a></p></div>\n"; $rss->items = array_slice($rss->items, 0, 5); // 表示件数を5にしている foreach ($rss->items as $item ) { $title = $item[title]; $title = mb_convert_encoding($title, "shift_jis", "auto"); // 文字コードは適時変更 $url = $item[link]; echo "<div class=\"RSSline\"><li><a href=\"$url\" target=\"_blank\">$title</a></li></div>\n"; $description = $item[description]; //タイトルだけなら下の行とも削除 $description = mb_convert_encoding($description, "shift_jis", "auto"); // 文字コードは適時変更 echo "<p class=\"spc\">$description</p>\n"; } ?> 以下のサイトを参考にして作りました。 http://muto.wordpress.com/2006/06/28/%e8%a4%87%e6%95%b0%e3%81%ae%e3%83%95%e3%82%a3%e3%83%bc%e3%83%89%e3%82%92%e8%a1%a8%e7%a4%ba%e3%81%95%e3%81%9b%e3%82%8bphp/
- ページングの際のページ(データ)生成について
ご教授よろしくお願いいたします。 現在Webサービスからデータを引っ張ってPHPアプリを作成中です。 試行錯誤しながら、なんとかページングも実装して ページ(データ)の表示もうまくいきました。 しかしながら、妙な現象に悩まされております。 Webサービスからのデータをサイト上に10件づつ表示させています。 ある特定のクエリ結果の場合だけサイト上のページ表示がおかしくなってしまうのです。 具体的には、検索結果が「11件、21件、31件...」というような場合です。 http://phero.do-kuchikomi.net/pheromone_goods/pherotica_hawk.html#hikaku 上記の検索結果は、31件で、ページングは1~4のナンバーが生成されています。 この場合、31件目を表示させるために「4」をクリックすると表示がおかしくなってしまうのです。 検索結果が「32件とか33件」とかだと正常に表示されます。 『○1件』の場合だけおかしくなってしまうのです。 原因を解明しようとしたのですが、力尽きてしまいました。 どなたかご教授願えないでしょうか? よろしくお願いいたします。 分かりにくい説明で申し訳ございません。
- ページングの際のページ(データ)生成について
ご教授よろしくお願いいたします。 現在Webサービスからデータを引っ張ってPHPアプリを作成中です。 試行錯誤しながら、なんとかページングも実装して ページ(データ)の表示もうまくいきました。 しかしながら、妙な現象に悩まされております。 Webサービスからのデータをサイト上に10件づつ表示させています。 ある特定のクエリ結果の場合だけサイト上のページ表示がおかしくなってしまうのです。 具体的には、検索結果が「11件、21件、31件...」というような場合です。 http://phero.do-kuchikomi.net/pheromone_goods/pherotica_hawk.html#hikaku 上記の検索結果は、31件で、ページングは1~4のナンバーが生成されています。 この場合、31件目を表示させるために「4」をクリックすると表示がおかしくなってしまうのです。 検索結果が「32件とか33件」とかだと正常に表示されます。 『○1件』の場合だけおかしくなってしまうのです。 原因を解明しようとしたのですが、力尽きてしまいました。 どなたかご教授願えないでしょうか? よろしくお願いいたします。 分かりにくい説明で申し訳ございません。
- PHP Auth認証ができない
今日は。 PEARのAuthを使って認証ページを作ろうとしているのですが、下記エラーがでてきて困ってます。環境はウインドウズXPです Fatal error: Class 'Auth' not found in C:\Program Files\Apache Group\Apache2\htdocs\samples\practice\myauth.php on line 15 15行目のソースは $auth=new Auth("DB",$params,"loginFunction",TRUE);です Authが無いのかなと思い require_once("Auth/Auth.php"); でエラーがでているか調べたのですが、エラーはでてないようです。 また、Authフォルダがあるかどうかも調べたのですが、C:\php\PEARにありました Fatal error: Class 'Auth' not foundをグーグルで調べてもよくわからないので困っています。 何かアドバイスがあればよろしくお願いします。
- 配列から表の生成
はじめまして。 PHP4とMySQLを勉強し始めて半年ほどの初心者です。 DB から重複したデータを除いて以下の様な表をHTMLの<table>タグで 索引のようなページ(表1)を作成しようとしています。 大文字のアルファベットは、見出しタグ<th>を使っています。 (表1) ------------------------- | A | B | C | ------------------------- | a12w4b | bfghj | cfgjg | | a243dd | bfffh | | | a9ss2s | bglfkg | | | aa87da | | | ------------------------- | D | E | F | ------------------------- | dh125a | easdhf | fabc | | dksk | eb12f3 | fddddd | | dx123y | eghjck | fhjkhl | | | elet | fxxxcx | | | ezxczm | | -------------------------- 以下、「Z」まで同様に繰り返し、一つの表で表示。 ・各値の文字列の長さは一定ではありません。 ・各値の最初の文字は、必ず「a」~「z」で始まります。 ・各値の最初の文字以外は、アルファベットと数字がランダムに入ります。 ・各値は重複するものが有りません。(ユニーク値) ・各値の数量は、同じでは有りません。 上記の条件から以下の様に処理しようと考えました。 ---------------------------------------------- distinct を使って値を取り出し ↓ 配列に格納 ↓ foreach でループ ↓ ereg でパターンマッチ(先頭文字一致) ↓ <td>タグ内に値を入れる ↓ HTML表示 --------------------------------------------- phpのコードは、以下のようにしました。 //test.php echo "<table border=\"1\">"; echo "<tbody>"; echo "<tr> <th>A</th> <th>B</th> <th>C</th> </tr>"; echo "<tr>"; while($row = mysql_fetch_object($res)){ foreach ($row as $str) { if(ereg ("^a", $str)){ echo "<td>". $str . "</td>"; echo "<td>". $str . "</td>"; echo "<td>". $str . "</td>"; } } echo "</tr>"; } echo "</tbody>"; echo "</table><br>"; が...これでは先頭の文字「a」の値だけが(表2)の様に、同じように3列表示されるだけです。 (当たり前なのですが...) (表2) ------------------------- | A | B | C | ------------------------- | a12w4b | a12w4b | a12w4b | | a243dd | a243dd | a243dd | | a9ss2s | a9ss2s | a9ss2s | | aa87da | aa87da | aa87da | ------------------------- ereg関数の部分を以下の様にしましたが、見出しの「A」・「B」・「C」に対応せず、うまく表示されません。 foreach ($row as $str) { if(ereg ("^a", $str)){ echo "<td>". $str . "</td>"; } if(ereg ("^b", $str)){ echo "<td>". $str . "</td>"; } if(ereg ("^c", $str)){ echo "<td>". $str . "</td>"; } } また、見出し「A」・「B」・「C」以降の「D」・「E」・「F」、「G」・「H」・「I」、... に対応する値をどの様に取り出し、表示すればよいのかも判りません。 どなたか判る方がいらっしゃれば、ご教授の程宜しくお願いいたします。
- 文字列取得 substrではできません。
1バイト2バイト混在文字列を substrで取得すると、2バイト文字が半分になるため最終文字が文字化けします。 1、2バイト混在文字をうまく取得できる関数はありますか?
- PHPでGDを使用しての折れ線グラフ作成
折れ線グラフの作成中なのですが、Y座標の設定をする際にどのようにすれば いいか悩んでいます。 データベースからY座標を決める元になる値を取ってきて、 それを配列に入れています。 $test = array(100,97,95,....); 値が100の時、Y座標は90。 値が50の時、Y座標は10。 以上を基準として、値が50<値<100の場合のY座標を計算したいのですが、どのようにすれば、求めることができるでしょうか。
- PHPでGDを使用しての折れ線グラフ作成
折れ線グラフの作成中なのですが、Y座標の設定をする際にどのようにすれば いいか悩んでいます。 データベースからY座標を決める元になる値を取ってきて、 それを配列に入れています。 $test = array(100,97,95,....); 値が100の時、Y座標は90。 値が50の時、Y座標は10。 以上を基準として、値が50<値<100の場合のY座標を計算したいのですが、どのようにすれば、求めることができるでしょうか。
- PHPでのアクセス制限で持続させるには?
お世話になってます。 今回、アクセス制限プログラムをPHPで制作しています。 これは PHPとMYSQLを連動させているものです。 ユーザーの新規登録、ログイン構造まではWEBで検索しながら自力でやりました。 ログインしたあと ページを見るのはいいのですが 直接アクセス(ログインを通過しずにアクセスした)されるといけないので、拒否をさせたいです。ログインされていればログアウトされる(ブラウザが閉じられる)までそのサイトのページを見れるようにしたいです。 またそれをログアウトしたら、キャンセルできるようにしたいです。 簡単に言うと ログイン→通過→メンバー用ページを表示 直接アクセス→エラーを表示(ログインに戻ってもらう) ということです。 お答えいただける方 どうぞよろしくお願いします。