Hilfe wegen Fehlermeldung

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

  • Hilfe wegen Fehlermeldung

    Folgende Fehlermeldung tritt auf:
    Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /usr/local/httpd/htdocs/tsbv/tsbvneu/suchen/suche.php on line 270

    Die Ausgabeseite der Datenbankabfrage liest 5 verschiedene Tabellen einzeln aus.
    Der Code ist bis auf die angaben zur Tabelle identisch


    Gebe ich nun mehrere Lehrzeichen hintereinander ein oder ähnliches, sollte dies bearbeitet werden.

    Klappt auch - bis auf die Abfrage ERFOLGE

    Link http://www.tsbv.de/tsbvneu/
    CODE hier:

    PHP-Code:
    <?php
    // ---Suche Praesidium---
    if ( !( $lesen trim$suchtext ) ) )
         {
        echo 
    "";
         }
       elseif (
    $suchtext == "Suchbegriffe eingeben")
         {
         echo 
    "";
         }
    else
    {
      
    $key explode" "preg_replace"#[  ]+#i"" "$lesen ) );
      require(
    "../zugang/zugang.php");
      
    $verbindung mysql_pconnect($host$user$password);
      if(
    $verbindung)
     {
       if(
    mysql_select_db($dbase$verbindung))
             
    $sql "SELECT * FROM `praesidium`  WHERE  funktion like '%$key[0]%' or  verweis like '%$key[0]%'or name like '%$key[0]%'or vorname like '%$key[0]%'or strasse like '%$key[0]%'or ort like '%$key[0]%'or plz like '%$key[0]%' or tel like '$key[0]' or fax like '$key[0]' or email like '%$key[0]%'  ";
                 
    $count=count($key);
                 for (
    $x ;$x $count ;  ++$x)
                 
    $sql .=" or funktion like '%$key[$x]%' or  verweis like '%$key[$x]%'or name like '%$key[$x]%'or vorname like '%$key[$x]%'or strasse like '%$key[$x]%'or ort like '%$key[$x]%'or plz like '%$key[$x]%' or tel like '$key[$x]' or fax like '$key[$x]' or email like '%$key[$x]%'  ";

             
    $ergebnistmysql_query($sql,$verbindung);
             
    $ergebnis mysql_query($sql,$verbindung);
                  if (
    mysql_fetch_object($ergebnist)== "")
                  {
                  echo 
    "<center><table width='90%'><tr><td bgcolor='#FF9933'align='right' colspan='3'><div class='textmarker'>VORSTAND</div></td></tr>";
                  echo 
    "<tr><td  colspan='3'><span class='text'>Keine Einträge für <i>";
                          
    $count=count($key);
                          for ( 
    $x $x $count ; ++$x )
                          echo 
    "<b>" $key[$x] . "</b>&nbsp;";
                          echo 
    "</i> gefunden ...</span></td></tr></table>";
                   }
                else
                 {
                 if  (
    $ergebnis)

                  echo 
    "<center><table width='90%'>";
                  echo 
    "<tr><td bgcolor='#FF9933'align='right' colspan='3'><div class='textmarker'>VORSTAND</div></td></tr>";

                   while( 
    $zeile mysql_fetch_object($ergebnis))

                      {
                       echo 
    "<tr><td colspan='2' valign='top'><span class='text'>".$zeile->name."&nbsp;,&nbsp;".$zeile->vorname."&nbsp;...</span></td><td align='right'><a href='ergebnis_praesidium.php?suchen=".$zeile->verweis."'><span class='text'>...zeigen</span></a></td>";
                      }

                    echo 
    "</center></table>";
                  }
        
    mysql_close();
     }
    }
    ?>
    <?php
    // ---Suche Vorstand Praesidium---
    if ( !( $lesen trim$suchtext ) ) )
         {
        echo 
    "";
         }
       elseif (
    $suchtext == "Suchbegriffe eingeben")
         {
         echo 
    "";
         }
    else
    {
      
    $key explode" "preg_replace"#[  ]+#i"" "$lesen ) );
      require(
    "../zugang/zugang.php");
      
    $verbindung mysql_pconnect($host$user$password);
      if(
    $verbindung)
     {
       if(
    mysql_select_db($dbase$verbindung))
             
    $sql "SELECT * FROM `vorstand`  WHERE  funktion like '%$key[0]%' or  verweis like '%$key[0]%'or name like '%$key[0]%'or vorname like '%$key[0]%'";
                 
    $count=count($key);
                 for (
    $x ;$x $count ;  ++$x)
                 
    $sql .=" or funktion like '%$key[$x]%' or  verweis like '%$key[$x]%'or name like '%$key[$x]%'or vorname like '%$key[$x]%'";

             
    $ergebnistmysql_query($sql,$verbindung);
             
    $ergebnis mysql_query($sql,$verbindung);
                  if (
    mysql_fetch_object($ergebnist)== "")
                  {
                   echo 
    "<center><table width='90%'><tr><td bgcolor='#FF9933'align='right' colspan='3'><div class='textmarker'>PRÄSIDIUM</div></td></tr>";
                  echo 
    "<tr><td  colspan='3'><span class='text'>Keine Einträge für <i>";
                          
    $count=count($key);
                          for ( 
    $x $x $count ; ++$x )
                          echo 
    "<b>" $key[$x] . "</b>&nbsp;";
                          echo 
    "</i> gefunden ...</span></td></tr></table>";
                   }
                else
                 {
                 if  (
    $ergebnis)

                  echo 
    "<center><table width='90%'>";
                  echo 
    "<tr><td bgcolor='#FF9933'align='right' colspan='3'><div class='textmarker'>PRÄSIDIUM</div></td></tr>";

                   while( 
    $zeile mysql_fetch_object($ergebnis))

                      {
                       echo 
    "<tr><td colspan='2' valign='top'><span class='text'>".$zeile->name."&nbsp;,&nbsp;".$zeile->vorname."&nbsp;...</span></td><td align='right'><a href='ergebnis_praesidium.php?suchen=".$zeile->verweis."'><span class='text'>...zeigen</span></a></td>";
                      }

                    echo 
    "</center></table>";
                  }
        
    mysql_close();
     }
    }
    ?>
    <?php
    // ---Suche ERFOLGE---
    if ( !( $lesen trim$suchtext ) ) )
         {
        echo 
    "";
         }
       elseif (
    $suchtext == "Suchbegriffe eingeben")
         {
         echo 
    "";
         }
    else
    {
      
    $key explode" "preg_replace"#[  ]+#i"" "$lesen ) );
      require(
    "../zugang/zugang.php");
      
    $verbindung mysql_pconnect($host$user$password);
      if(
    $verbindung)
     {
       if(
    mysql_select_db($dbase$verbindung))
             
    $sql "SELECT * FROM `erfolge`  WHERE  saison like '%$key[0]%' or disziplin like '%$key[0]%' or wettbewerb like '%$key[0]%' or platz like '%$key[0]%' or verweis like '%$key[0]%' or sportler like '%$key[0]%' or verein like '%$key[0]%'";
                 
    $count=count($key);
                 for (
    $x ;$x $count ;  ++$x)
                 
    $sql .=" or saison like '%$key[$x]%' or disziplin like '%$key[$x]%' or wettbewerb like '%$key[$x]%' or platz like '%$key[$x]%' or verweis like '%$key[$x]%' or sportler like '%$key[$x]%' or verein like '%$key[$x]%' LIMIT 0,1";

             
    $ergebnistmysql_query($sql,$verbindung);
             
    $ergebnis mysql_query($sql,$verbindung);
                  if (
    mysql_fetch_object($ergebnist)== "")
                  {
                   echo 
    "<center><table width='90%'><tr><td bgcolor='#FF9933'align='right' colspan='3'><div class='textmarker'>ERFOLGE</div></td></tr>";
                  echo 
    "<tr><td  colspan='3'><span class='text'>Keine Einträge für <i>";
                          
    $count=count($key);
                          for ( 
    $x $x $count ; ++$x )
                          echo 
    "<b>" $key[$x] . "</b>&nbsp;";
                          echo 
    "</i> gefunden ...</span></td></tr></table>";
                   }
                else
                 {
                 if  (
    $ergebnis)

                  echo 
    "<center><table width='90%'>";
                  echo 
    "<tr><td bgcolor='#FF9933'align='right' colspan='3'><div class='textmarker'>ERFOLGE</div></td></tr>";

                   while( 
    $zeile mysql_fetch_object($ergebnis))

                      {
                       echo 
    "<tr><td colspan='2' valign='top'><span class='text'>".$zeile->sportler."&nbsp;,&nbsp;".$zeile->saison."&nbsp;...</span></td><td align='right'><a href='ergebnis_erfolge.php?suchen=".$zeile->sportler."'><span class='text'>...zeigen</span></a></td>";
                      }

                    echo 
    "</center></table>";
                  }
        
    mysql_close();
     }
    }
    ?>
    Wer kann helfen

  • #2
    also, ich zähle jetzt nicht bis zur Zeile 270!!

    aber irgendwoe davor (schätzungsweise 269) ?! muß der Fehler liegen. Stimmen in der dortigen abfrage die spaltennamen ?? Stimmt der Tabellenname ??

    gruss

    Kommentar


    • #3
      ja....

      wenn ich die leerzeichen usw. nicht eingebe funktionierts einwandfrei ...

      ich habe auch keine Änderungen in bezug auf replace vorgenommen (siehe Präsidium)


      ;-) sind nicht so viele zeilen, habe ein paar weggelasen

      Kommentar


      • #4
        kannst du deinen beitrag dann auf die entsprechenden zeilen kürzen ?? wenn du ein paar zeilen weggelassen hast, wird es noch schwieriger, die betreffende zeile zu finden

        Kommentar


        • #5
          bitte ....

          Ich habe nun nur noch das Abfragescript für ERFOLGE.

          PHP-Code:
          <?php
          // ---Suche erfolge---

          if ( !( $lesen trim$suchtext ) ) )
               {
              echo 
          "";
               }
             elseif (
          $lesen == "Suchbegriffe eingeben")
               {
               echo 
          "";
               }
          else
          {
            
          $key explode" "preg_replace"#[  ]+#i"" "$lesen ) );
            require(
          "../zugang/zugang.php");
            
          $verbindung mysql_pconnect($host$user$password);
            if(
          $verbindung)
           {
             if(
          mysql_select_db($dbase$verbindung))
                   
          $sql "SELECT * FROM erfolge  WHERE  saison like '%$key[0]%' or disziplin like '%$key[0]%' or wettbewerb like '%$key[0]%' or platz like '%$key[0]%' or verweis like '%$key[0]%' or sportler like '%$key[0]%' or verein like '%$key[0]%'";
                       
          $count=count($key);
                       for (
          $x ;$x $count ;  ++$x)
                       
          $sql .=" or saison like '%$key[$x]%' or disziplin like '%$key[$x]%' or wettbewerb like '%$key[$x]%' or platz like '%$key[$x]%' or verweis like '%$key[$x]%' or sportler like '%$key[$x]%' or verein like '%$key[$x]%' LIMIT 0,1";

                   
          $ergebnistmysql_query($sql,$verbindung);

          // zeile 270         

          $ergebnis mysql_query($sql,$verbindung);
           
          // ende

                       
          if (mysql_fetch_object($ergebnist)== "")
                        {
                         echo 
          "<center><table width='90%'><tr><td bgcolor='#FF9933'align='right' colspan='3'><div class='textmarker'>ERFOLGE</div></td></tr>";
                        echo 
          "<tr><td  colspan='3'><span class='text'>Keine Einträge für <i>";
                                
          $count=count($key);
                                for ( 
          $x $x $count ; ++$x )
                                echo 
          "<b>" $key[$x] . "</b>&nbsp;";
                                echo 
          "</i> gefunden ...</span></td></tr></table>";
                         }
                      else
                       {
                       if  (
          $ergebnis)

                        echo 
          "<center><table width='90%'>";
                        echo 
          "<tr><td bgcolor='#FF9933'align='right' colspan='3'><div class='textmarker'>ERFOLGE</div></td></tr>";

                         while( 
          $zeile mysql_fetch_object($ergebnis))

                            {
                             echo 
          "<tr><td colspan='2' valign='top'><span class='text'>".$zeile->sportler."&nbsp;,&nbsp;".$zeile->saison."&nbsp;...</span></td><td align='right'><a href='ergebnis_erfolge.php?suchen=".$zeile->sportler."'><span class='text'>...zeigen</span></a></td>";
                            }

                          echo 
          "</center></table>";
                        }
              
          mysql_close();
           }
          }
          ?>

          Kommentar


          • #6
            syntaxmässig is der SQL-String in ordnung... die spaltennamen stimmen auch ganz sicher ?? es sind keine unnötigen leerzeichen enthalten ??

            gruss

            Kommentar


            • #7
              Fehler eingeschränkt

              ... also ich denke der Fehler liegt in der Schleife

              aber wo ?
              PHP-Code:
              $count=count($key);
                           for (
              $x ;$x $count ;  ++$x)
                           
              $sql .="or saison like '%$key[$x]%' or disziplin like '%$key[$x]%' or wettbewerb like '%$key[$x]%' or platz like '%$key[$x]%' or verweis like '%$key[$x]%' or sportler like '%$key[$x]%' or verein like '%$key[$x]%' LIMIT 0,1"

              Kommentar


              • #8
                füge mal vor das OR in der Schleife ein leerzeichen ein!

                außerdem muß das limit aus der schleife raus, und darf erst anch dem durchlaufen der schleife angehängt werden.

                gruss

                Kommentar


                • #9
                  Fehler gefunden

                  LIMIT 0,1 - warum auch immer ist der fehler

                  Kommentar


                  • #10
                    sage ich ja, limit darf nur einmal vorkommen und dann auch nur am Ende des SQL-Statements.

                    Kommentar


                    • #11
                      Danke

                      ... läuft

                      Kommentar


                      • #12
                        puh...

                        siehste, wäre doch gelacht

                        Kommentar

                        Lädt...
                        X