mysql sorgusu alınıyor

4 Cevap php

Ben bir mysql sorgu yazılı ve mysql_fetch_assoc kullanarak bir doç dizi () gibi sonuç zorlama var. Sorgusu iki fields.I sonuç dizi aracılığıyla kullanarak bu alanda döngü yaşıyorum ve value.how ayıklanması am için bir liste döndürür i görüntülerim düz bir yankı yapıyor beri iki alan benim için çalışmıyor? ben yazdım kodu

Şimdiden teşekkürler.

 $query = "SELECT x,y FROM table";
 $result = mysql_query( $query ,  $resourcelink);
 while( $s= mysql_fetch_assoc( $result ) )
 {
extract( $s );
    echo $x . " - " . $y . "<br />";
 }

4 Cevap

Ben özü kullanarak karşı tavsiye ederiz. takip etmek Kod çok zorlaştırıyor.

Ben sadece bunu istiyorum:

$query = "SELECT x,y FROM table";
$result = mysql_query( $query ,  $resourcelink);
while( $s= mysql_fetch_assoc( $result ) ) {
    echo $s['x'], ' - ', $s['y'], '<br/>';
}

mysql_fetch_assoc değerine anahtarın dönüşümlerin bir dizi döndürür. Eğer one almak ve two vermedi gibi veritabanından, 1 $ ve 2 $ ($s['one'] ve $s['two'], sırasıyla) don ' t var. Bu nedenle anahtar olarak seçilen sütunlarını kullanarak, böyle bir şey yapmak.

 $query = "SELECT x,y FROM table";
 $result = mysql_query( $query ,  $resourcelink);
 while( $s= mysql_fetch_assoc( $result ) )
 {
    echo $s['x'] . " - " . $s['y'] . "<br />";
 }

Eğer özü kullanmaya devam etmek istiyorsanız ya da (ben hata izini için bazı zor yol açabilir, bunu tavsiye etmiyorum)

 $query = "SELECT x,y FROM table";
 $result = mysql_query( $query ,  $resourcelink);
 while( $s= mysql_fetch_assoc( $result ) )
 {
    extract($s);
    echo $x . " - " . $y . "<br />";
 }

extract ayrıca sizin sütunlar muhtemelen x ve y değil, bir ve iki olarak adlandırılan, kötü bir uygulamadır.

i aşağıdaki kullanmanızı öneririz:

echo htmlspecialchars($s['x']), ' - ', htmlspecialchars($s['y']);

SELECT deyimi Mysql_Fetch_Assoc göre () array('x'=>something, 'y'=>something) gibi bir dizi döndürür ve extract () x = 'şey' ve $ y $ = 'şey' değil, 1 $ ve 2 $ için bu "tercüme" olacaktır.

Denemek

error_reporting(E_ALL);
$query = "SELECT x,y FROM table";
$result = mysql_query( $query ,  $resourcelink) or die(mysql_error());
echo 'there are ', mysql_num_rows($result), " records in the result set\n";
while( false!==($row=mysql_fetch_array($result, MYSQL_ASSOC)) )  {
  echo $row['x'], ' ', $row['y'], "\n";
}