2016-11-27 31 views
-1

私のウェブサイトの新しいアカウントのアクティベーションキューで作業しています。システムは、新しいアイテムのアカウントの詳細を含む別のアレイとして各アイテムを含むアレイを繰り返し実行し、アレイの各アイテムをユーザーに表示して、管理者がアカウントを承認または拒否できるようにします。配列のすべての情報をPHPファイルに集めましたが、最初のアカウントの詳細をJavascriptに戻して表示する必要があります。現在私が試しているコードはうまくいきませんが、Chromeの開発コンソールやサーバーのディレクトリにエラーは表示されません。誰かが私のコードを見て自分の運を知っているので、誰かが自分の目でスキャンすることができれば、それはとても分かりやすいでしょう。それは、私がJSONを完全に理解していないからです。前もって感謝します。JSON配列をJavascriptにデコードする

<?php 
session_start(); 

require "classes.php"; 
$TF = new TF_Core(); 

$ActQueueQuery = "SELECT username, surname, forename, joined FROM users 
WHERE rank = 'Unactivated'"; 

if ($statement = TF_Core::$MySQLi->DB->prepare($ActQueueQuery)) { 
    $statement->execute(); 
    $results = $statement->get_result(); 
} 

if($results->num_rows == 0){ 
    $data = 1; 
    echo $data; 
} 
else{ 
    $_SESSION["ActQueue"] = array(""); 

    while($row = $results->fetch_assoc()){ 
     array_push($_SESSION["ActQueue"], array($row["username"], $row["surname"], $row["forname"], $row["joined"])); 
    } 
    $data = 0; 
    echo json_encode(['Surname'=>'$_SESSION["ActQueue"][1][0]','Forename'=>'$_SESSION["ActQueue"][0][1]','Username'=>'$_SESSION["ActQueue"][0][2]','Joined'=>'$_SESSION["ActQueue"][0][3]']); 
} 
?> 

Javascriptを:

function ActQueueRefresh(){ 
     $.post('../functions/php/fncactqueuerefresh.php', {}, function(data) { 
      var returnValue = JSON.parse(data); 
      if (data == 0){ 
       $('#divQueueError').html(''); 
       $("#spnSurname").text(returnValue['Surname']); 
       $("#spnForename").text(returnValue['Forename']); 
       $("#spnUsername").text(returnValue['Username']); 
       $("#spnJoined").text(returnValue['Joined']); 
       $('#divQueueError').text(''); 
      } 
      else if (data == 1){ 
       $("#spnSurname").text(''); 
       $("#spnForename").text(''); 
       $("#spnUsername").text(''); 
       $("#spnJoined").text(''); 
       $('#divQueueError').html('<p class="text-center text-danger bg-danger" id="pUPInc">There are no accounts pending activation!</p>'); 
      } 
     }); 
    } 

http://thomas-smyth.co.uk/admin/activationqueue.php

+0

JavaScriptはどこですか? – Chris

+0

@Chris、私は今私のポストにそれを追加しました。 –

答えて

1

動作するはずです:(あなたは、単一引用符で変数を囲んだ、)にforName前(forenameの入力を間違えた)

<?php 
session_start(); 

require "classes.php"; 
$TF = new TF_Core(); 

$ActQueueQuery = "SELECT username, surname, forename, joined FROM users 
WHERE rank = 'Unactivated'"; 

if ($statement = TF_Core::$MySQLi->DB->prepare($ActQueueQuery)) { 
    $statement->execute(); 
    $results = $statement->get_result(); 
} 

if($results->num_rows == 0){ 
    $data = 1; 
    echo $data; 
} 
else{ 
    $_SESSION["ActQueue"] = array(); 

    while($row = $results->fetch_assoc()){ 
     array_push($_SESSION["ActQueue"], array($row["username"], $row["surname"], $row["forename"], $row["joined"])); 
    } 
    $data = 0; 
    echo json_encode(['Surname'=>$_SESSION["ActQueue"][0][1],'Forename'=>$_SESSION["ActQueue"][0][2],'Username'=>$_SESSION["ActQueue"][0][0],'Joined'=>$_SESSION["ActQueue"][0][3]]); 
} 
?> 
+0

良い点。私はあなたが言ったことに行動しましたが、それでも動作しません。これ以上の提案はありますか? $ row ["name"]、$ row ["surname"]、$ row ["forename"]、配列($ row) ]、$ row ["joined"])); } $ data = 0; \t echo json_encode(['Username' => $ _ SESSION ["ActQueue"] [0]、[Surname] => $ _ SESSION ["ActQueue"] [1]、 'Forename' => $ _SESSION ["ActQueue"] [0] [2]、 '結合' => $ _ SESSION ["ActQueue"] [0] [3]]); ' –

0
<?php 
session_start(); 

require "classes.php"; 
$TF = new TF_Core(); 

$ActQueueQuery = "SELECT username, surname, forename, joined FROM users 
WHERE rank = 'Unactivated'"; 

if ($results = TF_Core::$MySQLi->DB->query($ActQueueQuery)) { 
    if($results->num_rows == 0){ 
     $data = 1; 
     echo $data; 
    } 
    else{ 
     $_SESSION["ActQueue"] = array(); 

     while($row = $results->fetch_assoc()){ 
      array_push($_SESSION["ActQueue"], array($row["username"], $row["surname"], $row["forename"], $row["joined"])); 
     } 
     $data = 0; 
     echo json_encode(['Username'=>$_SESSION["ActQueue"][0][0], 'Surname'=>$_SESSION["ActQueue"][0][1],'Forename'=>$_SESSION["ActQueue"][0][2],'Joined'=>$_SESSION["ActQueue"][0][3]]); 
    } 
} 
?> 

セ私はドイツの友人の助けを借りて仕事をすることに成功しました。

関連する問題