0

我正在尝试将事件的标题(摘要)和日期(创建)存储在数组中。但我认为我在循环中遗漏了一些东西。

<?php
$summary = array();
$date = array();

mysql_connect('mysql.server', 'myUsername', 'myPass') or die('Could not connect: ' . mysql_error());
mysql_select_db("mxgsite") or die(mysql_error());
$query_summary = mysql_query('SELECT summary FROM event_info') or die(mysql_error());
$query_date = mysql_query('SELECT created FROM event_details') or die(mysql_error());

$row_summary = mysql_fetch_array($query_summary);
$row_date = mysql_fetch_array($query_date);

$i = 0;
while(($row1 = mysql_fetch_array($query_summary))) {
    $row2 = mysql_fetch_array($query_date);
    $summary[] = $row['summary'];
    $date[] = $row['created'];
    echo $summary[$i] . " " . $date[$i] . "<br ?>";
    $i++;
}

我知道我正在获取值,因为我可以回显 1 个值,但是如果我想将所有值放在一个数组中并尝试回显该数组,我会不断得到空白值吗?

4

1 回答 1

4

在我看来,您在这里尝试做的事情太多了。由于 2 组值没有以它们相互关联/链接的方式存储,因此您不妨在单独的 while 循环中处理它们。尝试这样的事情:

 while ($row = mysql_fetch_array($query_summary)){
     $summary[] = $row[0];
 }
 while ($row = mysql_fetch_array($query_date)){
     $date[] = $row[0];
 }

如果您想关联表格,根据上面的评论,您可以尝试更多类似的东西:

$result = mysql_query('SELECT a.eventid, a.summary, b.created 
                         FROM event_info a 
                         join event_details b 
                         on a.eventid = b.eventid');

$events = array();

while ($row = mysql_fetch_array($result)){
    $event = array();
    foreach ($row as $key=>$value){
      $event[$key]=$value;
    }
    $events[] = $event;
}
于 2012-04-26T00:05:22.133 回答