auslese problem..

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • auslese problem..

    hallo!

    ich will aus einer mysql datenbank alle zeilen auslesen, in denen ein bestimmtes feld mit einer beliebigen zahl beginnt.

    ich habe von REGEXP erfahren, weiß aber nich, wie damit umgegangen wird

    kann mir wer helfen?

    greetz

  • #2
    LIKE

    oder

    >
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      ich weiß immer noch net wie des gehen soll.

      SELECT * FROM tabelle WHERE name LIKE ???

      ich weiß nich, was ich bei den drei fragezeichen machen muss..

      Kommentar


      • #4
        LIKE '1%'

        oder

        > 100
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          bei beiden möglichkeiten bekomme ich die fehlermeldung:

          Warning: Supplied argument is not a valid MySQL result resource in download.php on line 93

          line 93 is die zeile, in der die mysql abfrage ausgegeben werden soll..

          Kommentar


          • #6
            dann lasse dir mal den fehler der DB zeigen
            PHP-Code:
            $sql "SELECT .....";
            $res mysql_query($sql) or die(mysql_error()); 
            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


            Kommentar


            • #7
              You have an error in your SQL syntax near 'FROM dl WHERE name > 100 ORDER BY name' at line 1



              edit:

              You have an error in your SQL syntax near 'FROM dl WHERE name LIKE '1%' ORDER BY name' at line 1
              Zuletzt geändert von WhiZZler; 29.05.2003, 18:06.

              Kommentar


              • #8
                wie sieht denn der code aus?
                INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                Kommentar


                • #9
                  der komplette code:
                  PHP-Code:
                  <?

                  include ("dl/var.inc.php");

                  $db = mysql_connect($dbserver, $dbuser, $dbpass) OR DIE ("Konnte Verbindung zur MySQL nicht herstellen.");
                  $res = mysql_select_db($dbname) OR DIE ("Konnte Datenbank nicht anwählen");

                  if ($mode == "show")

                  {

                  $sort = urldecode($sort);
                  if ($sort == "")
                     {
                      $sort = "A";
                     }
                  ?>
                  <table width="100%" cellpadding="0" cellspacing="0" border="1" style="border-collapse: collapse" bordercolor="#000000">
                    <tr border="1" style="border-collapse: collapse" bordercolor="#000000" bgcolor="#800000">
                      <td>
                  <?

                  //HIER SIND NOCH UNWICHTIGE LINKS...


                      if ($sort == "0-9")
                      {
                          $query = "SELECT FROM dl WHERE name LIKE '1%' ORDER BY name";
                          $result = mysql_query($query) or die(mysql_error());
                      }
                      else
                      {
                           $query = "SELECT * FROM dl WHERE system = '$system' AND name LIKE '$sort%' ORDER BY name";
                          $result = mysql_query($query);
                      }
                  ?>
                      </td>
                    </tr>
                  </table>

                        <br><br>
                      <table width="100%" cellpadding="0" cellspacing="0" border="1" style="border-collapse: collapse" bordercolor="#000000">
                        <tr border="1" style="border-collapse: collapse" bordercolor="#000000" bgcolor="#660000">
                          <td width="16%" border="0">
                            <b>Name</b>
                          </td>
                            <td width="16%" border="0">
                              <b>Genre</b>
                            </td>
                            <td width="16%" border="0">
                             <b>Sprache</b>
                            </td>
                            <td width="16%" border="0">
                              <b>Hits</b>
                            </td>
                            <td width="16%" border="0">
                              <b>Bewertung</b>
                            </td>
                            <td width="16%" border="0">
                              <b>Review</b>
                            </td>
                        </tr>
                  <?
                        $bgcount = 1;

                        while ($row = mysql_fetch_object($result)) //<-- ominöse zeile 93
                          {
                           $id = $row->id;
                           $name = $row->name;
                           $genre = $row->genre;
                           $sprache = $row->sprache;
                           $count = $row->count;
                           $bewertung = $row->bewertung;

                           $c = $bgcount % 2;
                               if ($c == 1)
                                {
                                    $bgcolor = "800000";
                                }
                              else
                               {
                                   $bgcolor = "600000";
                               }

                           ?>

                           <? echo "<tr border=\"1\" style=\"border-collapse: collapse\" bordercolor=\"#000000\" bgcolor=\"#" . $bgcolor . "\">" ?>
                             <td width="16%" height="16" border="0">
                               <? echo "" . $name . ""; ?>
                             </td>
                             <td width="16%" height="16" border="0">
                               <? echo "" . $genre .  ""; ?>
                             </td>
                             <td width="16%" height="16" border="0">
                               <? echo "<img src=\"dl/" . $sprache . ".gif\">"; ?>
                             </td>
                             <td width="16%" height="16" border="0">
                               <? echo "" . $count . ""; ?>
                             </td>
                             <td width="16%" height="16" border="0">
                               <? echo "" . $bewertung . ""; ?>
                             </td>
                             <td width="16%" height="16" border="0">
                               <? echo "<a href=\"index.php?action=dl/download&mode=review&id=" . $id . "\">Review</a>"; ?>
                             </td>
                           </tr>

                           <?

                        $bgcount++;

                        }

                        ?>
                        </table>
                  <?

                  }

                  //hier wäre noch action==view.. is aber unwichtig..
                  Zuletzt geändert von WhiZZler; 29.05.2003, 18:18.

                  Kommentar


                  • #10
                    ich meinte zwar nicht den ganzen code..... aber

                    hier
                    SELECT FROM

                    fehlt ja eindeutig was...

                    ein *
                    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                    Kommentar


                    • #11
                      argh.. danke.. ich glaub, ich muss mich für meine dummheit entschuldigen

                      jetzt werden aber nur die daten ausgelesen, bei denen das feld name mit einer 1 beginnt.. ich habs mit:

                      SELECT * FROM dl WHERE name LIKE '1%' OR LIKE '2%' OR LIKE '3%' OR LIKE '4%' OR LIKE '5%' OR LIKE '6%' OR LIKE '7%' OR LIKE '8%' OR LIKE '9%' OR LIKE '0%' ORDER BY name

                      versucht.. aber das ging auch net
                      kam die gleiche fehlermeldung..

                      Kommentar


                      • #12
                        du MUSST immer den feldname wieder angeben.

                        WHERE name LIKE '1%' OR name LIKE '2%' OR name LIKE .... usw.
                        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                        Kommentar


                        • #13
                          das ist jetzt aber eine ziemlich aufwendige query mit jede menge LIKEs geworden.

                          ich würde folgenden ansatz probieren:

                          mit SUBSTRING nur das erste zeichen der spalte name betrachten, und dieses dann auf >= "0" und <= "9" abfragen.
                          I don't believe in rebirth. Actually, I never did in my whole lives.

                          Kommentar


                          • #14
                            ich würde folgenden ansatz probieren:
                            eine sehr weise entscheidung... warum bin ich da nur nicht drauf gekommen....
                            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                            Kommentar


                            • #15
                              danke an euch zwei (<-- der smiley is fett )
                              jetzt kann is das script endlich fertig und ich kann mit was anderem anfangen

                              Kommentar

                              Lädt...
                              X