2017-08-23 8 views
-1

私はfunction内のwhileループからすべての結果を得るのに問題があります。関数の結果を5-10の代わりにちょうど1つの結果として出力します。私need.Thereコードです:whileループからのすべての結果を取得する方法

function display_post_edits($post_id,$post_name){ 
 
\t global $connect; 
 
\t $result = array(); 
 
\t $rev = sanitize('revision'); 
 
\t $post_name = '$post_id-revision-v1'; //sanitize this soon!! 
 
\t $query = mysqli_query($connect,"SELECT post_author,post_date FROM posts WHERE post_type ='$rev' AND post_name = '$post_id-revision-v1'"); 
 
\t while ($row = mysqli_fetch_assoc($query)){ 
 
\t \t $result[]= $row; 
 
\t } 
 
    return $result; 
 
} 
 
//outside of function 
 
$display_edits = display_post_edits(get_post_id($_POST['subject']),$_POST['subject']); 
 
print_r($display_edits);

だから私は、whileループからの結果の全てを取得し、$ display_editsに添付しようとしていると私は一例ポスト日付に必要がある場合私は$ display_edits ['post_date']を使用します。

私の試みのいくつかは今のところあります foreach($result as $row){ return implode($result[0]); }

戻り値1つの結果は、$リターンがhttp://prntscr.com/gby0xu(配列の配列)のような配列を印刷しているので、私は破でindex.Sameのものを定義する必要があり、私が定義する必要があるためインデックス。

while ($row = mysqli_fetch_assoc($query)){ 
    $result = array(
    'post_author' =>$row'post_author', 
    'post_date' =>$row'post_date' 
    ); 
    } 

プリントのみ1結果再び...私はそれを追加します何と言ってください あなたはより多くの何が必要な場合、または私はここで与えるために何かを逃しました! ありがとうございます!

+0

$result?もしそうであれば、配列を返して後で処理する 'while()'ループで同じことを行うことができます。 –

答えて

1

あなたforeachは次のようにする必要があります:

foreach($result as $row){ 
    return implode($row[0]); 
} 

それは$rowを使用する必要がありますし、 `post_author`と` post_author`に参加することを計画していない

+0

まだ結果が1つのみ返されます。/ –

+0

すべてのレコードに対して「返す」ことができます。これをマージ/ジョインすることができます。 –

+0

yaap、私の悪い私は$行だけを使用し、それは文字列のすべての情報を返すhttp://prntscr.com/gbyledありがとう –

関連する問題