検索結果
PHP
- 全てのカテゴリ
- 全ての質問
- constでパースエラー
<?php class hoge { const MOGE = 'moge'; function poge() { echo 'poge'; } } ?> なコードを書くと、 Parse error: syntax error, unexpected T_CONST, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in ...\test.php on line 5 とのエラーがでます。 constの部分をコメントアウトすればエラーはでません。 環境は、WindowsのXAMPP環境で、PHPのバージョンを4に変更してテストしているところなのですが... PHP Version 4.4.8 Apache/2.2.8 PHP5の環境では、正常に動作しました。 よろしくお願いいたします。
- 値が渡されない
メインページ(main.php)から次のページ(get.php) に値を渡しているのですが、受け取ってくれません。 URLを変数に入れて表示させたところ、URLの受け渡しはできていました。 ※URL = http://localhost/get.php?id=333 このURLからidの値(333)を取るために $ID = $_GET['id'] をget.php内に書いたところ、$IDの値が渡ってきません。 GETをREQUESTにしても同じです。 一体何が原因なのでしょうか? 環境: PHP5.2.0 Apache2.2.3
- 構文に問題がないRSSフィードを作ったのにRSSリーダに登録できません。
feedanalyzerでチェックした分には特に問題がないのですが、livedoorリーダで登録できませんでした。 拡張子がphpなのは、アクセスをカウントするためです。phpのソースは以下になります。 <?php //カウントする require_once("./lib/Init_class.php"); $init_obj = new Init_class(); $accesstxt = "./data/access.txt"; $init_obj->access_add($accesstxt); readfile("rss1.rdf"); ?> どなたか原因がわかる方がおられましたら教えてください。 xmlファイルは以下のURLになります。 http://www.ecstyle.jp/rss/make_rss/rss1.php どうぞよろしくお願いします。
- cronでエラー
いつも参考にさせていただいております。 早速質問をさせていただきます。 PHPのプログラムをcronを動かしているのですが以下のエラーがでます。 ------------------------------ PHP Warning: Unknown(): Unable to load dynamic library './php_gd2.dll' - ./php_gd2.dll: cannot open shared object file: No such file or directory in Unknown on line 0 ------------------------------ ライブラリがないと怒られているようですが、この回避方法は ありますでしょうか? ご教授よろしくお願いいたします。 環境 PHP:Version 4.3.2 Apache:2.0.40 (Red Hat Linux)
- ベストアンサー
- PHP
- wonder_dct
- 回答数2
- 他ページの入力内容を出力するには
PHPあまり詳しくないです。 会員登録ページなるものを作っています。 register.phpというページで入力した会員情報をconfirm.phpというページで最終確認させたいのですが、その際に入力した情報がconfirm.phpに反映されません。 regiser.php <?php $a = (!empty($_POST['name'])); $b = (!empty($_POST['email'])); $c = (!empty($_POST['password'])); $d = (!strlen($_POST['password']) < 4); if (isset($_POST['check'])) { if ($a && $b && $c && $d) { header('Location: confirm.php'); } } ?> <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> </head> <body> <h3>新規登録</h3> <form method="POST" action=""> <div class="container"> <label for="name">ユーザ名(20文字以内)</label> <br /> <input type="text" id="name" name="name" maxlength="20" /> </div> <?php if (isset($_POST['check'])) { if (empty($_POST['name'])) { print('※ユーザ名を入力してください'); } } ?> <br /><br /> <div class="container"> <label for="email">メールアドレス(100文字以内)</label> <br /> <input type="text" id="email" name="email" maxlength="100" /> </div> <?php if (isset($_POST['check'])) { if (empty($_POST['email'])) { print('※メールアドレスを入力してください'); } } ?> <br /><br /> <div class="container"> <label for="password">パスワード(4文字以上20文字以内)</label> <br /> <input type="password" id="password" name="password" maxlength="20"/> </div> <?php if (isset($_POST['check'])) { if (empty($_POST['password'])) { print('※パスワードを入力してください'); } elseif (strlen($_POST['password']) < 4) { print('※パスワードは4文字以上で入力してください'); } } ?> <br /><br /> <input type="submit" name="check" value="確認する" /> </form> </body> </html> confirm.php <?php $a = (!empty($_POST['name'])); $b = (!empty($_POST['email'])); $c = (!empty($_POST['password'])); $d = (!strlen($_POST['password']) < 4); if (isset($_POST['check'])) { if ($a && $b && $c && $d) { header('Location: confirm.php'); } } ?> <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> </head> <body> <h3>新規登録</h3> <form method="POST" action=""> <div class="container"> <label for="name">ユーザ名(20文字以内)</label> <br /> <input type="text" id="name" name="name" maxlength="20" /> </div> <?php if (isset($_POST['check'])) { if (empty($_POST['name'])) { print('※ユーザ名を入力してください'); } } ?> <br /><br /> <div class="container"> <label for="email">メールアドレス(100文字以内)</label> <br /> <input type="text" id="email" name="email" maxlength="100" /> </div> <?php if (isset($_POST['check'])) { if (empty($_POST['email'])) { print('※メールアドレスを入力してください'); } } ?> <br /><br /> <div class="container"> <label for="password">パスワード(4文字以上20文字以内)</label> <br /> <input type="password" id="password" name="password" maxlength="20"/> </div> <?php if (isset($_POST['check'])) { if (empty($_POST['password'])) { print('※パスワードを入力してください'); } elseif (strlen($_POST['password']) < 4) { print('※パスワードは4文字以上で入力してください'); } } ?> <br /><br /> <input type="submit" name="check" value="確認する" /> </form> </body> </html> できればあまりこの形は変えたくありません…。 action部分をconfirm.phpに変えると、入力値が空だったりするエラー時にconfirm.phpに飛ばないようにする方法が分かりません。 回答よろしくお願いします。
- ベストアンサー
- PHP
- mugachapin
- 回答数1
- IIS6.0 + PHPver5 + windows 2003 server
いつもお世話になっております。 今回、タイトルの構成にて、PHPプログラムを動作させようと試行錯誤しておりましたが、参考サイト(IIS、PHP)を参考に構築し、PHPの動作検証の為に、phpinfo.phpを表示させてみました。 ところが、htmlファイル(BODY部に「htmlテスト」と記述しただけのもの)は表示されるのですが、phpinfo.php(PHPファイル)が CGI Error The specified CGI application misbehaved by not returning a complete set of HTTP headers. とエラーになってしまい、上記のエラーで検索し、対応をしてみたのですが、上手く動作させる事が出来ませんでした。 ----‐私が試した事----- ・windows2003をVMでインストール後、IIS(6.0)をインストール (サーバの役割管理でアプリケーションサーバーにしています) ・PHP(PHP 5.2.5 zip package、PHP 5.2.5 installerどちらも試してみました)をインストール 参考サイト(http://allabout.co.jp/internet/database/closeup/CU20040928A/) ・IISの設定 参考サイト (http://rislim.net/blog/archives/000097.php) ・IISの設定2 参考サイト (http://www.geocities.jp/nonoyamajp/C32nd/PHP/PHPinst.htm) -----ここまで----- この他に、既定のWEBサイト?を新規で作成してみたり、仮想ディレクトリを作成してみたり、PHPインストールディレクトリに C:\PHP 実行権限などを与えてみたりしました。 phpファイルの保存場所にもフルコントロール実行権限を与えてみたり、Everyone を作成したりと、色々試してみたのですが、1週間程度悩み続けて、私にはこれ以上どうすれば解決できるのかという知識がなく、自分で○○を調べれば…というアタリもつける事ができなくなり、どうすれば良いのかが分かりません。 同じ作業を1週間もしていて、何一つ進展せず、会社の先輩にもお聞きしましたが、解決しませんでした。 参考サイトや、注意事項など、知識が欲しいです。 どうが、お力添えを頂けないでしょうか?
- 締切済み
- ハードウェア・サーバー
- merus
- 回答数1
- Cookieの値の取得
お世話になっています。 Cookieの値の取得について疑問がありますので、どなたか教えていただけないでしょうか? ------------------------------------------------------- /test/test1.php の中に <? setcookie ("test" , "hogehoge" ,time() + 86400 * 30); ?> ------------------------------------------------------- /test/test2.php の中に <? echo $HTTP_COOKIE_VARS[test]; ?> ------------------------------------------------------- /test2/test3.php の中に <? echo $HTTP_COOKIE_VARS[test]; ?> ------------------------------------------------------- というファイルを作成しました。(test3.phpのみ階層が違います) まず始めにtest.phpを表示させて、Cookieの情報を保存させます。 次にtest2.phpを表示させると、Cookieの情報を取得することが できますが、test3.phpを表示させると、Cookieの情報を取得すること ができません。これは、なぜなのでしょうか?また、取得する方法 はあるのでしょうか(無いわけは無いと思いますが・・・)? 以上です よろしく、お願い致します。 teraum
- HTML
phpファイルからHTMLの書き出しについての質問です できるとこまでやってみたんですが途中にmysqlから取り出したデータを処理するためのwhileなどのphpがあるためうまくいきませんでした 途中にphpがある場合、どうすればうまくいきますか? PHP Version 5.2.5です ファイルロックはこんな感じでしょうか? よろしくお願いします $html = <<<END_OF_DATA <html> <head> <title>タイトル</title> </head> <body> <table> <?php while ($table = mysql_fetch_assoc($recordSet)) { ?> <tr> <td>{$table['id']}</td> <td><?php print(htmlspecialchars($table['name'], ENT_QUOTES)); ?></td> </tr> <?php } mysql_free_result($recordSet) or die("MySQL切断に失敗しました。"); mysql_close($link) or die("MySQL切断に失敗しました。"); ?> </table> </body> </html> END_OF_DATA; $filename = 'index.html'; $fp = fopen($filename,'w'); stream_set_write_buffer($fp,0); flock($fp, LOCK_EX); fwrite($fp, $html); flock($fp, LOCK_UN); fclose($fp);
- wordpressの投稿記事のリストを表示したい
固定ページにすべての投稿記事の投稿日とタイトルだけを表示したかったのですが,タイトルリストの下に記事の内容までもが表示されてしまっています。 http://zen73.net/zwp/ <固定ページに書いた記事>blog ------------------------------------------------------------ <h3>全ブログ一覧</h3> <div class="dl_list"> <?php query_posts('showposts=10'); ?> <?php if (have_posts()):while(have_posts()):the_post(); ?> <dl><dt><?php the_time('Y.n.j'); ?></dt> <dd><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title_attribute(); ?></a></dd></dl> <?php endwhile; endif; ?> </div></div> ------------------------------------------------ PHPは全くの素人なのですが ア 日付とタイトルだけを表示する方法をお教え願います。 イ 'showposts=10'ですと,10件だけの表示になるのではないかと思いますが,すべてを表示したいときの記述の仕方をお教え願います。 よろしくお願いいたします。
- csvの特定キーワード抽出後、その前後のキーワードを表示するには
csvの特定キーワード抽出後、その前後のキーワードを表示するには -----sample.csv f01,名前01,説明01 d03,名前02,説明02 y12,名前03,説明03 -----呼び出しhtml sample.php?key=d03 -----sample.phpの処理 <?php $file_name = "sample.csv"; $file = @fopen($file_name, "r") or die("Data File Open Error"); flock($file, LOCK_SH); while (!feof($file)) { $buf = fgets($file, 4096) ; $data = split(",", $buf) ; if ($data[0] == $_GET["key"]) { $sampleid = $data[0] ; $samplename = $data[1] ; $sampleexp = $data[2] ; } } flock($file, LOCK_UN); fclose($file) ; ?> <h1><?php echo $samplename ?></h1> <h2><?php echo $sampleid ?></h2> <p><?php echo $sampleexp ?></p> 上記のようなフローの時に、sample.csv内の前後のデータをsample.php内で呼び出したいのですが、どうコードを書けばいいのかご教示ください。↓ <a href="ひとつ前のデータ">ひとつ前のデータ</a> <a href="ひとつ後のデータ">ひとつ後のデータ</a>
- ftp_putの容量制限はありますでしょうか
PHPプラグラムから、ftp_putを使って、バックグランドで特定のファイルを別サーバに転送をするプログラムを作成しております。 容量が8GBあるものに対して、転送されたファイルは2GB程しかありません。 PHPプログラムから実行ができるもので、2GB以上(容量を無制限)で転送する方法はありますでしょうか。 PHPからコマンドを実行する方法というのを下記のサイトで見たので、 http://piyopiyocs.blog115.fc2.com/blog-entry-760.html ftp.shで保存しておき、実行用のPHPに下記を記述し、 「<?php exec("/bin/sh ftp.sh"); ?>」のみを記述 ブラウザから、実行用のPHPファイルを呼び出してみたものの、容量が軽いものでも転送されませんでした。 実行PHPへの記述が悪いのでしょうか。 ご教授のほど、よろしくお願いいたします。
- ボタンを押下するとダウンロードのダイアログが表示されてしまいます…
ご教授お願いします。 PC&PHP初心者です。 参考書に沿ってPHPの勉強をしているのですが、以下のプログラムが思うように動作しません。 ***************************************************** addressbook.html <html> <head><title>addressinput.html</title></head> <body> 入力フォーム <form action = "addressinput.php" method = "post"> <table border = "1"> <tr> <td>名前</td> <td><input type = "text" name = "name"></td> </tr> <tr> <td colspan = "2" align = "center"> <input type = "submit" value = "入力"></td> </tr> </table> </form> </body> </html> ***************************************************** addressinput.php <html> <head><title>addressinput.php</title></head> <body> <?php $name = $_POST[ 'name' ]; print( "次のデータを受け取りました。<br />" ); print( "名前:" . htmlspecialchars($name)."<br />" ); ?> </body> </html> ***************************************************** addressbook.htmlにある「入力」ボタンを押下するとaddressinput.phpに入力したデータが渡されて、入力したデータを表示させるというものですが、何故かボタンを押下するとダウンロードのダイアログが表示されてしまい困っています。 これってなにか設定が必要なのでしょうか?
- ベストアンサー
- PHP
- funcargo50
- 回答数1
- コードを作成してアクセスしたけどうまく表示されない
先日からPHPについて勉強を始めました。 「独習PHP」という本を参考にして独学で学んでいるのですが ApacheとPHPを四苦八苦しながらも何とかインストールでき 基本的なコードで書かれたPHPファイルを作成したのですが そのファイルへアクセスした際、英字は問題なく表示されるのですが ひらがな・漢字(恐らく2byte文字全般)がうまく表示されません。 PHPファイル内容と表示内容は以下の通りです。 PHPファイル <?php //print命令は指定された文字列を表示するための命令です。 print('hello,world!<br/>'); print('こんにちは、世界!'); ?> 表示内容 hello,world! ??????A??E! 上記のようになってしまいます。 まだ学び始めたばかりでつまずいてしまい、何がいけないのかわからず困っています。 原因がわかる方、どうかご教授お願いいたします。
- phpinfoがスクリプトのまま表示される
Windows XP でApache2.0.46をインストールしテスト画面は成功し、次にphp4.3.2をインストールしたのですが <?php phpinfo(); ?> ブラウザにphpのインフォメーション画面が表示されません。 スクリプトが <?php phpinfo(); ?> このまま表示されます。ページにエラーがでるわけではなく入力したスクリプトのまま表示されてしまいます。 なのでphpinfo.php の保存場所や ブラウザで開く際の URL が違っている ということもなさそうですし、 ファイル修正後、Apache を再起動もしています。 httpd.conf 又は php.ini の修正もしているんですが。 何が原因なのでしょうか? 宜しくお願いします。 初心者でわからないのですがApacheを起動させていると外部からアクセスされるのでしょうか? phpの学習が目的なのですが。セキュリティは大丈夫なのでしょうか?
- 締切済み
- PHP
- noname#19728
- 回答数1
- 正規表現を使った.htaccessの記述に関して
「http://samplesite.jp/detail.php?no=1」⇒「http://samplesite.jp/1」 「http://samplesite.jp/detail.php?no=2」⇒「http://samplesite.jp/2」 .htaccessで上記のようなリダイレクトをしたいです。 「http://samplesite.jp/detail.php?no=1」へアクセスした際に「http://samplesite.jp/1」のURLにリダイレクトし、その上で「http://samplesite.jp/detail.php?no=1」の内容を表示するにはどうすれば良いでしょうか?
- sessionが分かりにくいです
try4.html <html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja"> <head> <title>カンタンアンケート</title> </head> <body> <form action='try4-2.php' method='GET'> 性別:<br> <input type="radio" name="gender" value=0>男性 <input type="radio" name="gender" value=1>女性<br><br> 趣味(複数選択可):<br> <input type="checkbox" name="movies" value=1>映画 <input type="checkbox" name="music" value=1>音楽 <input type="checkbox" name="books" value=1>読書 <input type="checkbox" name="sports" value=1>スポーツ<br><br> ご意見をお書きください:<br> <textarea name="comment" rows="4" cols="40"></textarea><br><br> <input type="submit" value="送信"> <input type="reset" value="リセット"><br><br> </form> </body> </html> ////////////////////////////////////////////////////// try4-1.php <?php session_start(); ?> <html> <head><title>try4-1.php</title></head> <body> <?php $_SESSION = array(total_cnt => 0, male => 0, female => 0, movies => 0, music => 0, books => 0, sports => 0, comment => array("")); ?> //////////////////////////////////////////////////////////////// try4-2.php <?php session_start(); ?> <html> <head><title>try4-2.php</title></head> <body> <?php if ($_GET['gender'] == 0) ++$_SESSION['male']; elseif ($_GET['gender'] == 1) ++$_SESSION['female']; if ($_GET['movies']) ++$_SESSION['movies']; if ($_GET['music']) ++$_SESSION['music']; if ($_GET['books']) ++$_SESSION['books']; if ($_GET['sports']) ++$_SESSION['sports']; $_SESSION['comment'][] = $_GET['comment']; ++$_SESSION['total_cnt']; ?> 登録しました。さらに<A href="try4.html">入力する</A><br> これまでの集計結果を<A href="try4-3.php">表示する</A><br> </body> </html> ////////////////////////////////////////////////////////// try4-3.php <?php session_start(); ?> <html> <head><title>try4-3.php</title></head> <body> <?php echo "これまでにアンケートに応えたのは{$_SESSION['total_cnt']}人です。そのうち<br>"; if ($_SESSION['total_cnt']){ $male_rate = (int)($_SESSION['male'] / $_SESSION['total_cnt'] * 100); $female_rate = (int)($_SESSION['female'] / $_SESSION['total_cnt'] * 100); } else { $male_rate = 0; $female_rate = 0; } echo "男性:{$_SESSION['male']}人 $male_rate %<br>"; echo "女性:{$_SESSION['female']}人 $female_rate %<br><br>"; echo "趣味は映画:{$_SESSION['movies']}人、音楽:{$_SESSION['music']}人、読書:{$_SESSION['books']}人、" . "スポーツ:{$_SESSION['sports']}人<br><br>"; echo "意見:<br>"; foreach ($_SESSION['comment'] as $comment) echo $comment . "<br>"; ?> 集計を<A href="try4-1.php">初期化する</A><br> さらに<A href="try4.html">入力する</A><br> </body> </html> //////////////////////////////////////////////////////// とファイルが4つあるのですがセッション情報はどこに格納されているのでしょうか。TXTファイルでもなさそうなので教えて下さい。
- ブラウザにテーブルのレコードが表示されません
初めまして。 PHP初心者のものです。 CodeIgniterを使用して、MySQLのテーブルの一覧をブラウザ上で表示させていと思っています。ですが、画面は表示されるのですが、レコードの部分がまったく表示されず困っています。 よろしければご教授のほど、よろしくお願いいたします。 #controllers/helo.php <?php class Helo extends CI_Controller { function Helo() { parent::__construct(); } public function index () { $data = array ('head_title' => 'index', 'content' => 'index'); $data['records'] = $this->db->get('blogs')->result_array(); $this->load->view('layout/mylayout', $data); } } #views/index.php <h1>Blog一覧</h1> <p>テーブルの一覧です</p> <table> <tr> <th>ID</th> <th>DATE</th> <th>TITLE</th> <th>CONTENT</th> </tr> <?php foreach($records as $row): ?> <?= "<tr><td> {$row['id']} </td>" ?> <?= "<td>" . date ('Y/m/d', $row['timestamp']) . "</td>" ?> <?= "<td> {$row['title']} </td>" ?> <?= "<td> {$row['content']} </td></tr>" ?> <?php endforeach; ?> </table> #views/layout/mylayout.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <title><?= $head_title ?></title> <link rel="stylesheet" type="text/css" href="/igniterapp/css/mylayout.css" /> </head> <body> <table class="content_table"> <tr><td> <?php $this->load->view('layout/header.php'); ?> </td></tr> <tr><td> <?php $this->load->view($content); ?> </td></tr> <tr><td> <?php $this->load->view('layout/footer.php'); ?> </td></tr> </table> </body> </html> #views/layout/footer.php <p class="footer">this is Footer.</p> #views/layout/header.php <p class="header"> this is header.</p> #config/database.php $active_group = 'default'; $active_record = TRUE; $db['default']['hostname'] = 'localhost'; $db['default']['username'] = 'mysql'; $db['default']['password'] = 'password'; $db['default']['database'] = 'igniter_db'; $db['default']['dbdriver'] = 'mysql'; $db['default']['dbprefix'] = ''; $db['default']['port'] = '3306'; $db['default']['pconnect'] = TRUE; $db['default']['db_debug'] = FALSE; $db['default']['cache_on'] = FALSE; $db['default']['cachedir'] = ''; $db['default']['char_set'] = 'utf8'; $db['default']['dbcollat'] = 'utf8_general_ci'; $db['default']['swap_pre'] = ''; $db['default']['autoinit'] = TRUE; $db['default']['stricton'] = FALSE; ■環境 ・osはCentOS6.2です。 ・CodeIgniterのバージョンは2.1.2です。 ・PHPのバージョンは5.3.3です。 ・MySQLのバージョンは5.5.25です。 個人的には「$this->db->get('blogs')->result_array();」 の部分でテーブルの情報が取得されていないので、後のforeach文が実行されず終了しているのだと思うのですが、対処法がわからない状態です。(見当違いでしたら申し訳ございません) 分かりにくい文章で申し訳ございませんが、よろしくお願いいたします。
- ベストアンサー
- PHP
- ogikei1415
- 回答数4
- MYSQLにデータが送信されない
こんにちは PHPもDBも初心者です。 現在、(1)トップページにある画像のurlをcheck.phpに送信して、(2)DB内のimg_urlと照合し、(3)照合されたイメージにpointを1追加した後、(4)またトップページに戻るというプログラムを組もうとしてるのですが、うまくいきません。 ソースはこれです↓ ---------------------------------------------------------------------------------- index.php <?php $image = array( "img/img1.jpg", "img/img2.jpg", "img/img3.jpg", "img/img4.jpg", "img/img5.jpg", "img/img6.jpg", ); $image = $image[rand(0, count($image)-1)]; echo '<a href="./check.php?url='.$image.'"><img src="'.$image.'" alt=""></a>'; ?> ---------------------------------------------------------------------------------- check.php ---------------------------------------------------------------------------------- <?php mysql_connect('****','****','****')or die(mysql_error()); mysql_select_db('******')or die(mysql_error()); mysql_query('SET NAMES UTF-8'); $url = htmlspecialchars($_GET['url']); if( !$url == ' ') { mysql_query('UPDATE image SET point=point+1 WHERE img_url = "$url"')or die(mysql_error()); header ('Location: ./index.php'); exit(); } else { echo('画像の情報が送信されていません。'); } ?> ---------------------------------------------------------------------------------- まだまだわからないことだらけで、稚拙な内容だとは思いますが よろしくお願いします。
- cssのズレについて
cssのズレについて質問です。 うまく伝わるでしょうか・・・下記の構成でHPを作っています html\index.php html\header.html html\style.css html\about1\index.php html\about2\index.php html\about3\index.php html\about4\index.php ヘッダーとグローバルナビを共通化したいので各indexをphp化しheader.htmlをincludeしています。 ここまではどのファイルもデザインのズレは起こりませんが、 \about1~4の階層に新たに○○○.phpを追加すると全体的に右へ18pxズレてしまいます。 不審に思い、元々あるindex.phpをコピーしbody内だけを書き換えても右へ18pxズレてしまいます。 取りあえず新規追加したファイルはmargin-left:-18pxで囲んで凌いでますが 根本的な解決とは言えません。 ヘッダー内、cssと何一つ変更してないのにズレてしまうのはなぜでしょうか? 詳しい方、類似の事象が起きた方が居ましたらよろしくお願いします。
- ベストアンサー
- CSS
- mayomayo123
- 回答数2
- フォームでのオープンリダイレクト対策について
問い合わせフォームを作成したところ、セキュリティ監査に「オープンリダイレクタの脆弱性」の指摘を受けました。 その内容は「リダイレクトは同一ドメインのみ許可するようにしてください。」とのことでした。 構築した問い合わせフォームは index.php(入力フォーム) confirm.php(確認フォーム) に分かれており、 index.php内で、 <form method="post" action="confirm.php"> ・・・ </form> と記載しており、直接confirm.phpを呼び出しています。 上記状態で、リダイレクトは同一ドメインのみに・・・と言われても、出来ることといえば、confirm.phpで呼び出し元のURLが同一ドメインか確認するくらいしかできないと思うのですが、先方が懸念しているのは、index.phpからの遷移での飛び先の改ざんかと思われ、先の対応では意味がないのかと。 (index.php→http://akui.co.jp みたいな) この場合のオープンリダイレクト対策とはどうすれば良いのか、漠然とした質問で申し訳ありませんが、知恵をお借りしたく思います。 よろしくお願いいたします。
