2013-03-20 2 views
-2

Я создал таблицу (тест) в базе данных. теперь я получил массив в php, как это.Передача массива php в массив javascript

$sql="SELECT * FROM test;"; 
    $result=mysqli_query($con,$sql) or die("invalid query ".mysqli_error($con)); 
    while($row=mysqli_fetch_array($result)) 
    { 
    echo $row['name']; 
    } 

Теперь я хочу передать этот массив в массив javascript.

var images=["$row[0]","$row[1]","$row[2]"];// Is that coreect way to pass php array into js array? 

Если нет, то какой правильный способ передать массив php в массив javascript.

+2

Что заставляет вас думать, что это неправильный путь? Вы получили сообщение об ошибке? –

ответ

1
<?php 
$mysqli = new mysqli("localhost", "username", "password", "database_name"); 

$query = "SELECT * FROM test;"; 
$result = $mysqli->query($query); 

while($row = $result->fetch_array()) 
{ 
    $rows[] = $row; 
} 
?> 

<script> 
    var images = [<?=implode(',', $rows);?>]; 
</script> 
0

таким образом:

var images=["<?php echo $row[0]; ?>", "<?php echo $row[1]; ?>" ... and so on] 
1
$sql="SELECT * FROM test;"; 
$result=mysqli_query($con,$sql) or die("invalid query ".mysqli_error($con)); 
print 'var images=['; 
$tmp = array(); 
while($row=mysqli_fetch_array($result)) 
{ 
    $tmp[] = '"'.$row['name'].'"'; 
} 
print implode(',', $tmp); 
print '];'; 
0

Вам нужно будет повторить переменные в JavaScript, что-то вроде:

<?php 
    $sql="SELECT * FROM test;"; 
    $result=mysqli_query($con,$sql) or die("invalid query ".mysqli_error($con)); 
    $counter = 0; 
?> 

<script> 
var images=new Array(); 
<?php 
    while($row=mysqli_fetch_array($result)) 
    { 
     echo 'images['.$counter.']="'.$row['name'].'";' 
     $counter++; 
    } 
?> 
</script> 

использовать счетчик, чтобы следить за положением где вы хотите добавить новый элемент.

Смежные вопросы