Ankündigung

Einklappen
Keine Ankündigung bisher.

Suche

Einklappen

Neue Werbung 2019

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

  • Suche

    Hallo habe folgende Suche die Funktioniert !!
    Aber die aufteilung ist fehlerhaft!!!
    Kein mir einer HELFEN


    Code:
    // Verbindung zu MySQL-Datenbank herstellen oder sterben.
    $db=mysql_connect("XXX", "XXXX", "")or die(mysql_error());
    
    // Benötigte Datenbank auswählen oder sterben.
    mysql_select_db("Knowledgebase", $db) or die(mysql_error());
    
    // Feststellen der Anzahl der verfügbaren Datensätze.
    $resultID = @mysql_query("SELECT COUNT(ID) FROM Solutions");
    $total    = @mysql_result($resultID,0);
    
    print("Anzahl verfügbarer Datensätze: ".$total."<br \>");
    
    // ggf. $start korrigieren
    $start = ($start >= $total) ? $total - $limit:$start;
    
    //Datenbankabfrage ausführen
    $query = "SELECT ID, Synopsis FROM Solutions LIMIT ".$start.",".$limit;
    $resultID = @mysql_query($query);
    
    // Ergebnisse lesen
    while($data = mysql_fetch_array($resultID))
    {
    	echo $data["ID"].": ".$data["INHALT"]."
    ";
    }
    
    //Zurück- und Vorblättern
    if ($start > 0)
    { $newStart = ($start - $limit <0) ? 0 : ($start-$limit);
      echo "zurück && ";
    }
    
    if ($start + $limit < $total)
    { $newStart = ($start + $limit);
      echo "vor &&";
    }
    
    
        
    ?>
    <//**************SUCHE**************>
    
    <?php
    if ($stichwort == "")
    {
      print ("Sie haben nichts eingegeben. <br \>");
    }
    
    else
    {
      $db=mysql_connect("XXX", "XXXX", "")or die(mysql_error());
      mysql_select_db("Knowledgebase", $db) or die(mysql_error());
      $query="SELECT * FROM Solutions WHERE Synopsis LIKE ('%".$stichwort."%')";
      //$query="SELECT * FROM Solutions WHERE MATCH (Synopsis) AGAINST ('$stichwort')";
      $result=mysql_query($query);
      if (mysql_num_rows($result)==0)
      {
        //print($query."
    ");
        print("Nichts gefunden");
      }	
      else
      {
        $rows = mysql_fetch_array($result);
        print("Anzahl der Datensätze: ");
        print(mysql_num_rows($result).("
    
    "));
        
        //*********************AUSGABE*********************
        
      $res=mysql_query("SELECT * FROM Solutions WHERE Synopsis LIKE ('%".$stichwort."%')");
      while($row=mysql_fetch_array($res)){
      	echo "Ergebnis: ".$row['Synopsis']."
    ";
      	
       }
      }
    }
    ?>
    
    </body></html>

  • #2
    was denn für eine aufteilung? sag mal genau, was dein problem ist, damit wir dir auch helfen können.

    Kommentar


    • #3
      Such splitten

      Habe ein Suchergebnis und möchte dieses eben aufteilen, so dass ich 4 Ergebnisse sehe auf nen Link drücke und dann die nächsten vier angezeigt werden usw.!!!

      Beides einzeln funzt !!! Nur kann ich meine Suchergebnisse nicht in meinen AufteilCODE integrieren

      Kommentar


      • #4
        da kann ich nur wieder auf die boradsuche hinweisen
        aber ich poste trotzdem mal meinen code von einem gb und verbessere das noch so dass es auf eine suche zugeschnitten ist

        Code:
        if(!$pos) $pos=0;
        $count=4; //wieviel angezeigt werden sollen bei dir 4
        //Anzahl der Datensätze ermitteln
        $SQL="SELECT * FROM tabelle WHERE feld='$suchanfrage' ORDER BY feld1 DESC LIMIT $pos,$count";
        $result=mysql_query($SQL);
        $anzahl=mysql_num_rows($result);
        //Mit diesen Anweisungen werden die Links für das Blättern zwischen den Ergebnissen erzeugt
        $new_pos_next=$pos+$count;
        if($new_pos_next>=$anzahl){
        $link_next="";
        }else {
        $link_next="weiter >>";
        }
        $new_pos_prev=$pos-$count;
        if($new_pos_prev<0){
        $link_prev="";
        } else {
        $link_prev="<< zurück";
        }
        // ab hier werden die einzelenen seiten generiert 1 2 3 4 5 usw..
        $last_pos=$anzahl-($anzahl%$count);
        $first_pos=0;
        $pos1=0;
        $i=1;
        ?>
        <p align="center">Gehe zu: &&<?php echo $link_prev ?>&...&
        <?php
        while($pos1<=$last_pos){
        if($pos1==$pos){
        echo "" . $i . "&";
        } else {
        echo "" . $i . "&";
        }
        $i++;
        $pos1=$pos1+$count;
        }
        ?>
        ...&<?php echo $link_next ?>
        das sieht dann z.b. so aus
        <<zurück ... 1 2 3 4 5 6 7 ... weiter>>
        die 4 is fett und es liegt kein link drauf weil grade die 4 seite aufgerufen ist
        den code musst du da integrieren wo auch die links zum blättern stehen sollen

        Kommentar


        • #5
          Schön und gut

          Habe meinwe Aufteilung aber schon möchte nur den fehler verbessert bekommen, da meine ausgab nicht stimmt

          Kommentar


          • #6
            da du bei deinem code zum blättern einige variablen benutzt die davor gar nicht mit werten gefüllt worden sind ist es schwer da den fehler zu entdecken..probier einfach mal meinen code aus und guck ob der funktioniert

            Kommentar


            • #7
              SORRY

              DEN setzt ich dann wo in meinem CODE ein ?!?!

              Kommentar


              • #8
                ich zitiere mich selbst:
                Zitat von burner.nst
                den code musst du da integrieren wo auch die links zum blättern stehen sollen
                z.b. am ende...
                das selektieren muss natürlich ganz am anfang
                mal en beispiel
                Code:
                if(!$pos) $pos=0; 
                $count=4; //wieviel angezeigt werden sollen bei dir 4 
                //Anzahl der Datensätze ermitteln 
                $SQL="SELECT * FROM tabelle WHERE feld='$suchanfrage' ORDER BY feld1 DESC LIMIT $pos,$count"; 
                $result=mysql_query($SQL); 
                $anzahl=mysql_num_rows($result);
                /////////////////////////////////////////////////
                dein restlicher code zum anzeigen der datensätze
                du kannst hhier sofort mit while($row=mysql_fetch_array($result)){... anfangen denn das selektieren ist ja schon oben geschehen
                /////////////////////////////////////////////////
                dann am ende mein code zum anzeigen der links zum blättern
                //Mit diesen Anweisungen werden die Links für das Blättern zwischen den Ergebnissen erzeugt 
                $new_pos_next=$pos+$count; 
                if($new_pos_next>=$anzahl){ 
                $link_next=""; 
                }else { 
                $link_next="weiter >>"; 
                } 
                $new_pos_prev=$pos-$count; 
                if($new_pos_prev<0){ 
                $link_prev=""; 
                } else { 
                $link_prev="<< zurück"; 
                } 
                // ab hier werden die einzelenen seiten generiert 1 2 3 4 5 usw.. 
                $last_pos=$anzahl-($anzahl%$count); 
                $first_pos=0; 
                $pos1=0; 
                $i=1; 
                ?> 
                <p align="center">Gehe zu: &&<?php echo $link_prev ?>&...& 
                <?php 
                while($pos1<=$last_pos){ 
                if($pos1==$pos){ 
                echo "" . $i . "&"; 
                } else { 
                echo "" . $i . "&"; 
                } 
                $i++; 
                $pos1=$pos1+$count; 
                } 
                ?> 
                ...&<?php echo $link_next ?>

                Kommentar


                • #9
                  SORRY

                  versteh ich nicht !!! bekomms net hin egal !!! trotzdem DANKE

                  Kommentar


                  • #10
                    nicht aufgeben! ist dein Problen, das beim Blättern immer wieder die Daten der ersten Seite angezeigt werden?

                    Kommentar


                    • #11


                      Also bei deiner SUCHE komm ich gar nicht klar !!!
                      Bei meiner ist es so das er mit immer alles Anzeigt und meine Suchergebniss gar nicht berücksichtigt, er zeigt mir die komplette Tabelle an

                      Kommentar


                      • #12
                        Bei www.tut.php-q.net habe ich sowas beim Gästebuch schon gesehen... (da ist es halt mit MySql...)

                        Kommentar


                        • #13


                          das GUTE ist ich benutze MySQL das schlechte ist ich versteh heut echt nur Bahnhof!!!
                          Ist 100% ig total simple mein Problem aber es funzt net !!!

                          Ist jetzt auch egal!!!! Bin glaub nicht für diese ProgSprache geeignet

                          VIELEN DANK FÜR DEINE GEDULT

                          Kommentar


                          • #14
                            Man muss nur wollen...
                            Guck dort doch einfach mal unter Gästebuch in der navigation. Da wird dein Prob bearbeitet....

                            Kommentar


                            • #15


                              glaub mir ich will schon seit Montag, aber irgendwann ist vorbei !!!!

                              Kommentar

                              Lädt...
                              X