gogo-tea の回答履歴
- PHPでのアクセス制限で持続させるには?
お世話になってます。 今回、アクセス制限プログラムをPHPで制作しています。 これは PHPとMYSQLを連動させているものです。 ユーザーの新規登録、ログイン構造まではWEBで検索しながら自力でやりました。 ログインしたあと ページを見るのはいいのですが 直接アクセス(ログインを通過しずにアクセスした)されるといけないので、拒否をさせたいです。ログインされていればログアウトされる(ブラウザが閉じられる)までそのサイトのページを見れるようにしたいです。 またそれをログアウトしたら、キャンセルできるようにしたいです。 簡単に言うと ログイン→通過→メンバー用ページを表示 直接アクセス→エラーを表示(ログインに戻ってもらう) ということです。 お答えいただける方 どうぞよろしくお願いします。
- PHP MySQL ページング処理
はじめまして、 現在ページング処理で悩んでます。ご協力お願いします。 PHP4.4.6とMySQLを使用し 1ページ10件 MAXページ99ページ 前次12345・・・のように表示させ・・・の部分をクリックすると データが51件以上 前次45678・・・ データが60件以下 前次23456 データが70件以下 前次34567 のように表示させるにはどのような処理、考え方をしたらよいでしょうか? なんとか自力で 前次12345 は表示、動作できたのですがその先どうしたらいいか解かりません。質問解かりにくいかもしれませんが、どうかお知恵をお貸しください。よろしくお願いします。
- PHP MySQL ページング処理
はじめまして、 現在ページング処理で悩んでます。ご協力お願いします。 PHP4.4.6とMySQLを使用し 1ページ10件 MAXページ99ページ 前次12345・・・のように表示させ・・・の部分をクリックすると データが51件以上 前次45678・・・ データが60件以下 前次23456 データが70件以下 前次34567 のように表示させるにはどのような処理、考え方をしたらよいでしょうか? なんとか自力で 前次12345 は表示、動作できたのですがその先どうしたらいいか解かりません。質問解かりにくいかもしれませんが、どうかお知恵をお貸しください。よろしくお願いします。
- 多次元配列?配列のキー?変数の型?
PHP勉強中のものです。 予定通りの動作にならんく四苦八苦しています。 どのように修正すれば予定通りになるのか考え方のアドバイスなどお願いします。 処理したいこと 変数$xxxの先頭の文字と最後の文字をsubstr()で取り出し$aaaと$bbbに別けそれぞれ代入しキーとして多次元配列に代入した配列要素を指定してechoで出力したい 試してみたこと $aaa1と$bbb1に直接整数を代入してみたところ、echoで出力された キーになる変数を整数型として変数に代入してみたが希望通りの動作にならなかった。 なにかアドバイス頂けると助かります。 $array = array( "0" =>array("あいうえお","かきくけこ"), "1" =>array("さしすせそ") ); $xxx = "0-1"; $aaa = substr($xxx,0,1); $bbb = substr($xxx,2); $aaa = (int)$aaa; $bbb = (int)$bbb; echo $array[$aaa][$bbb]; //出力されない $aaa1 = 0; $bbb1 = 1; echo $array[$aaa1][$bbb1]; //出力された $aaa = (int)$aaa; $bbb = (int)$bbb; echo $array[$aaa][$bbb]; //出力されない
- 選択されたプルダウンの値を変数に渡したい
以下の日付プルダウンですが、 任意の日付が選択されたときに、 その値(日付)を他の変数に渡せるようにしたいです。 どのように他の変数に渡せば良いでしょうか? <? $today=time(); $limit=30; echo "<select name=puldown>"; $menu=$today; for($i=0; $i<$limit; $i++){ $menu=date("Y/m/d",$today-86400 * $i); echo "<option value=$menu>$menu</option> \n"; } echo "</select>"; ?>
- 選択されたプルダウンの値を変数に渡したい
以下の日付プルダウンですが、 任意の日付が選択されたときに、 その値(日付)を他の変数に渡せるようにしたいです。 どのように他の変数に渡せば良いでしょうか? <? $today=time(); $limit=30; echo "<select name=puldown>"; $menu=$today; for($i=0; $i<$limit; $i++){ $menu=date("Y/m/d",$today-86400 * $i); echo "<option value=$menu>$menu</option> \n"; } echo "</select>"; ?>
- 選択されたプルダウンの値を変数に渡したい
以下の日付プルダウンですが、 任意の日付が選択されたときに、 その値(日付)を他の変数に渡せるようにしたいです。 どのように他の変数に渡せば良いでしょうか? <? $today=time(); $limit=30; echo "<select name=puldown>"; $menu=$today; for($i=0; $i<$limit; $i++){ $menu=date("Y/m/d",$today-86400 * $i); echo "<option value=$menu>$menu</option> \n"; } echo "</select>"; ?>
- imageCreateFromJpeg でのファイル指定
GDエンジンの利用についての初歩的な質問になります。 他のPHPで出力されたJPEG画像 「画像出力PHP?fileid=001.jpg」に対して imageCreateFromJpeg('画像出力PHP?fileid=001.jpg'); としても Warning: imagecreatefromjpeg('画像出力PHP?fileid=001.jpg'): failed to open stream: No such file or directory in ~ となります。 このような形式のファイルでwarningを回避する方法はないのでしょうか?お手数ですが返答宜しくお願いいたします。
- 締切済み
- PHP
- hanatoosha
- 回答数3
- チェックボックス複数選択 mysql受け渡し
PHPを習いはじめたのですが分からない所がありましたので質問をさせて頂きました。 チェックボックスを作り複数選択されたデータをMYSQLに受け渡したいのですがどうしてもうまくいきません。受け渡しが出来たかと思えばARRAYのみ表示されてしまい、重要な内容が一切表示されません。 こちらがスクリプトになります。 <tr> <td>(チェックボックス)<br />順番不問</td> <td> <span class="checkbox"><input name="check1[]" type="checkbox" value="aaa" />aaa</span> <span class="checkbox"><input name="check1[]" type="checkbox" value="bbb" />bbb</span> </tr> </td> //mysql $sql = "insert into table values('$check1')"; 多分この$sql分のなにかが間違ってると思うですがいくらやっても 出来ません、、 mysql の設定はカラムはcheck1となっており、text, 値はnullとなっております。 どのなたか複数チェックボックスで表示された項目をMYSQLのデータベースに移行できる方法をご存知の方お伺い出来ませんでしょうか。 宜しくお願い致します。
- ベストアンサー
- PHP
- noname#130289
- 回答数5
- 【PHP&JavaScript】複数の別ウィンドウ(phpファイル)へsubmitさせたい
PHP、JavaScript、共に初心者なので、的を得ていない質問かもしれませんが、是非ともご教授お願い致します。 やりたいこととしては以下の内容で、複数ではなく、1つの別ウィンドウしか表示されずに困っております。 (1)元のウィンドウで、入力や選択を行った後、結果ボタンを押し、"その都度"別ウィンドウを 表示させる。(つまり複数別ウィンドウを表示させたい) (元のページはそのまま残す) (2)元ウィンドウの入力値をPOSTデータとして、別ウィンドウに受け渡す。 (3)別ウィンドウでも、常に同一のロジックを必要とするため、都度開く別ウィンドウを同一PHPファイルとしたい。 上記で使用しているソース(主要な部分抜粋)は以下の通りです。 【元ウィンドウ】 <script type="text/javascript"> <!-- function newsubmit() { window.open("about:blank", "kekka", "WindowStyle"); mainform=top.window.document.motoform; mainform.action = "kekka.php"; mainform.target = "kekka"; mainform.submit(); } // --> </script> <form name="motoform" method="POST" action="<?= $_SERVER['PHP_SELF'] ?>"> ・・・ <input type="button" value="結果" name="kekka" onClick="newsubmit();"> ・・・ <select name="no" onchange="this.options[this.selectedIndex].value"> <option value="100">100</option> <option value="200">200</option> <option value="300" selected>300</option> <option value="400">400</option> <option value="500">500</option> </select> ・・・ </form> 【別ウィンドウ(kekka.php)】 <form name="subform" method="POST" action="<?= $_SERVER['PHP_SELF'] ?>"> ・・・ <?php print "no: " .$_POST['no']. "<br>\n"; ?> ・・・ </form> POSTデータの受渡しは、出来ています。 別ウィンドウのURLを、001.html、002.html、003.html・・・のように、別々のHTMLにしようとも考えましたが、 それぞれの別ウィンドウでどうしてもPHPの同一ロジックを入れたいため、同一のkekka.phpとしています。 それ故に、既に同じウィンドウ(kekka.php)が表示されているので、別ウィンドウが上書きされてしまい、 1つの別ウィンドウしか表示されません。 同じPHPを使用して、複数、別ウィンドウを表示させる方法、もしくは、別案などございましたら、 ご教授願えますでしょうか。お願い致します。
- 【PHP&JavaScript】複数の別ウィンドウ(phpファイル)へsubmitさせたい
PHP、JavaScript、共に初心者なので、的を得ていない質問かもしれませんが、是非ともご教授お願い致します。 やりたいこととしては以下の内容で、複数ではなく、1つの別ウィンドウしか表示されずに困っております。 (1)元のウィンドウで、入力や選択を行った後、結果ボタンを押し、"その都度"別ウィンドウを 表示させる。(つまり複数別ウィンドウを表示させたい) (元のページはそのまま残す) (2)元ウィンドウの入力値をPOSTデータとして、別ウィンドウに受け渡す。 (3)別ウィンドウでも、常に同一のロジックを必要とするため、都度開く別ウィンドウを同一PHPファイルとしたい。 上記で使用しているソース(主要な部分抜粋)は以下の通りです。 【元ウィンドウ】 <script type="text/javascript"> <!-- function newsubmit() { window.open("about:blank", "kekka", "WindowStyle"); mainform=top.window.document.motoform; mainform.action = "kekka.php"; mainform.target = "kekka"; mainform.submit(); } // --> </script> <form name="motoform" method="POST" action="<?= $_SERVER['PHP_SELF'] ?>"> ・・・ <input type="button" value="結果" name="kekka" onClick="newsubmit();"> ・・・ <select name="no" onchange="this.options[this.selectedIndex].value"> <option value="100">100</option> <option value="200">200</option> <option value="300" selected>300</option> <option value="400">400</option> <option value="500">500</option> </select> ・・・ </form> 【別ウィンドウ(kekka.php)】 <form name="subform" method="POST" action="<?= $_SERVER['PHP_SELF'] ?>"> ・・・ <?php print "no: " .$_POST['no']. "<br>\n"; ?> ・・・ </form> POSTデータの受渡しは、出来ています。 別ウィンドウのURLを、001.html、002.html、003.html・・・のように、別々のHTMLにしようとも考えましたが、 それぞれの別ウィンドウでどうしてもPHPの同一ロジックを入れたいため、同一のkekka.phpとしています。 それ故に、既に同じウィンドウ(kekka.php)が表示されているので、別ウィンドウが上書きされてしまい、 1つの別ウィンドウしか表示されません。 同じPHPを使用して、複数、別ウィンドウを表示させる方法、もしくは、別案などございましたら、 ご教授願えますでしょうか。お願い致します。
- 【PHP&JavaScript】複数の別ウィンドウ(phpファイル)へsubmitさせたい
PHP、JavaScript、共に初心者なので、的を得ていない質問かもしれませんが、是非ともご教授お願い致します。 やりたいこととしては以下の内容で、複数ではなく、1つの別ウィンドウしか表示されずに困っております。 (1)元のウィンドウで、入力や選択を行った後、結果ボタンを押し、"その都度"別ウィンドウを 表示させる。(つまり複数別ウィンドウを表示させたい) (元のページはそのまま残す) (2)元ウィンドウの入力値をPOSTデータとして、別ウィンドウに受け渡す。 (3)別ウィンドウでも、常に同一のロジックを必要とするため、都度開く別ウィンドウを同一PHPファイルとしたい。 上記で使用しているソース(主要な部分抜粋)は以下の通りです。 【元ウィンドウ】 <script type="text/javascript"> <!-- function newsubmit() { window.open("about:blank", "kekka", "WindowStyle"); mainform=top.window.document.motoform; mainform.action = "kekka.php"; mainform.target = "kekka"; mainform.submit(); } // --> </script> <form name="motoform" method="POST" action="<?= $_SERVER['PHP_SELF'] ?>"> ・・・ <input type="button" value="結果" name="kekka" onClick="newsubmit();"> ・・・ <select name="no" onchange="this.options[this.selectedIndex].value"> <option value="100">100</option> <option value="200">200</option> <option value="300" selected>300</option> <option value="400">400</option> <option value="500">500</option> </select> ・・・ </form> 【別ウィンドウ(kekka.php)】 <form name="subform" method="POST" action="<?= $_SERVER['PHP_SELF'] ?>"> ・・・ <?php print "no: " .$_POST['no']. "<br>\n"; ?> ・・・ </form> POSTデータの受渡しは、出来ています。 別ウィンドウのURLを、001.html、002.html、003.html・・・のように、別々のHTMLにしようとも考えましたが、 それぞれの別ウィンドウでどうしてもPHPの同一ロジックを入れたいため、同一のkekka.phpとしています。 それ故に、既に同じウィンドウ(kekka.php)が表示されているので、別ウィンドウが上書きされてしまい、 1つの別ウィンドウしか表示されません。 同じPHPを使用して、複数、別ウィンドウを表示させる方法、もしくは、別案などございましたら、 ご教授願えますでしょうか。お願い致します。
- TSVファイルを読み込んでCSV形式に変換したい
PHP4でTSVファイルを読み込んでCSVファイルに変換しようとしています。下記のようにしましたがうまくいきません。 どこがおかしいでしょうか? $file="sample.txt"; // 変換対象ファイル $contents =file_get_contents($file); $contents =str_replace("\t", ",", $contents); $fp = fopen ($contents, "r"); while(($line= fgetcsv($fp,1024,","))) { print "line= ".$line[0]."<br>"; print "line= ".$line[1]."<br>"; } よろしくお願いいたします。
- DBへの書き込みとメール送信を同時に実行するには
PHP + sqlite でリクエストフォームを作成しています。 データの入力 → 確認画面の表示 → 「送信」ボタン押下で、 1) name="email" 宛に確認メールを送る 2) 入力内容をデータベースに書き込む 上記 2 つの動作を同時に実行しようとしています。 確認画面からデータベースへの書き込み、 確認画面から name="email" 宛へのメール送信 の各動作は、個別に確認できていますが、 これらを同時に実行する方法がわかりません。 <form method="POST" action="*****.php"> では、 一方の処理しか指示できませんし、 JavaScript で対応しようとしましたが、上手く行きません。 どなたかお知恵を拝借できませんでしょうか。 よろしくお願いいたします。
- ベストアンサー
- PHP
- 2006papiko
- 回答数2
- jpgraphのインストール
ApacheとPHP5のインストールが無事終わり、次にjpgraph-2.2をインストールしたのですが、うまくできません。 C:/php/includes/jpgraph において php.iniの;extension=php_gd2.dllの;をとってGDを有効に ; Windows: "\path1;\path2" include_path = ".;c:\php\includes;c:\php\includes\jpgraph"として Apacheの再起動をしましたが、これだけではダメなのでしょうか? またサンプルのipgraphソース、a.phpを・・・apache/htdocsにおいて表示させても、うまく表示できません。以下エラーです。 Warning: main(JpGraph/jpgraph.php) [function.main]: failed to open stream: No such file or directory in C:\Program Files\Apache Group\Apache2\htdocs\a.php on line 3 Fatal error: main() [function.require]: Failed opening required 'JpGraph/jpgraph.php' (include_path='.;C:\php\includes;C:\php\includes\jpgraph') in C:\Program Files\Apache Group\Apache2\htdocs\a.php on line 3 初心者で恐縮ですが、教えて下さい。 よろしくお願いします。
- メール送信プログラム
いつもお世話になっております。 今まで動いていたメール送信のプログラムが正常に動かなくなりました。メールは送信されるのですが、ボディーの箇所とヘッダーの箇所の変数部分にあたるところが空白になってしまいます。 今までは正常に動いていたんです、SJISからUTF-8に移行したからなんでしょうか? 本番環境(SJIS)(サーバー:ロリポップ)のほうもなぜかいじっていないのにちゃんと動作しなくなっています。 以下、ロジックです(UTF-8にしたもの)。 <?php mb_language("Ja"); mb_internal_encoding("UTF-8"); $to = "test@test.com"; $title = "お問い合わせ"; $body = "■名前\n$contact_name\n ■メールアドレス\n$contact_email\n ■お問い合わせ内容\n$contact_naiyou\n"; $headers = "From:$contact_name<$contact_email>"; if(mb_send_mail($to, $title, $body, $headers)) { print "お問い合わせありがとうございます。"; } else { print "送信出来ませんでした。"; } ?> 推測されること等ありましたら、ご教授よろしくお願いします。
- ベストアンサー
- PHP
- armstrong-us
- 回答数2
- PHP 10件表示 "前へ" "次へ"
現在PHPとMYSQLを使用しております。 SQLでデータベースから$fldが一致したデータだけ抽出したデータを 10件ずつ表示させて”次へ”を押すと11~20件目が表示。 また”次へ”を押すと...といった感じに"次へ"と"前に"を表示させたいのですがどうしてもやり方がおもいつきません。 どなたかご存知の方ご教授お願いできませんでしょうか。 ここに今出来ていますスクリプトを記載させて頂きます。 extract($_REQUEST); if (!isset($page)) { $page = 1; } if(!empty($fld)) { //$fldに検索したい住所が入ってます。 $local = addslashes($fld); $where .= "add1 = '$fld' && "; } if(!empty($where)) { $where = substr($where, 0, -3); $where = "WHERE " . $where; } $sql = "select count(*) as cnt from ○○ ". $where; $rst = mysql_query($sql); $row = mysql_fetch_array($rst); $tcnt = $row["cnt"]; mysql_free_result($rst); $totalpage = ceil($tcnt / $PAGESIZE); $pagehead = "<B>$tcnt 件みつかりました。 " . "[" . ($PAGESIZE * ($page - 1) + 1) . "-"; if ($page < $totalpage) { $pagehead .= ($PAGESIZE * $page) . "] を表示</B>"; } else { $pagehead .= "$tcnt] を表示</B>"; } $sql = "select * from ○○ ". $where. " order by renban desc limit " . $PAGESIZE * ($page - 1) . ", $PAGESIZE"; $result = mysql_query($sql); $rows = mysql_num_rows($result); if($rows == 0){ echo "<p>登録データがありません。</p>"; } else { while($row = mysql_fetch_array($result)){ echo "<p>"; echo $row["renban"]; echo " "; echo $row["tourokubi"]; echo "<br />"; echo $row["people"]; echo " "; echo $row["add1"]; echo $row["add2"]; echo "-"; echo $row["sta"]; echo " "; echo $row["tel"]; echo $row["url"]; echo $row["sejitu"]; echo $row["pr"]; echo "</p><hr />"; } } ?> <?= $pagehead ?> <?php mysql_free_result($result); mysql_close; $param_local = rawurlencode($local); if ($page > 1) { $body .= "<A href = '$PHP_SELF?page=" . ($page - 1) . "&tcnt=$tcnt&local=". $param_local. $param_category. "'>" . "前の $PAGESIZE 件</A>"; } if ($totalpage > 1 and $page < $totalpage) { $body .= "<A href = '$PHP_SELF?page=" . ($page + 1) . "&tcnt=$tcnt&local=". $param_local. $param_category. "'>" . "次の $PAGESIZE 件</A>"; } ?> <?= $body ?> </body> </html>
- ベストアンサー
- PHP
- noname#130289
- 回答数3
- PHP 10件表示 "前へ" "次へ"
現在PHPとMYSQLを使用しております。 SQLでデータベースから$fldが一致したデータだけ抽出したデータを 10件ずつ表示させて”次へ”を押すと11~20件目が表示。 また”次へ”を押すと...といった感じに"次へ"と"前に"を表示させたいのですがどうしてもやり方がおもいつきません。 どなたかご存知の方ご教授お願いできませんでしょうか。 ここに今出来ていますスクリプトを記載させて頂きます。 extract($_REQUEST); if (!isset($page)) { $page = 1; } if(!empty($fld)) { //$fldに検索したい住所が入ってます。 $local = addslashes($fld); $where .= "add1 = '$fld' && "; } if(!empty($where)) { $where = substr($where, 0, -3); $where = "WHERE " . $where; } $sql = "select count(*) as cnt from ○○ ". $where; $rst = mysql_query($sql); $row = mysql_fetch_array($rst); $tcnt = $row["cnt"]; mysql_free_result($rst); $totalpage = ceil($tcnt / $PAGESIZE); $pagehead = "<B>$tcnt 件みつかりました。 " . "[" . ($PAGESIZE * ($page - 1) + 1) . "-"; if ($page < $totalpage) { $pagehead .= ($PAGESIZE * $page) . "] を表示</B>"; } else { $pagehead .= "$tcnt] を表示</B>"; } $sql = "select * from ○○ ". $where. " order by renban desc limit " . $PAGESIZE * ($page - 1) . ", $PAGESIZE"; $result = mysql_query($sql); $rows = mysql_num_rows($result); if($rows == 0){ echo "<p>登録データがありません。</p>"; } else { while($row = mysql_fetch_array($result)){ echo "<p>"; echo $row["renban"]; echo " "; echo $row["tourokubi"]; echo "<br />"; echo $row["people"]; echo " "; echo $row["add1"]; echo $row["add2"]; echo "-"; echo $row["sta"]; echo " "; echo $row["tel"]; echo $row["url"]; echo $row["sejitu"]; echo $row["pr"]; echo "</p><hr />"; } } ?> <?= $pagehead ?> <?php mysql_free_result($result); mysql_close; $param_local = rawurlencode($local); if ($page > 1) { $body .= "<A href = '$PHP_SELF?page=" . ($page - 1) . "&tcnt=$tcnt&local=". $param_local. $param_category. "'>" . "前の $PAGESIZE 件</A>"; } if ($totalpage > 1 and $page < $totalpage) { $body .= "<A href = '$PHP_SELF?page=" . ($page + 1) . "&tcnt=$tcnt&local=". $param_local. $param_category. "'>" . "次の $PAGESIZE 件</A>"; } ?> <?= $body ?> </body> </html>
- ベストアンサー
- PHP
- noname#130289
- 回答数3
- データベースからの抽出&表示方法
php、mysqlともに初心者なんですが、どのような構文(?)にしたらいいのか解決できるのか分かりません。 ニュース記事のデータベースにnewsというテーブルがあります。 id category url title count article 1 a http://headlines.yahoo.co.jp/hl?*** ****** 80 ******* 2 a http://news.goo.ne.jp/article/*** ****** 70 ******* 3 a http://news.goo.ne.jp/article/*** ****** 50 ******* 4 a http://www.mainichi-msn.co.jp/*** ****** 40 ******* 5 a http://www.mainichi-msn.co.jp/*** ****** 20 ******* 6 a http://www.yomiuri.co.jp/** ****** 20 ******* 7 a http://www.yomiuri.co.jp/** ****** 10 ******* 8 b http://www.yomiuri.co.jp/** ****** 10 ******* このテーブルからcategoryがaに属するtitleをcount順に表示したいのですが、 表示する際に news.goo.ne.jp と mainichi-msn.co.jp と yomiuri.co.jp をurlに含む記事にはtitleの最後に「注目」という文字を追加し、 それ以外の記事はそのまま表示したいと思っています。 下記のようにやってみたのですが、これでは全てのtitleに「注目」という文字が表示されてしまいます。 <?php $rs = mysql_query("select * from news where category = 'a' order by count desc",$con); while($rec = mysql_fetch_array($rs, MYSQL_ASSOC)){ echo "<a href=" ; echo $rec['url'] ; echo ">" ; echo $rec['title'] ; echo "</a>" ; echo "注目" ; echo "<br>" ; } mysql_free_result($rs); mysql_close($con); ?> どのような構文にしたらgoo・msn・yomiuriの記事だけに注目という文字を付け加えることができるのでしょうか。 どなたかアドバイスして頂けませんでしょうか。よろしくお願い致します。