Passer des variables PHP à une requête SQL dans oci_parse
P粉107772015
P粉107772015 2023-11-04 12:38:22
0
1
664

Je transmets des variables PHP dans une requête Oracle SQL. Mais il ne le traite pas correctement et me donne des erreurs ORA telles que - caractère invalide. J'ai essayé d'échapper la variable à "$sid", ce qui fait disparaître l'erreur, mais la requête ne renvoie rien. Existe-t-il un moyen de transmettre des variables PHP à une requête Oracle

if(isset($_POST['action']))
{
   $sid = $_POST['action'];
   $stid = oci_parse($conn, 'SELECT emp from table emp='$sid'');
   oci_execute($stid);
}

Par souci de concision, j'ai supprimé la partie connexion à la base de données.

P粉107772015
P粉107772015

répondre à tous(1)
P粉262926195

'SELECT emp from table emp='$sid'' est une chaîne que vous transmettez à Oracle exactement telle quelle, c'est pourquoi cela ne fonctionne pas.

Vous devez utiliser oci_bind_by_name pour lier l'espace réservé à une variable PHP.

Exemple :

$variable = 42;
$stid = oci_parse($conn, 'SELECT col_name FROM tbl_name WHERE col_name > :num;');
oci_bind_by_name($stid, ":num", $variable);
oci_execute($stid);
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!