⊗ppSpPDNP 61 of 83 menu

Ονομασμένοι Θέτοι (Placeholders) στο PDO της PHP

Για ευκολία, μπορούν να χρησιμοποιηθούν ονομασμένοι θέτοι (placeholders), όπου η σειρά των μεταβλητών στον πίνακα δεν είναι σημαντική. Ας δούμε πώς να δουλέψουμε μαζί τους.

Ας υποθέσουμε ότι έχουμε πάλι τις ακόλουθες μεταβλητές:

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

Ας κάνουμε ένα αίτημα SQL, χρησιμοποιώντας ονομασμένους θέτους. Η σύνταξή τους είναι η εξής: άνω και κάτω τελεία, και μετά το όνομα του θέτου. Ας τους χρησιμοποιήσουμε στο αίτημα:

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

Προετοιμάζουμε το αίτημα:

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

Εκτελούμε το αίτημα, περνώντας του ως παραμέτρους έναν συνειρμικό πίνακα, όπου τα κλειδιά θα είναι τα ονόματα των θέτων στο αίτημα SQL, και οι τιμές - οι αντίστοιχες μεταβλητές:

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

Μπορούμε να δούμε το αποτέλεσμα:

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

Ας τα συγκεντρώσουμε όλα μαζί και πάρουμε τον ακόλουθο κώδικα:

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

Δίνεται η μεταβλητή:

<?php $age = 30; ?>

Βρείτε όλους τους χρήστες, των οποίων η ηλικία ισούται με την τιμή που δίνεται στη μεταβλητή.

Δίνονται μεταβλητές:

<?php $age1 = 20; $age2 = 30; ?>

Βρείτε όλους τους χρήστες, των οποίων η ηλικία βρίσκεται στην περιοχή, που ορίζεται από τις τιμές των μεταβλητών.

Δίνονται μεταβλητές:

<?php $age1 = 20; $age2 = 30; $salary1 = 1000; $salary2 = 2000; ?>

Βρείτε όλους τους χρήστες, των οποίων η ηλικία ΚΑΙ ο μισθός βρίσκονται στην περιοχή, που ορίζεται από τις τιμές των μεταβλητών.

Ελληνικά
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Χρησιμοποιούμε cookie για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη