2016-01-06 177 views
-2

我是一個總的noob在PHP中,也談到如果while循環條件。請耐心等待。首先,我有兩張桌子。我打算從右表(子表)顯示特定的行,但是卻以奇怪的方式顯示了從左(父)和右表(子)中的所有行,因爲如果我在會話中回顯結果,它只會顯示右表第一行。但是在做了一些細微的修改之後,我可以得到結果,但是我可以從左右兩個表中獲得所有結果。我首先道歉,如果我的問題聽起來很愚蠢或不符合主題。我只是想不出一個恰當的問題。任何幫助將非常感激。 TQ。而循環條件

下面是摘錄腳本;

//呼籲從表用戶和表useradvert記錄,加入

$query = "SELECT u.*, ua.* FROM users u INNER JOIN useradvert ua ON u.users.id = ua.useradvert.id"; 

$stmt = $conn->prepare($query); 
$stmt->execute(); 
$res = $stmt->get_result(); 
$row2 = $res->fetch_array(); 



$_SESSION['name2'] = $row2['name2']; 
$_SESSION['color2'] = $row2['color2']; 
$_SESSION['hobby2'] = $row2['hobby2']; 
$_SESSION['radiobtn'] = $row2['radiobtn']; 
$_SESSION['kupon'] = $row2['kupon']; 
$_SESSION['image'] = $row2['image']; 
$_SESSION['image2'] = $row2['image2']; 

繼續下面的提取物;

 $output = array(); 
while($row2 = $res->fetch_array()) { 
$output[] = $row2; 
} 
+0

我不明白爲什麼有些人downvote我的問題的輸出?當某些情況或問題都不相同並且需要特定和不同的處理時。 –

回答

1

SQL:

SELECT u.*, ua.* FROM users u INNER JOIN useradvert ua ON u.id = ua.id 

PHP的一部分建議

你需要輸出它們在一個循環或將它們以不同的方式在$_SESSION陣列存儲,否則就會被覆蓋它們將它們反覆設置爲$_SESSION陣列。

編輯

$output = []; 
while($row = $res->fetch_array()) { 
    $output[] = $row; 
} 

然後格式化在正確的地方

+0

tqs @Sergey Shcherbin。你有沒有任何想法如何循環或存儲他們在不同的方式?我很感謝你的幫助。 –

+0

@ ml2請檢查更新的答案,如果你覺得它有用upvote。 –

+0

嗨@謝爾蓋謝爾賓。請耐心等待。 $ output = [];我得到語法錯誤; –