Check if the product id exists in the product_id of the simulator

0

I have two tables: products and simulator

In the sql products table I have:

id, nome

In the sql simulator table I have:

id, id_produto, nome_simulador

How do I do in PHP so that when the products are listed it checks if the product id exists in the product_id of the simulator?

I'm doing this way more does not work

$sql_produtos = "SELECT * FROM produtos order by nome  ";

$result_produtos = $conn->query($sql_produtos);

if ($result_produtos->num_rows > 0) {
    // output data of each row
    while($row_produtos = $result_produtos->fetch_assoc()) {


$sql_simulador  = "SELECT * FROM simulador where id_simulador ='".$row_produtos["id"]."'  order by nome_simulador  ";

$result_simulador  = $conn->query($sql_simulador );

if ($result_simulador ->num_rows > 0) {
    // output data of each row
    while($row_simulador  = $result_simulador ->fetch_assoc()) {



}}
}}
    
asked by anonymous 31.07.2017 / 20:30

3 answers

0

Your sql_simulador is probably making the wrong comparison, try replacing it for:

$sql_simulador  = "SELECT * FROM simulador where id_produto ='".$row_produtos["id"]."'  order by nome_simulador  ";
    
31.07.2017 / 20:37
0

Hello, use Prepared Statements , so your code will not be vuneravel to sql injection

example with your code:

$sql_simulador = $conn->prepare("SELECT * FROM simulador WHERE id_produto = ? ORDER BY simulador");
$sql_simulador->bind_param("i", $row_produtos["id"]);
$sql_simulador->execute();
    
31.07.2017 / 20:41
0

You have a syntax error:

if ($result_simulador ->num_rows > 0) {

should be:

if ($result_simulador->num_rows > 0) {
    
31.07.2017 / 20:43