Lanike71 Δημοσ. 16 Μαρτίου 2014 Δημοσ. 16 Μαρτίου 2014 Όταν θέλω να ανακτήσω κάποια δεδομένα μέσω POST, ποιά είναι η σωστή σύνταξη για πεδία που είναι τύπου ΙΝΤ; Έστω πεδίο age και POST είναι το ilikia, η σωστή σύνταξη δεν είναι age= ' $_POST[ilikia] ' ;
geomagas Δημοσ. 16 Μαρτίου 2014 Δημοσ. 16 Μαρτίου 2014 Αν είσαι σίγουρος ότι το $_POST['ilikia'] περιέχει int, τότε μπορείς να παραλείψεις τα εισαγωγικά γύρω του. Σε κάθε περίπτωση όμως, θα πρέπει να τα βάλεις γύρω από το ilikia (το array key δηλαδή). Υποθέτοντας ότι όλο το query είναι μέσα σε διπλά εισαγωγικά, θα μπορούσες να γράψεις age=$_POST['ilikia'] Αν θέλεις να κρατήσεις και τα εισαγωγικά γύρω από το $_POST, γράφεις πχ: age='$_POST[\"ilikia\"]'
cyclo Δημοσ. 18 Μαρτίου 2014 Δημοσ. 18 Μαρτίου 2014 Θα πρότεινα επίσης να χρησιμοποιήσεις prepared statements. π.χ: $query = "SELECT mpla mpla age = :age "; $params = array("age"=>$_POST[ilikia]); $pdo->prepare( query )->execute($params) 1
NikosTsolakos Δημοσ. 18 Μαρτίου 2014 Δημοσ. 18 Μαρτίου 2014 Θα πρότεινα επίσης να χρησιμοποιήσεις prepared statements. π.χ: $query = "SELECT mpla mpla age = :age "; $params = array("age"=>$_POST[ilikia]); $pdo->prepare( query )->execute($params) Κοιτά νομίζω οτι ανάλογα με την σύνδεση της database σε PDO η σε απλή! στην PDO είναι ο κώδικας που έδωσες γιατί δεν γίνεται να μπει php μέσα στο query αλλα στην απλή μπορείς να το κάνεις και ετσι $query = ("SELECT `nothing` FROM `mpla` = '$mpla' ");
subdee Δημοσ. 18 Μαρτίου 2014 Δημοσ. 18 Μαρτίου 2014 Κοιτά νομίζω οτι ανάλογα με την σύνδεση της database σε PDO η σε απλή! στην PDO είναι ο κώδικας που έδωσες γιατί δεν γίνεται να μπει php μέσα στο query αλλα στην απλή μπορείς να το κάνεις και ετσι $query = ("SELECT `nothing` FROM `mpla` = '$mpla' "); Αυτό που προτείνει ο cyclo είναι να γίνει χρήση του PDO και να μην περνάει user input κατευθείαν στο query χωρις sanitization.
Lanike71 Δημοσ. 18 Μαρτίου 2014 Μέλος Δημοσ. 18 Μαρτίου 2014 Το $query = ("SELECT `nothing` FROM `mpla` = '$mpla' "); μου είναι πιο οικείο. Επειδη είμαι αρχάριος, έχω ξεκινήσει με τα απλά πρώτα.
geomagas Δημοσ. 18 Μαρτίου 2014 Δημοσ. 18 Μαρτίου 2014 Ναι, αυτό μπορείς να το κάνεις και με pdo και με mysqli και με mysql. Απλά το τελευταίο είναι deprecated. Μην το χρησιμοποιείς ποτέ σε "αληθινές" εφαρμογές. Προσπάθησε να μεταφερθείς στο ένα από τα δύο πρώτα εξ αρχής. 1
NikosTsolakos Δημοσ. 18 Μαρτίου 2014 Δημοσ. 18 Μαρτίου 2014 (επεξεργασμένο) και εγω θα σου πρότεινα να χρησιμοποίησης αυτό που σου πρότεινε ο $query = "SELECT `mpla` WHERE age = :age "; $params = array(:age => $_POST[ilikia]); $pdo->prepare( query )->execute($params) ( το άλλαξα λίγο ) αλλά όπως είπα ανάλογα πως έχεις συνδεθεί στην βάση δεδομένων Επεξ/σία 19 Μαρτίου 2014 από NikosTsolakos
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα