⊗ppSpPDPP 60 of 83 menu

Placeholders posicionais no PDO em PHP

Vamos entender como trabalhar com placeholders posicionais. Suponha que temos duas variáveis que gostaríamos de inserir na consulta:

<?php $min = 1; $max = 5; ?>

Suponha que queremos inserir nossas variáveis da seguinte forma:

<?php $sql = "SELECT * FROM users WHERE id>$min and id<$max"; ?>

No entanto, isso não é seguro. Portanto, em vez de inserir as variáveis diretamente, vamos substituí-las por placeholders posicionais, que são representados por pontos de interrogação:

<?php $sql = 'SELECT * FROM users WHERE id>? and id<?'; ?>

Agora, vamos executar o comando que preparará a consulta:

<?php $res = $pdo->prepare($sql); ?>

Agora, execute a consulta, passando como parâmetros um array contendo nossas variáveis. Neste caso, as variáveis serão inseridas na consulta na ordem em que estão especificadas no array:

<?php $res->execute([$min, $max]); ?>

Depois disso, podemos obter o resultado da consulta:

<?php while ($row = $res->fetch()) { var_dump($row); } ?>

Vamos juntar tudo e obter o seguinte código:

<?php $min = 1; $max = 5; $sql = 'SELECT * FROM users WHERE id>? and id<?'; $res = $pdo->prepare($sql); $res->execute([$min, $max]); while ($row = $res->fetch()) { var_dump($row); } ?>

São dadas as variáveis:

<?php $age = 30; $salary = 1000; ?>

Encontre todos os usuários cuja idade ou salário sejam iguais aos valores definidos nas variáveis.

Tente realizar uma injeção SQL no seu código. Certifique-se de que ela não será bem-sucedida.

Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar