Nasıl PHP kullanarak bir veritabanından değerleri ile bir javascript dizi doldurabilirsiniz?

3 Cevap php

Kimin elemanları bir veritabanından php tarafından getirilen bir javascript dizi oluşturmak zorunda. Bu mümkün mü? Eğer öyleyse, nasıl?

(I dont want to use ajax to do that)

3 Cevap

Cevap 1: Evet, bu yapılabilir.

2 Cevap: İşte nasıl:

$js_array = "[";
$result = mysql_query("some query of yours");
while( $row=mysql_fetch_array($result, MYSQL_NUM) ) {
    $js_array .= $row[0]; // assuming you just want the first field 
                          // of each row in the array
    $js_array .= ",";
}
$js_array{ strlen($js_array)-1 } = ']';

echo "var db_array = $js_array ;";

Şerefe!

Bir dizi oluşturma basit, veritabanı içerikleri üzerinde döngü yapabilirsem:

echo "var myArray = [";

Burada dizi döngü ve değerleri ayırmak için virgül ekleyin.

echo "];";

Sizin myArray değişken istemci tarafında satışa sunulacak. Bu gibi görünmelidir:

var myArray = [1, 3, 2, 4];

Aşağıdaki gibi alternatif ve döngü tabanlı dize birleştirme nedeniyle fazladan bir virgül önlemek için, istemci değişkeni yazabilirsiniz:

echo "var myArray = [];"

... Ve her veri satırı için aşağıdakileri yapın:

echo "myArray.push($db_data);"

Önceki yaklaşım olarak oldukça temiz değil ama bu, etkilidir. Aşağıdakine benzer bir kod ile sona erecek:

var myArray = [];

myArray.push(3);
myArray.push(5);
myArray.push(1);

alert(myArray); // will display "3, 5, 1"

PHP ile çok aşina olmak, ama bu herhangi bir sunucu tarafı dili ile yapılabilir bir şey değildir için özür dilerim.