2016-05-07 67 views
0

我有一个数据库 “媒体”表 “视频”从MySQL显示表中的所有行

CREATE TABLE IF NOT EXISTS `video` (
    `id` int(12) NOT NULL AUTO_INCREMENT, 
    `title` varchar(25) NOT NULL, 
    `link` varchar(255) NOT NULL, 
    PRIMARY KEY (`id`) 
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ; 

台视频中包含3个字段: ID, 标题, 链接(包含iframe和链接到视频)。

我想在mysql表中显示所有视频,但只显示第一个视频。

<?php 
$con=mysqli_connect("localhost","user","password","database"); 
// Check connection 
if (mysqli_connect_errno()) 
    { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
    } 

$result = mysqli_query($con,"SELECT * FROM video"); 

while($row = mysqli_fetch_array($result)) 
    { 
    $id = $row["id"]; 
    $videoiframe = $row["link"]; 
    } 
echo "{$videoiframe}"; 
?> 
+1

您将要覆盖的循环变量。您只能看到一个值,因为变量只包含一个值。 –

+0

正确地说gordon..echo它从循环或使用“$ videoiframe。=”和数组将被追加 –

+0

Foreach循环会解决这个问题吗? – gentlebreeze

回答

0

循环覆盖值为id and videoiframe。你需要它来定义数组和存储值

$array=array();// define array 

    while($row = mysqli_fetch_array($result)){ 
     $array[] = $row; // Inside while loop 
    } 
print_r($array);// get all value 

更新

while($row = mysqli_fetch_array($result)) 
    { 
    $user.=$row['link']."</br>"; 
    } 
echo $user; 
+0

已使用此,但它仍然无法正常工作。 – gentlebreeze

+0

已经尝试过。 --- $ result = mysqli_query($ con,“SELECT * FROM video”); $ array = array(); //定义数组 while($ row = $ row = mysqli_fetch_array($ result)) { $ array [] = $ row; //内部while循环 } print_r($ array); //获取所有值 ?> – gentlebreeze

+0

该表包含3个项目,但代码显示“Array([0] => Array([0] => 1和在iframes中的视频6-7次。 – gentlebreeze