質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

XAMPP

XAMPP(ザンプ)は、ウェブアプリケーションの実行に必要なフリーソフトウェアをパッケージングしたApacheディストリビューションです。 XAMPPひとつインストールするだけで、Apache、MySQL、PHP、Perlなどのソフトウェアと、 phpMyAdminなどの管理ツール、SQLiteなどのソフトウェアやライブラリモジュールなどを利用することが可能です。

Q&A

解決済

1回答

975閲覧

PHPでパスワードジェネレーターを作成中にエラーが出ました

Hayao819

総合スコア34

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

XAMPP

XAMPP(ザンプ)は、ウェブアプリケーションの実行に必要なフリーソフトウェアをパッケージングしたApacheディストリビューションです。 XAMPPひとつインストールするだけで、Apache、MySQL、PHP、Perlなどのソフトウェアと、 phpMyAdminなどの管理ツール、SQLiteなどのソフトウェアやライブラリモジュールなどを利用することが可能です。

0グッド

0クリップ

投稿2018/07/27 04:33

前提・実現したいこと

PHPの練習のためにパスワードを生成するサイトを作っています
桁数が自然数かどうか、存在すしているかどうかのコードを加えたところ、エラーが出たのですが原因がわかりません
よろしくおねがいします

発生している問題・エラーメッセージ

{ "resource": "/c:/xampp/htdocs/password/password.php", "owner": "_generated_diagnostic_collection_name_#3", "code": "undefined", "severity": 8, "message": "syntax error, unexpected ';'", "startLineNumber": 39, "startColumn": 29, "endLineNumber": 39, "endColumn": 1.7976931348623157e+308 }
{ "resource": "/c:/xampp/htdocs/password/password.php", "owner": "_generated_diagnostic_collection_name_#0", "code": "undefined", "severity": 8, "message": "'}' expected.", "source": "php", "startLineNumber": 39, "startColumn": 72, "endLineNumber": 39, "endColumn": 72 }
{ "resource": "/c:/xampp/htdocs/password/password.php", "owner": "_generated_diagnostic_collection_name_#0", "code": "undefined", "severity": 8, "message": "Unexpected 'else'", "source": "php", "startLineNumber": 43, "startColumn": 23, "endLineNumber": 43, "endColumn": 23 }
{ "resource": "/c:/xampp/htdocs/password/password.php", "owner": "_generated_diagnostic_collection_name_#0", "code": "undefined", "severity": 8, "message": "Unexpected '}'", "source": "php", "startLineNumber": 48, "startColumn": 17, "endLineNumber": 48, "endColumn": 17 }

該当のソースコード

PHP

1 <?php 2 3 function sizensuu($val) { 4 return ctype_digit(filter_var($val)); 5 } 6 7 for ( $x = 1 ; $x <= $_GET['KOSUU'] ; $x += 1) { 8 if ($_GET['KETA'] <= 9999999) { 9 if (sizensuu($_GET['KETA']) == true) { 10 $MOJI = array('0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'); 11 $password = $MOJI[rand(0, 61)]; 12 for ( $i = 2; $i <= $_GET['KETA'] ; $i++) { 13 $password = $password . $MOJI[rand(0, 61)]; 14 } 15 print ("<textarea>"); 16 print ($password); 17 print ("</textarea>"); 18 } elif ( isset($_GET['KETA']) ) { 19 print ("桁数を入力してください"); 20 } else { 21 print ("桁数は自然数で指定してください"); 22 } 23 } else { 24 print ($_GET['KETA'] . "桁は大きすぎます"); 25 print ("<br>"); 26 print ("桁数は最大、9999999桁までです"); 27 } 28 } 29 30 ?>

試したこと

一応、自分でもチェックしたのですが原因がわかりませんでした

補足情報(FW/ツールのバージョンなど)

PHP7
Windows10 1803
Xampp 最新版

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/07/27 04:39

《エラーが出た》とのことですが、肝心のエラーメッセージはどうでしたか? またhttpdのerror_logにもエラー情報が出ているので、そちらもチェックしてください。C:\xampp\apache\logs にあると思います
Hayao819

2018/07/27 04:43

素早いコメント ありがとうございます VisualStudioCodeで作成している際にエラーが出たのでそのエラー内容を載せてあります そちらの方の"message"にエラー内容があります すでに知っていたらすみません
terrace

2018/07/27 04:49

コード見る限りelifとかあるので、syntaxレベルの間違いを取り除いてからにした方がよいかと
guest

回答1

0

ベストアンサー

elif じゃなくて elseif

投稿2018/07/27 04:52

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問