SQL quiery PHP değişken değişkenlerini kullanma

2 Cevap php

olması bu soru için özür bir "bunu çözebilirsiniz", ama bu kod biraz şimdi beni bir süre kafa karıştırıcı olmuştur.

Ben temelde satır ve sütun bir grup ile bir tablo yapıyorum ve her birinde ben biraz değiştirerek SQL sorgusu var. Bunun yerine tüm o yazmaya ben script bu biraz yaptı ama biraz karışık yani sizin herhangi bir doğru elde etmek için yönetebilirsiniz almaya başlıyor biraz kolaylaştırmak için?

echo '<td background="images/map/';
$tile = mysql_fetch_array(mysql_query("SELECT image FROM map WHERE horizontal = ${'mapPiece' . $mapPieceCount . [0]} AND verticle = ${'mapPiece' . $mapPieceCount . [0]}"));
echo $tile[0];
echo '.png"></td>';

Teşekkürler, B ekledi

2 Cevap

Ben bu hakkı yorumlanır varsayarsak, [0] kıvırcık parantez dışına gitmek gerekiyor:

echo '<td background="images/map/';
$tile = mysql_fetch_array(
          mysql_query(
            "SELECT image FROM map WHERE horizontal = ".
            ${'mapPiece' . $mapPieceCount}[0].
            " AND verticle = ".
            ${'mapPiece' . $mapPieceCount}[0]
          )
        );
echo $tile[0]; 
echo '.png"></td>';

Bir dize üzerinde birleştirerek konum gibi, her şeyden önce, siz, böyle dizi indeksi [0] append olamaz. Sadece kıvrımlara şeyleri yapmak için fazladan birkaç satır ilave Genel olarak, eğer çok daha kolay olurdu:

$currentPiece = 'mapPiece' . $mapPieceCount;
echo '<td background="images/map/';

$query = 'SELECT image '.
            'FROM map '.
            'WHERE horizontal = '.${$currentPiece}[0].' '.
                'AND verticle = '.${$currentPiece}[0];
$result = mysql_query($query);
$tile = mysql_fetch_array($result);

echo $tile[0];
echo '.png"></td>';