İki değer eşleşen MySQL Query

5 Cevap php

Ben tek tablonun iki ölçütüne uyan tüm girdileri seçmek istiyorum

SELECT * WHERE field1 IS $a AND field2 IS $b FROM TablaA

böyle bir şey ...

5 Cevap

Nasıl hakkında:

$query = "SELECT * FROM `TableA` WHERE `field1` = '$a' AND `field2` = '$b'";

mysql_real_escape_string() üzerine $a ve $b unutmayın.

SEÇİN * tableA nereye alan1 = $ a ve field2 = $ b

SELECT * FROM TablaA WHERE `field1` = $a AND `field2` = $b

Onlar sayısal olmayabilir eğer $ a ve $ b tırnak gerekir. Ben nedense kafamda numaraları vardı.

Sorgunuz biraz bozuk, ama sen yakınsın:

$a = mysql_real_escape_string($foo);
$b = mysql_real_escape_string($bar);

$sql = "
SELECT
    *
FROM
    `TablaA`
WHERE
    `field1` = '{$a}'
    AND `field2` = '{$b}'
";

Hazırlanmış deyimleri kullanarak kaçmak için çok daha iyi olacak, ama muhtemelen planları içine atılır bu anahtarı için hazır değiliz olacaktır. Sadece "Hazırlanan Tablolar" ve "mysqli" uzantısını kontrol, kısa sürede bu malzeme ile güvenli hissediyorum gibi, hatırlıyorum.

<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = 'password';

$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');

$dbname = 'petstore';
mysql_select_db($dbname);

$a = mysql_real_escape_string($input1);
$b = mysql_real_escape_string($input2);

$q = mysql_query("SELECT * FROM `TableA` WHERE `field1`='$a' AND `field2`='$b'");

?>

çok bağlantı şeyler gerekirse bilmiyordum.