2012-02-13 67 views
1

我想,這樣的第一個結果確定第二個的輸出使用下面的腳本。獲得兩個腳本共同努力

<? 
$db = mysql_connect('localhost','username','pass') or die("Database error"); 
mysql_select_db('dbname', $db); 

$query = "SELECT pool FROM winners"; 
$result = mysql_query($query) or die(mysql_error()); 

while ($row = mysql_fetch_array($result)) 

if ($row['pool'] % 2) 
{ 
echo "<h4>Result 1</h4>"; 
echo "<br />"; 
} 
else 
{ 
echo "<h4>Result 2</h4>"; 
echo "<br />"; 
} 
?> 


<?php 

$db = mysql_connect('localhost','username','pass') or die("Database error"); 
mysql_select_db('dbnamesameasother', $db); 


$query2 = "SELECT * FROM comments"; 
$result2 = mysql_query($query2); 

while ($row2 = mysql_fetch_assoc($result2)) 

if ($row2['commentid'] % 2 ==0) 
{ 
echo $row2['name']; 
echo "<br />"; 
} 
else 
{ 
echo $row2['name']; 
} 
?> 

如果第一個腳本選擇結果1所以基本上我只想回音聯想與結果的名稱。這些名字通過紀念相關聯,如果奇怪的紀念是結果2,甚至紀念是結果1.有沒有辦法做到這一點,而不使用工會聲明?

+0

爲什麼你不能只使用一個腳本?最後,它被編譯爲一個單一的腳本。 – Shoe 2012-02-13 19:40:11

+1

聽起來更像是一個數據庫/ SQL問題,而不是一個PHP /腳本問題 – leon 2012-02-13 19:43:27

+0

我在同一個數據庫中查詢2個不同的表。是否可以將它寫成一個腳本並執行此操作?對不起,我剛剛開始寫一個星期前的PHP。 – user1206214 2012-02-13 19:52:31

回答

0

它建議你創建一個函數,然後調用it.something這樣的:

<?php 
$db = mysql_connect('localhost','username','pass') or die("Database error"); 
mysql_select_db('dbname', $db); 

$query = "SELECT pool FROM winners"; 
$result = mysql_query($query) or die(mysql_error()); 

while ($row = mysql_fetch_array($result)) 

if ($row['pool'] % 2) 
{ 
echo "<h4>Result 1</h4>"; 
$names = get_names(1); 
    foreach ($names as $name) { 
    echo $name . "<br/>"; 
    } 
} 
else 
{ 
echo "<h4>Result 2</h4>"; 
$names = get_names(0); 
    foreach ($names as $name) { 
    echo $name . "<br/>"; 
    } 
} 

Function get_names($pool_result) 
{ 
    $name_array = array(); 
    $db = mysql_connect('localhost','username','pass') or die("Database error"); 
    mysql_select_db('dbnamesameasother', $db); 

    $query = "SELECT * FROM comments WHERE commentid % 2 = $pool_result"; 
    $result = mysql_query($query); 

    while ($row = mysql_fetch_array($result)) 
    { 
    array_push($name_array , $row['name']); 
    } 
    return $name_array; 
} 
?> 

} 
+0

我喜歡這個想法,但它給了我錯誤解析錯誤:語法錯誤,第117行出現意外的'}',我沒有看到你的代碼出現了什麼問題。第117行是返回$ name_array後的一行; – user1206214 2012-02-13 20:43:07

+0

'而($行= mysql_fetch_array($結果))'應該是:'而($行= mysql_fetch_array($結果)){' – Blake 2012-02-13 20:46:16

+0

由於布雷克,即固定的分析錯誤。但是我得到的唯一的輸出是「RESULT1' 或‘結果2’,這是工作正常,但它輸出的名稱仍是部分的結果是行不通的。 – user1206214 2012-02-13 20:59:08