Δημιουργία query αναζήτησης

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
Kainourios
Ruby Moderator
Δημοσιεύσεις: 504
Εγγραφή: 18 Μάιος 2005 16:20
Τοποθεσία: Κορυδαλλός
Επικοινωνία:

Δημιουργία query αναζήτησης

Δημοσίευση από Kainourios » 01 Ιούλ 2007 14:57

Καλησπέρα, θέλω να κάνω το εξής:

Να γράφει ο χρήστης κάτι σε ένα input box και μετά να το ψάχνει στη βάση αν υπάρχει. Το έχω φτιάξει το γύρω γύρω αλλά μου χτυπάει το query:

Κώδικας: Επιλογή όλων

$sql="SELECT * FROM pelates WHERE $first=$row['first']";
To $first είναι η μεταβλητή όπου έχει αποθηκεύσει το input του χρήστη και το $row['first'] είναι το σημείο στη βάση στο οποίο θα το ψάχνει. Καμιά ιδέα;

Άβαταρ μέλους
billt
Δημοσιεύσεις: 1175
Εγγραφή: 20 Φεβ 2004 16:17
Τοποθεσία: Θεσσαλονίκη

Δημιουργία query αναζήτησης

Δημοσίευση από billt » 01 Ιούλ 2007 16:17

Κώδικας: Επιλογή όλων

$sql="SELECT * FROM pelates WHERE first=$first";

nastis
Δημοσιεύσεις: 124
Εγγραφή: 16 Φεβ 2005 16:28
Επικοινωνία:

Δημιουργία query αναζήτησης

Δημοσίευση από nastis » 01 Ιούλ 2007 16:25

Το $row['first'] θα έπρεπε να είναι αποτέλεσμα ενός resultset που σου έχει ήδη επιστραφεί σε προηγούμενο query,αλλά μάλλον δεν έχεις κάτι τέτοιο.

Το $first εάν δεν το έχεις ορίσει σαν $first = $_REQUEST['first'] επίσης μάλλον δεν θα σου δουλέψει.

Μια μαντεψιά του τι θέλεις είναι :

$sql="SELECT * FROM pelates WHERE first='".$_REQUEST['first']."'";

δεδομένου ότι στον πίνακα σου στην Mysql το πεδίο του πίνακα pelates λέγεται first καθώς επίσης έτσι λέγεται και το πεδίο πριν το GET/POST αυτής της σελίδας.(ακα <input name='first'> )

Φιλικά
Β.
www.oktonia.com - Παγκόσμιο Χωριό Γνώσης Λυμένα Θέματα Εξετάσεων - Ασκήσεις

Άβαταρ μέλους
Risk
Δημοσιεύσεις: 319
Εγγραφή: 02 Μάιος 2006 01:16
Τοποθεσία: Κάπου εδώ γύρω...
Επικοινωνία:

Δημιουργία query αναζήτησης

Δημοσίευση από Risk » 01 Ιούλ 2007 16:27

Η αλήθεια είναι πως δεν ξέρω αν θα μπορέσω να σε βοηθήσω πολύ, καθώς στους αλγόριθμους αναζήτησης έχω και εγώ πάντα πρόβλημα πως θα τους προγραμματίσω. Θα σου πω όμως για το SQL Query που έχεις φτιάξει που είναι λίγο λάθος.

Λοιπόν στο WHERE θα πρέπει να βάλεις το πεδίο όπου θα γίνεται η αναζήτηση. Δλδ αν θέλεις να βρεις ένα όνομα πελάτη και έχεις ορίσει το πεδίο που δέχεται τα ονόματα onoma_pelati, τότε το sql query θα είναι:

Κώδικας: Επιλογή όλων

SELECT * FROM pelates WHERE onoma_pelati="κάτι";
Ας υποθέσουμε τώρα ότι αυτό το "κάτι" το ορίζει ο χρήστης και αποθηκεύεται σε μια μεταβλητή $first. Τότε σε php το ερώτημά σου θα πρέπει να συνταχθεί έτσι:

Κώδικας: Επιλογή όλων

$sql="SELECT * FROM pelates WHERE onoma_pelati=".$first.";"
Όποτε ένα ο χρήστης σου βάλει στο πεδίο της φόρμα σου "Κοσμάς", για να βρει όλους τους πελάτες που λέγονται Κοσμάδες και να τους πάρει να τους πει χρόνια πολλά σήμερα που γιορτάζουν (!), το "Κοσμάς" θα αποθηκευτεί στην μεταβλητή $first και το ερώτημα θα σου επιστρέψει όλους εκείνους τους πελάτες που έχουν όνομα "Κοσμάς".

Πιστεύω να κατάλαβα καλά και να βοήθησα λίγο!!!
Εικόνα

Άβαταρ μέλους
Kainourios
Ruby Moderator
Δημοσιεύσεις: 504
Εγγραφή: 18 Μάιος 2005 16:20
Τοποθεσία: Κορυδαλλός
Επικοινωνία:

Δημιουργία query αναζήτησης

Δημοσίευση από Kainourios » 01 Ιούλ 2007 16:42

Σαε ευχαριστώ για τις απαντήσεις, μου δούλεψε τελικά, δεν ήθελε $row['first'] αλλά 'first' σκέτο. Το $row['first'] τι δείχνει ακριβώς; Thanks και πάλι :D .

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης