Πρόβλημα με την Select στο Order By με μεταβλητές.

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

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

Απάντηση
b-focus
Δημοσιεύσεις: 6
Εγγραφή: 11 Ιούλ 2005 11:40

Πρόβλημα με την Select στο Order By με μεταβλητές.

Δημοσίευση από b-focus » 18 Ιούλ 2005 20:38

Παρακαλώ θα χρειαστώ για άλλη μία φορά την βοήθειά σας.
Έχω τον παρακάτω κώδικα SELECT στον οποίο βάζω LIKE και μεταβλητές.

Πού μπορώ να προσθέσω το (ORDER BY domain ASC), έτσι ώστε να παίζει σωστά η SELECT.
Έχω δοκιμάσει να το βάλω παντού αλλά τίποτα. Μου πετάει συνέχεια error όταν το προσθέσω.

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

mysql_select_db($database_base, $base);
$query_rsSearch = "SELECT * FROM domains WHERE domain like".$titlos_s_rsSearch.$sc;
//echo $query_rsSearch;
$rsSearch = mysql_query($query_rsSearch, $base) or die(mysql_error());
$row_rsSearch = mysql_fetch_assoc($rsSearch);
$totalRows_rsSearch = mysql_num_rows($rsSearch);

Άβαταρ μέλους
shadow
Script Master
Δημοσιεύσεις: 606
Εγγραφή: 14 Απρ 2005 18:30

Πρόβλημα με την Select στο Order By με μεταβλητές.

Δημοσίευση από shadow » 18 Ιούλ 2005 21:21

Αρχικά στον κώδικα που έχεις δώσει δεν έχεις αφήσει space μετα το LIKE, υποθέτω ότι αυτό είναι τυπογραφικό λάθος :)
Το query πρεπει να είναι , εάν θες να κάνεις match ολα τα blabladomainblabla,:

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

$query_rsSearch = "SELECT * FROM domains WHERE domain LIKE '%".$titlos_s_rsSearch.$sc."%' ORDER BY domain ASC" ;
Close your eyes
For your eyes will only tell the truth and the truth isnt what you want to see
In the dark, is it easy to pretend that the truth is it ought to be.
Programmers are programmers because they like to code

b-focus
Δημοσιεύσεις: 6
Εγγραφή: 11 Ιούλ 2005 11:40

Πρόβλημα με την Select στο Order By με μεταβλητές.

Δημοσίευση από b-focus » 18 Ιούλ 2005 23:09

Το έβαλα αυτό που μου είπες και τώρα δεν δίνει καθόλου αποτελέσματα.
Απλά το μόνο που ήθελα να κάνω είναι να βγάζει τις εγγραφές μου
αλφαβητικά σε σχέση με τα Domains.

Άβαταρ μέλους
shadow
Script Master
Δημοσιεύσεις: 606
Εγγραφή: 14 Απρ 2005 18:30

Πρόβλημα με την Select στο Order By με μεταβλητές.

Δημοσίευση από shadow » 19 Ιούλ 2005 00:18

Θελεις δηλαδη να σου επιστρεφει ολα τα records του table domains? Τοτε δεν χρειαζεσαι το like αλλα ενα απλο query στο οποιο θα κανεις το αντιστοιχο short.

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

$query_rsSearch = "SELECT * FROM domains ORDER BY domain ASC" ;
Για να μην σου δινει αποτελέσματα υποθέτω ότι δεν υπαρχει εγγραφή στον πίνακα που να έχει όνομα LIKE $titlos_s_rsSearch.$sc
Close your eyes
For your eyes will only tell the truth and the truth isnt what you want to see
In the dark, is it easy to pretend that the truth is it ought to be.
Programmers are programmers because they like to code

b-focus
Δημοσιεύσεις: 6
Εγγραφή: 11 Ιούλ 2005 11:40

Πρόβλημα με την Select στο Order By με μεταβλητές.

Δημοσίευση από b-focus » 19 Ιούλ 2005 04:13

Ισως δεν σου εξήγησα όσο σωστά θα έπρεπε. :hammer:
Το να κάνω ένα απλό SELECT με ORDER BY το ξέρω. Δες λίγο τι έχω βάλει στις μεταβλητές που έχω μετά το LIKE.

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

$titlos_s_rsSearch = '"%"';
if (isset($_POST['domain_search'])) {
  $titlos_s_rsSearch = '"%'.$_POST['domain_search'].'%"';
}

$cat_s_rsSearch = "0";
$cs='';
if (isset($_POST['domain_etoimo'])) {
  $cat_s_rsSearch = $_POST['domain_etoimo'];
  if ($cat_s_rsSearch!='all') $sc=' AND domains.domainid='.$cat_s_rsSearch;
}

mysql_select_db($database_base, $base);
$query_rsSearch = "SELECT * FROM domains WHERE domain LIKE".$titlos_s_rsSearch.$sc;
$rsSearch = mysql_query($query_rsSearch, $base) or die(mysql_error());
$row_rsSearch = mysql_fetch_assoc($rsSearch);
$totalRows_rsSearch = mysql_num_rows($rsSearch);
Θα μου πεις τώρα, γιατί να το κάνω έτσι και στο φινάλε να μην κάνω ένα απλό SELECT με ORDER BY.
Διότι κάπου μέσα στον κώδικά μου έχω αυτό:

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

<select name="domain_etoimo" class="buton-mesa7" id="domain_etoimo">
          <option value="all">Όλα</option>
          <?php
do &#123;  
?>
          <option value="<?php echo $row_rsCategory2&#91;'domainid'&#93;?>"><?php echo $row_rsCategory2&#91;'domain'&#93;?></option>
          <?php
&#125; while &#40;$row_rsCategory2 = mysql_fetch_assoc&#40;$rsCategory2&#41;&#41;;
  $rows = mysql_num_rows&#40;$rsCategory2&#41;;
  if&#40;$rows > 0&#41; &#123;
      mysql_data_seek&#40;$rsCategory2, 0&#41;;
	  $row_rsCategory2 = mysql_fetch_assoc&#40;$rsCategory2&#41;;
  &#125;
?>
        </select>
και επίσης αυτό:

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

                      <input name="domain_search" type="text" class="buton-mesa4" id="domain_search">
                      <input name="Submit" type="submit" class="buton" value="Αναζήτηση">
Τα οποία είναι σε μία Form μέσα, και πέρνω τα ανάλογα αποτελέσματα είτε
με αναζήτηση είτε με List/Menu. Οπότε θέλω να προσθέσω στο SELECT και τις μεταβλητές $titlos_s_rsSearch και $sc με LIKE αλλά θέλω και ταξινόμηση αλφαβητική στις εγγραφές που θα φέρει η αναζήτηση.

:pint:

Άβαταρ μέλους
shadow
Script Master
Δημοσιεύσεις: 606
Εγγραφή: 14 Απρ 2005 18:30

Πρόβλημα με την Select στο Order By με μεταβλητές.

Δημοσίευση από shadow » 19 Ιούλ 2005 14:50

b-focus έγραψε:Το έβαλα αυτό που μου είπες και τώρα δεν δίνει καθόλου αποτελέσματα.
Απλά το μόνο που ήθελα να κάνω είναι να βγάζει τις εγγραφές μου
αλφαβητικά σε σχέση με τα Domains.
Λογικό εφόσον περνάς το % με τις μεταβλητές και το ξαναβάζω και εγώ στο query, οπότε η αναζήτηση γίνεται για ένα όνομα του στυλ "blabla%name%blabla".

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

$titlos_s_rsSearch ="";
$sep = "WHERE";

if &#40;isset&#40;$_POST&#91;'domain_search'&#93;&#41;&#41; &#123;
  $titlos_s_rsSearch = " WHERE domain LIKE '%".trim&#40;$_POST&#91;'domain_search'&#93;&#41;."%' ";
  $sep = "AND";
&#125;

$cat_s_rsSearch = 0;
$sc='';
if &#40;isset&#40;$_POST&#91;'domain_etoimo'&#93;&#41;&#41; &#123;
  $cat_s_rsSearch = trim&#40;$_POST&#91;'domain_etoimo'&#93;&#41;;
  if &#40;$cat_s_rsSearch!='all'&#41; $sc=" $sep domainid='".$cat_s_rsSearch."' ";
&#125;

mysql_select_db&#40;$database_base, $base&#41;;
$query_rsSearch = "SELECT * FROM domains $titlos_s_rsSearch $sc  ORDER BY domain DESC";
$rsSearch = mysql_query&#40;$query_rsSearch, $base&#41; or die&#40;mysql_error&#40;&#41;&#41;;
$row_rsSearch = mysql_fetch_assoc&#40;$rsSearch&#41;;
$totalRows_rsSearch = mysql_num_rows&#40;$rsSearch&#41;; 
Close your eyes
For your eyes will only tell the truth and the truth isnt what you want to see
In the dark, is it easy to pretend that the truth is it ought to be.
Programmers are programmers because they like to code

b-focus
Δημοσιεύσεις: 6
Εγγραφή: 11 Ιούλ 2005 11:40

Πρόβλημα με την Select στο Order By με μεταβλητές.

Δημοσίευση από b-focus » 21 Ιούλ 2005 23:01

:kaloe: Είσαι αστέρι !!

Thanks με βοήθησες πολύ να κατανοήσω και τον κώδικα. Είμαι καινούριος στην php και τώρα μαθαίνω. Δουλεύω με το Dreamweaver και ξέρεις, χρησιμοποιό όσα tools μου δίνει το πρόγραμα.

Thanks again. :D

Άβαταρ μέλους
shadow
Script Master
Δημοσιεύσεις: 606
Εγγραφή: 14 Απρ 2005 18:30

Πρόβλημα με την Select στο Order By με μεταβλητές.

Δημοσίευση από shadow » 22 Ιούλ 2005 22:33

Den kserw ti tools dinei to Dreamweaver giati den to exw doulepsei pote. Pantws h php exei ena ergaleio gam@@@@ pou legetai MANUAL. Sobara einai apo ta kalitera documentations pou exw dei kai sou sinistw anepifilakta na to katebaseis :)
Close your eyes
For your eyes will only tell the truth and the truth isnt what you want to see
In the dark, is it easy to pretend that the truth is it ought to be.
Programmers are programmers because they like to code

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

Πρόβλημα με την Select στο Order By με μεταβλητές.

Δημοσίευση από Rapid-eraser » 23 Ιούλ 2005 02:14

Pesta re shadow :P exei maliasei n glossa mou va to lew :)
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Απάντηση

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

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

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