検索結果
PHP
- 全てのカテゴリ
- 全ての質問
- php sqlでログイン認証システムについてです。
このようなソースを書いてログインシステムを書いています。 ここで接続はできたのですが、クエリーが失敗しましたと出てきます。 このソースをどのように修正すればよいのかアドバイスお願いできないでしょうか。よろしくお願いします。 <?php session_start(); $link = mysql_connect('localhost', 'root', 'root'); if (!$link) { die('接続失敗です。'.mysql_error()); } $db_selected = mysql_select_db('mydb', $link); if (!$db_selected){ die('データベース選択失敗です。'.mysql_error()); } mysql_set_charset('utf8'); // エラーメッセージの初期化 $errorMessage = ""; // ログインボタンが押された場合 if (isset($_POST["login"])) { // 1.ユーザIDの入力チェック if (empty($_POST["userid"])) { $errorMessage = "ユーザIDが未入力です。"; } else if (empty($_POST["password"])) { $errorMessage = "パスワードが未入力です。"; } // 2.ユーザIDとパスワードが入力されていたら認証する if (!empty($_POST["userid"]) && !empty($_POST["password"])) { // mysqlへの接続 $mysqli = new mysqli($db['localhost'], $db['root'], $db['root']); if ($mysqli->connect_errno) { print('<p>データベースへの接続に失敗しました。</p>' . $mysqli->connect_error); exit(); } // データベースの選択 $mysqli->select_db($db['mydb']); // 入力値のサニタイズ $userid = $mysqli->real_escape_string($_POST["userid"]); // クエリの実行 $query = "SELECT * FROM db_user WHERE name = '" . $userid . "'"; $result = $mysqli->query($query); if (!$result) { print('クエリーが失敗しました。' . $mysqli->error); $mysqli->close(); exit(); } while ($row = $result->fetch_assoc()) { // パスワード(暗号化済み)の取り出し $db_hashed_pwd = $row['password']; } // データベースの切断 $mysqli->close(); // 3.画面から入力されたパスワードとデータベースから取得したパスワードのハッシュを比較します。 //if ($_POST["password"] == $pw) { if (password_verify($_POST["password"], $db_hashed_pwd)) { // 4.認証成功なら、セッションIDを新規に発行する session_regenerate_id(true); $_SESSION["USERID"] = $_POST["userid"]; header("Location: main.php"); exit; } else { // 認証失敗 $errorMessage = "ユーザIDあるいはパスワードに誤りがあります。"; } } else { // 未入力なら何もしない } } ?>
- 【PHP】テキストファイル内の数字に加算する方法
PHPでカウンターを作ってみたんですが、たまに数字が勝手にリセットされて困っています。 $aa = file_get_contents("aa.txt"); $aa = $aa + 1; $aaTX = fopen("aa.txt", "w+"); fwrite($aaTX , $aa); fclose($aaTX ); という形にしてるんですが、おそらく複数の閲覧者が同時にアクセスしたときに、fopen("aa.txt", "w+")で真っ白になってるものをfile_get_contentsで読み込んでしまい、リセットされた形になってしまうのかなと。 これ、fopenを使わず、aa.txt内の数字に直接加算させる方法とかないのでしょうか? fopenはすでに記されているものの前後に文字列を加えるというようなことはできるようですが、書かれている数字に加算したり減算したりはできませんよね? 他に直接計算することができるような命令とかありますか? せめて、このリセットが防げるような方法だけでもあれば助かるのですが…。
- ベストアンサー
- PHP
- noname#250248
- 回答数2
- php自体のインストールも必要なのでしょうか?
phpを学習したいのですが XAMPPのインストールは終わったのですが http://www.standpower.com/php_environment2.html のようにphp自体のインストールも必要なのでしょうか? XAMPPの中にphpは含まれてませんか?
- ベストアンサー
- PHP
- yqywzhygpdjf
- 回答数1
- phpで出力したものをcssでデザイン
phpでサーバーから出した画像を縮小したいのですがうまくいきません。 ソース <?php print $disp_gazou2;?> どのように書けばよろしいのでしょうか 簡単なサンプルソースいただければ幸いです。
- ベストアンサー
- CSS
- a7a7a77a7a74
- 回答数6
- PHPの掲示板をwebにアップしたい
今晩は、PHPの掲示板(コメントと画像付)をwebにアップして、 会員同士(パスワードでアクセス)で使いたいと考えています。 フリーの掲示板で設定等の簡単なもので、使い勝手(せキュリティ、投稿記事の管理等) が良くて、設定等の簡単なものがあれば教えて下さい。 内容によっては有料でも止むを得ないと考えています。 合わせて、レンタルサーバーの情報も分かればありがたいです。 以上宜しくお願いします。
- ベストアンサー
- PHP
- westwest_2007
- 回答数2
- PHPのプログラミングの事について質問です。
一行掲示板に投稿者のみが行える投稿削除機能(パスワード付き)を出力させたいのですが、プログラミング初心者なので、下記のテキストに何を入力すればいいのかわからないので教えてください。 お願いします。 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>一行掲示板</title> </head> <body> <form id="x1" name="x1" method="post" action=""> <input type="text" id="naiyou" name="naiyou" size="20"> <input type="submit" value="書き込む"> </form> <hr> <?php //データファイルのファイル名 $filename='data.txt'; if(!empty($_POST['naiyou'])){ $data=file_get_contents($filename); $body=$_POST['naiyou']; $date=date('Y/m/d H:i:s'); $body="$body ($date)\n".$data; $fp=@fopen($filename,'w'); flock($fp,LOCK_EX); fputs($fp,$body); fclose($fp); } $data=file($filename); $line=count($data); for($i=0; $i<$line; $i++){ $no=$line-$i-1; echo "$no. $data[$i]<hr>\n"; } ?> </body> </html>
- 締切済み
- PHP
- ohayouarigatou
- 回答数9
- JavaScriptの変数をPHP側に渡せない理由
WordPressでサイトを作っている時、画面幅を取得してhtmlを出しわけたい部分がありました。 そこで、JQueryで画面幅を取得してその変数をPHP分で条件分岐したいと思ったのですが、 うまくいかず、クッキーや「wp_is_mobile()」関数で今のところ実現しています。 JavaScriptの変数をPHP側で直接使えないことはわかったのですが、その理由が詳しく知りたいです。 phpファイルに ------------------------------------------------ <script>var w = 600; </script> <?php if (w <= 600): ?> 600以上だった時の処理 <?php endif; ?> ------------------------------------------------- みたいな感じで使えたらいいのにとよく思うのですが、 PHPはサーバーサイドスクリプト言語だから、PHPであらかじめ処理されたものがクライアントに送られてきて、その時にJSが読みこまれるから順番的に使えない・・・・ということでいいんでしょうか。 調べようと思っても微妙にずばっとした回答のものがなく、質問しました。 解説サイトのURLとかでもよいので、よろしくお願いいたします。 プログラミングは初心者です。
- PHPで受ける文字コードは何に依存する?
例えばmb_convert_encoding()で変換するとき、元の文字コードは何に依存されるのでしょうか? フォームで送る場合は、フォームページのHTMLのでmetaタグに指定されている文字コードになるんでしょうか? charset=utf-8とmetaタグで指定されている場合、PHPのmb_convert_encoding()で受け取るときの変換前の文字コードはutf-8? データをutf-8で扱いたいとき、フォームページをcharset=utf-8で作っておけば、mb_convert_encoding()でわざわざutf-8に変換するようにしておかなくても大丈夫ですか?
- ベストアンサー
- PHP
- noname#235729
- 回答数2
- perlからphpに変数の値を渡したい
素人質問で恐縮です。 perlからphpに変数の値を渡す事は可能でしょうか。 同一サーバー内に、/hoge/aaaa.pmと/sample/bbbb.phpがあります。 置き場所はそれぞれで特に関連性はありません。 aaaa.pm内で定義した my $data = "あいうえお"; のような変数を、 bbbb.php内で受け取って使いたいです。 jQuery.ajaxでphpとjs間で変数の受け渡しが可能なのですが、 そんなイメージでやり取りできたらいいなと思っています。 難しい話であれば諦めます。 perlもphpも素人ですが、簡単なやり取りで済みそうなら取り入れたいです。 不明点などありましたら、ご質問ください。 よろしくお願いいたします。
- ベストアンサー
- Perl
- Search_tmp
- 回答数2
- PHP 5.2.xを使い続けても大丈夫?
PHP 5.2.xを使い続けること問題になることを教えて下さい。 主にセキュリティ面でバージョンを上げるだけで回避できるものなどお願いします。
- PHPでJSONデータへのアクセスについて
15年前にC言語を少し学び、以後はVBA等のスクリプト言語をたまにかじっている程度の初級者です。 PHPは今回初めて触ります。 AmazonのサジェストAPIでキーワードを取得しようと試みてみました。 http://completion.amazon.co.jp/search/complete?method=completion&search-alias=aps&mkt=6&q=キーワード このURLにキーワードを放り込むとJSONデータが帰ってきます。 例:キー [ "キー", [ "キーボード", "キーケース", "キーホルダー", "キーケース レディース", "キーケース メンズ", "キーリング", "キースへリング", "キーボード bluetooth", "キーボード 楽器", "キーカバー" ], [ { "nodes": [ { "alias": "computers", "name": "パソコン・周辺機器" }, { "alias": "electronics", "name": "家電&カメラ" }, { "alias": "mi", "name": "楽器" } ] }, {}, {}, {}, {}, {}, {}, {}, {}, {} ], [] ] ■■コード1 予測変換の取得 $text = "キー"; $url = 'http://completion.amazon.co.jp/search/complete?method=completion&search-alias='.$s_alias.'&mkt=6&q='.urlencode($text); $json = file_get_contents($url); $data = json_decode($json,true); foreach( $data[1] as $x){ $x = str_replace( $text , " " , $x); print $x; } このコード1で変換予測まではなんとかアクセス出来ました。 しかし、『nodes』の『name』と『alias』へアクセスするにはどういうコードを書けばアクセスできるか分からず詰まっています。 PHPもJSONも連想配列もよく分かって居ないため、 どの情報へアクセスすれば良いのかわからず数日右往左往してました。 詳しい方、『nodes』の『name』と『alias』へのアクセスの仕方をよろしければご教示下さいませ。
- 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> ・ ・ ・ ・ 条件を指定したときに初期値を設定したいです。どのように実装すればいいでしょうか。 よろしくいお願いします。
- PHPのレンタルサーバーのコア数の影響は?
プログラムの組み方は、CPUのコア数を考慮しないで組んでいるのですが、コア数例えば、i7などのCPUを契約した場合、大量にアクセスがあった場合にレスポンスが良くなる事もあるのでしょうか?当然システムメモリ、HDD容量、回線スピードも影響がある前提です。
- ベストアンサー
- その他(パソコン)
- phphajimeta
- 回答数1
- phpなどを使ったホームページ作成について
wordpressとPHPを使用したホームページ作成について質問があります 現在ホームページ制作の勉強をしています。 主な勉強目的 (1)wordpress内のテンプレートを編集(PHP内)して思い通りの物が作れるようになりたい (2)自作したホームページをwordpressにアップして使えるようにしたい (3)wordpressなしでJavaやPHPを使用したホームページを作りたい (4)可能であればショッピング機能も自作したい 以上の4点がとりあえずこなせるぐらいになりたいのです。 そこで質問なのですが ○この4点をこなせるようになるにはPHPをまず勉強した方がいいのでしょうか? ○wordpress内のPHPとwordpressなしのPHPとではなにやら使用が違っているように見えたのですが同じなのでしょうか? ○違う場合wordpressのPHPから勉強したほうがいいですか? ○ショッピング機能を自作したい場合どういったことを勉強すればいいのでしょうか? 普通にホームページは作成したことがあるのですがPHPは初心者です。 回答よろしくお願いします
- PHPのcurlの結果が展開されない
PHPのcurlやsnoopyといったライブラリを使用して、外部サイトと自動で連携できるようなツールをつくりたいと思っています。 自動でログインさせるところまではできたのですが、ログイン後遷移したページの結果文字列(html)がテンプレートファイルのまま返ってきてしまっており、内容が取得できません。 結果の文字列は <script type="text/x-handlebars-template"> ~ </script> で囲まれており、中身は <div class="header"> <div class="header_aa"> {{#user}}{{> profile}}{{/user}} </div> などとなっており、テンプレートファイルの記述のままで、変数が展開されていない状態です。 欲しいのはこれが展開(解釈)された後の結果文字列です。 名前からしてhandlebars.jsのテンプレートファイルを使用しているのは分かるのですが、なぜこれは展開されないのでしょうか? PHPプレーンのcurlでアクセスしても、snoopyを使用してアクセスしても結果は同じです。 オプションでもこれを解決するようなものが見当たらず、行き詰まっております。 どうすれば展開後の結果が取得できるのか、ヒントがあれば教えて下さい。 なにとぞよろしくお願い致します。
- phpでcontinueはなぜ1文字スキップするん
phpでcontinueはなぜ1文字スキップするんでしょうか?スキップするならcontinueじゃなくてskipですよね?3になったらskip <?php for($i = 0; $i <= 4; $i ++){ if($i == 3) { continue; } echo $i."\n"; } ?>
- PHP初心者です。コード内容を教えてください。
PHP初心者なので以下のコードをお教えいただき たいです。これは改行について解説しているところに 出てきた例文です。 質問1 コードの1を実行した結果がブラウザ表示だと改行なし ソース表示だと改行ありで表示されるのですが、それがよく わかりません。'で文字列を囲うとそのまま出力されるため htmlで<br>されないというのはわかるのですが、ソース 表示が改行されているのが分かりません。ソースで改行 するには/(逆)nやPHP_EOLを使わなければ改行できないので はないでしょうか? (PHPコード1) $str = '改行を削除して処理します。<br> ダブルクオートじゃないと改行文字は扱えません。'; $str = str_replace(array('<br>','', '$str); echo $str; 質問2str_replace関数がありますが、この手のわからない 関数をリファレンスで引くと str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] ) : mixed のように説明には書いているのですが、str_replace("2","3","1"); 1の中の2すべてを3に置き換える。これはわかります。しかし、 説明例文に記載のmixedやら[, int &$count ] ) : mixedはよくわかりません これは何なのでしょうか? 長くなりましたがどうか回答お願いします。
- ベストアンサー
- PHP
- kenyanakase
- 回答数1
- phpでechoというのはなんですか?
phpでechoというのはPythonでいうprintと同じものですか? あと、echoってどういう意味ですか?printはなんとなく出力するとわかりますが なんでechoなんでしょうか?
- phpのルールを教えて下さい $x=20; i
phpのルールを教えて下さい $x=20; if($x >10){ echo "$xは10より大きい"; } ifの後の()まるかっこと{}波括弧はどういう規則でつけるんですか?
- PHP、MySQL開発環境 普段使用のPCで大丈夫
開発環境としてXAMPPを自分のPCに入れて使っていたのですが、PHPとMySQLなどをレンタルサーバと合わせたいと思ったときにXAMPPはいろいろ面倒そうなので、直接PHPとMySQLをインストールした方が後々楽なのかなと思うようになりました。 インストールの仕方は調べている最中なんですが、問題はインストールするPCです。 これって普段使ってるPCに入れてしまって特に支障はないでしょうか? 常にPHPとMySQLが動き続けてるせいで、ゲームとか他のソフトに支障が出るとか。 XAMPPのように使っていないときはOFFにするとかできるのでしょうか? そういえば以前の職場で特定のコンテンツを使うときだけ、Windowsのサービスマネージャー?でApacheとTomcatをONにするという手順があったのですが、この辺でONとOFFを切り替えるのかな? ApacheってPHPを使うためのソフトですよね? どうなんでしょう?
- 締切済み
- その他(プログラミング・開発)
- noname#250248
- 回答数4
