2016-07-28 4 views
0

私はこのウェブサイトのHTMLページ(.phpファイル)を持っていて、ある時点で私はこのPHPスクリプトを持っています(問題は入力欄のonclick属性を見てください)。ポストで。ボタンが押されたとき、私は、ブラウザの中にコードに私のテキストエディタでコードを比較するまで、ボタンが正しく表示され ブラウザで実行中に文字が置換/削除されますか?

<?php 
    require $_SERVER["DOCUMENT_ROOT"]."my-site/Database/db_connection.php"; 
    /*Some code was here.*/ 
    while($Student=$Result->fetch_row()){ 
     echo "<input class='Content_Link' id='".$Student[0]."' type='button' value='".$Student[1]." ".$Student[2]."' onclick='redirecter('.''.')'/>"; 
    } 
/*normally a url would be passed into redirecter. To simplify the code during debugging, 
I have removed the url*/ 
    mysqli_free_result($Result); 
    $Conn->close(); 
    /*a little more code*/ 
?> 

は、しかし... は、私は、予期しないトークン}、むしろ簡単なエラーが出ます開発者用ツール

さらに、PHPスクリプト内のすべての{}ペアと、スクリプト内のすべての必須/インクルードファイル(3回以上)を完全にチェックした後、予期しないトークンに対処します。すべてのペアが考慮され、完了します。余分な括弧は見つかりませんでした。

これまでのところ、私はMicrosoftのウェブサイト、Google Chrome、Firefoxでウェブサイトを試してみました。彼らはすべてのonclick属性で奇妙なことを示している。

テキストエディタ -

<input class='Content_Link' id='".$Student[0]."' type='button' value='".$Student[1]." ".$Student[2]."' onclick='redirecter('.''.')'/> 

(:)

<input class='Content_Link' id='2' type='button' value='Tyler Breau' onclick='redirecter('.''.')'/> 

Chromeで直接配置phpの値を持つ -

<input class="Content_Link" id="2" type="button" value="Tyler Breau" onclick="redirecter(" .''.')'> 

Firefox -

<input id="2" class="Content_Link" value="Tyler Breau" onclick="redirecter(" .''.')'="" type="button"></input> 

マイクロソフトエッジ(それらすべての最も奇妙な) -

<input class="Content_Link" id="2" onclick="redirecter(" type="button" .''.')'="" value="Tyler Breau" /> 

違い:

onclick='redirecter('.''.')'/> 

でブラウザの開発者向けツールは、一般的な違いを以下のようにこれを

が表示されます。

onclick="redirector(" .''.')'> 

最初の一重引用符: 'は大括弧で囲まれ、二重引用符で囲まれ、スペースが続きます。 "さらに、入力タグを終了するためのスラッシュが削除されています。側面のボタン 『:『もっとファンキーなタイプ=を置くことによって、

"redirecter(" .''.')'="" 

とMicrosoftエッジredirecterの最後に』』 =>

Firefoxは追加することで、よりファンキーな少しだ「/>は」となりますリダイレクタブラケット:

"redirecter(" type="button" .''.')'="" 

私の質問...世界はどうなっていますか? 3

のApache 2.4

崇高:あなたも...

プログラム/バージョン/など私が使用しています。このデバッグを開始するにはどうすればよいです。17(http://www.wampserver.com/en/からパッケージ内のすべての)

PHP 7

HTML5

完全なPHPスクリプト:

が含まれており、必要なコードをコメントアウトに包まれは、(スタート)と '末端に含める]または'End Require'(終了)。 PHPスクリプトの最初に例があります。このコメントにSTXによって示唆されるように

<?php 
    //include $_SERVER["DOCUMENT_ROOT"]."my-site/General/get_user_type.php"; 
     require $_SERVER["DOCUMENT_ROOT"]."my-site/Database/db_connection.php";//No brackets are present in file 
     if(!(isset($_SESSION))){ 
      session_start(); 
     } 
     $Result=mysqli_query($Conn, "SELECT Type FROM user_accounts WHERE ID=".$_SESSION["uid"]); 
     $Type=$Result->fetch_object()->Type; 
     mysqli_free_result($Result); 
     $Conn->close(); 
    //End include 
    if($Type === "Admin"){ 
     echo "<div class='Sub_Content' id='div_Student_List'> 
       <p class='Sub_Content_Title'> Student List </p> 

       <input class='Content_Link_Viewer' id='btn_Student_List' type='button' value='show' name='div_Students' onclick='displayContent(this.id, this.value)'/> 
       <p class='Content_Link_Describer'> - Students </p><br/> 
       <div class='Content_Link_Holder' id='div_Students'>"; 
        //require $_SERVER["DOCUMENT_ROOT"]."my-site/Home_Page/student_list.php"; 
         require $_SERVER["DOCUMENT_ROOT"]."my-site/Database/db_connection.php";//No brackets are present in this file 
         $Result=mysqli_query($Conn,"SELECT Class_Code FROM user_accounts WHERE ID=".$_SESSION["uid"]); 
         if($Result===false){ 
          $Conn->close(); 
          $Student_List="Oops! Failed to get Student List"; 
         }else{ 
          $Class_Code=$Result->fetch_object()->Class_Code; 
          mysqli_free_result($Result); 
          $Result=mysqli_query($Conn,"SELECT Student_ID, Student_First_Name, Student_Last_Name FROM student_list WHERE Class_Code='$Class_Code'"); 
          if($Result===false){ 
           $Conn->close(); 
           $Student_List="Oops! Failed to get Student List"; 
          }else{ 
           while($Student=$Result->fetch_row()){ 
/*Problem button here*/    echo "<input class='Content_Link' id='".$Student[0]."' type='button' value='".$Student[1]." ".$Student[2]."' onclick='redirecter('.''.')'/>"; 
           } 
           mysqli_free_result($Result); 
           $Conn->close(); 
          } 
         } 
        //End Require 
     echo "</div> 
      </div>"; 
    } 
?> 
+0

これは次のようになっています: 'redirecter( '。' '。')'?それはそれ自身でファンキーです。 – beerwin

+0

URLはそこにある投稿です、私はそれを簡素化するためにURLを削除しました。その小さなメモxDを追加するのを忘れました。今すぐやるよ。 – Tyler

+1

エスケープした二重引用符 'onclick = \"リダイレクト(\ "\"。\ ")\" 'を使用してください。 – sTx

答えて

関連する問題