Ankündigung

Einklappen
Keine Ankündigung bisher.

Fehler bei einer Datenbank-Abfrage

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

  • Fehler bei einer Datenbank-Abfrage

    Folgendes liegt vor :

    Eine Datenbank enthält eine Liste mit Modellen von verschiedenen
    Konstrukteuren aus verschiedenen Kategorien.

    Solange ich keine gezielte Auswahl treffe, wird die Liste korrekt
    angezeigt.
    Wenn ich aber die Anzeige auf einen bestimmten Kon oder eine
    bestimmte Kategorie beschränken will, erhalte ich folgende
    Fehlermeldung :
    Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in C:\Programme\xampp\htdocs\Dettmann\eep_free_list.p hp on line 36

    Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in C:\Programme\xampp\htdocs\Dettmann\eep_free_list.p hp on line 45
    Die zugehörigen Codes sehen wie folgt aus :

    1. Auswahl (verkürzt)
    PHP-Code:
    <form action="eep_free.php?do=1" method="post">
      <
    strong>Kategorie w&auml;hlen : </strong>
      <
    select name="kat" size="1">
        <
    option>alle</option>
        <
    option>Rollmaterial</option>
        <
    option>Gleisobjekte</option>
      </
    select>
      <
    strongKonstrukteur w&auml;hlen : </strong>
      <
    select name="kon" size="1">
        <
    option>alle</option>
        <
    option>AB2</option>
        <
    option>AD1</option>
        </
    p>
      </
    select>
      <
    input type="submit" value="Anzeigen">
    </
    form
    2. Vorbereitung (eep_free.php)
    PHP-Code:
    $kat $_POST["kat"];
    $kon $_POST["kon"];
    include (
    "include/db_connecteep.inc.php");
    if (
    $kat == "alle" and $kon == "alle")
      {
      
    $sort "";
      include (
    "eep_free_list.php");
      }
    if (
    $kat != "alle" and $kon == "alle")
      {
      
    $sort "kat = '$kat'";
      include (
    "eep_free_list.php");
      }
    if (
    $kat == "alle" and $kon != "alle")
      {
      
    $sort "kon = '$kon'";
      include (
    "eep_free_list.php");
      } 
    3. Datenbank-Abfrage (eep_free_list.php)
    PHP-Code:
    <?php
    if ($sort == "")
      {
      
    $query "SELECT * FROM eep_free ORDER BY name limit {$query_string}";
      }
    else
      {
      
    $query "SELECT * FROM eep_free ORDER BY name WHERE $sort limit {$query_string}";
      }
    $result mysql_query($query);

    ?>
    <table>
    <?php
    while($row mysql_fetch_object($result))  //Zeile 36
      
    {
      print 
    give_style($row->name$row->text);
      }
    ?>
    </table>
    <br>
    <?php

    mysql_free_result
    ($result);  //Zeile 45
    ?>
    Ich habe jetzt seit zwei Tagen nach einem Fehler gesucht.
    Mittlerweise fange ich an, in den Codes kleine grüne Männchen
    zu sehen.

    Erkennt hier jemand den/die Fehler in der Codierung ?
    Wenn ja, bitte umgehend Bescheid geben, bevor ich noch
    wahnsinnig werde ( ).

    Gruß, Mike
    sigpic
    Mike's EEP-Welt CSC Oldenburg
    Link-Sammlung Smily-Sammlung

  • #2
    AW: Fehler bei einer Datenbank-Abfrage

    Bist du sicher, dass die MySQL-Verbindung steht? Sicher, dass die Tabelle existiert?

    Hinter jeder MySQL-Funktion einfach "or die(mysql_error());" schreiben.
    Spielerei
    Dokus: SelfHTML, CSS4you, PHP.net
    Validatoren: Validome xHTML / XML Validator, W3C CSS Validator, FeedValidator (RSS, ATOM)

    Kommentar


    • #3
      AW: Fehler bei einer Datenbank-Abfrage

      Gib auch bitte mal in Zeile 35 ein:

      echo $result;

      Damit man sieht ob dort alles richtig drin gespeichert wird
      Meine neue private Homepage ist fertig. Es wird um Meinungen, Anregungen, Kritik und Gästebucheinträge gebeten: http://markus.ug-team.de

      Kommentar


      • #4
        AW: Fehler bei einer Datenbank-Abfrage

        PHP-Code:
          $query "SELECT * FROM eep_free ORDER BY name WHERE $sort limit {$query_string}"
        Was ist denn das für eine Abfrage?
        Erstens: WHERE-Bedingung kommt vor die ORDER-Abfrage
        Zweitens: Was soll WHERE $sort bedeuten? Was steht in $sort drin?
        Drittens: Vielleicht hilft es ja mal die Variablen zu escapen

        Kommentar


        • #5
          AW: Fehler bei einer Datenbank-Abfrage

          @FloB

          Die Verbindung besteht, die Datenbank existiert.
          Sonst würde ich ja wohl bei einer Abfrage ohne
          Auswahl-Kriterien keine Anzeige bekommen.
          Hinter jeder MySQL-Funktion einfach "or die(mysql_error());" schreiben.
          Siehe dazu
          PHP-Code:
          $ergebnis mysql_query($sqlabfrage) or die("Fehler in SQL-Abfrage!"); 
          Es wird kein Fehler bezüglich Datenbank-Zugriff angezeigt.

          @Laire

          Da ich bei Abfrage ohne Auswahl-Kriterien eine Anzeige
          erhalte, müssen die Einträge ja wohl korrekt sein.

          @No0oB

          Hättest du meinen ersten Post gelesen, dann wüßtest du es.
          Hier noch einmal zur Erinnerung :
          PHP-Code:
          $kat $_POST["kat"]; 
          $kon $_POST["kon"]; 
          include (
          "include/db_connecteep.inc.php"); 
          if (
          $kat == "alle" and $kon == "alle"
            { 
            
          $sort ""
            include (
          "eep_free_list.php"); 
            } 
          if (
          $kat != "alle" and $kon == "alle"
            { 
            
          $sort "kat = '$kat'"
            include (
          "eep_free_list.php"); 
            } 
          if (
          $kat == "alle" and $kon != "alle"
            { 
            
          $sort "kon = '$kon'"
            include (
          "eep_free_list.php"); 
            } 
          Ich habe bereits andere Abfragen (ohne Variablen) auf die gleiche Weise
          ausgeführt. Die Reihenfolge hat hierbei nie eine Rolle gespielt.

          @all

          Ich vermute, daß der Fehler in der Abfrage zu finden ist.
          Denn bei
          PHP-Code:
          $query "SELECT * FROM eep_free ORDER BY name limit {$query_string}"
          gibt es keinerlei Probleme, während bei
          PHP-Code:
          $query "SELECT * FROM eep_free ORDER BY name WHERE $sort limit {$query_string}"
          der im ersten Post genannte Fehler auftritt.

          Bitte weitere Anregungen. Danke.

          Gruß, Mike
          sigpic
          Mike's EEP-Welt CSC Oldenburg
          Link-Sammlung Smily-Sammlung

          Kommentar


          • #6
            AW: Fehler bei einer Datenbank-Abfrage

            trag mal bitte in das Query statt deiner variablen direkt den eigentlichen Inhalt deiner variablen ein und guck obs dann geht.
            Wenn ja dann liegt der Fehler bei der Übergabe der Variablen an das Query.


            Ich hab die Syntax anders gelernt. Ich unterbreche eigentlich immer an den Stellen wo Variablen stehen das Query, füge die variablen ein und setze dann fort.

            Also so in etwa: "Select * from tabelle Where id='" . $gesuchte_id . "' Sort by gelb";
            nicht von mir gemacht, nur von mir empfohlen:
            Die Goldenen Regeln für Schlechtes HTML
            :gott: SelfHTML
            Farben - Lehre, Wirkung, Harmonie

            Kommentar


            • #7
              AW: Fehler bei einer Datenbank-Abfrage

              @Blues

              Mir ist aufgefallen das dein Code keine Leerzeichen aufweist.
              Bei mir
              PHP-Code:
              kat '$kat' 
              stehen Leerzeichen. Kann hier der Fehler liegen ?

              Gruß, Mike
              sigpic
              Mike's EEP-Welt CSC Oldenburg
              Link-Sammlung Smily-Sammlung

              Kommentar


              • #8
                AW: Fehler bei einer Datenbank-Abfrage

                kurz noch: woher kommt die variable $query_string?

                fang am besten langsam an:

                1. error_reporting(E_ALL|E_STRICT);
                2. var_dump($_POST);
                3. lass dir deine querys per echo ausgeben (damit die variablen aufgelöst werden) und führ sie unter zuhilfe name von phpmyadmin aus.
                4. es hilft auch immer, seine querys zurückzuentwickeln, streiche also einfach testweise alle WHERE, SORT usw. bedingungen, allerdings eins nach dem anderen. so kannst du den fehler einkreisen....

                gruß
                AC/DC Fanpage www.ifyouwantblood.de
                Nein zur Zensur im Internet und anderswo - Anonymous

                Kommentar


                • #9
                  AW: Fehler bei einer Datenbank-Abfrage

                  Hi all,

                  ich habe jetzt mal alle möglichen Varianten ausprobiert.
                  Sogar eine direkt eingegebene Abfrage
                  PHP-Code:
                  $query "SELECT * FROM eep_free WHERE kon = AB2 ORDER BY name limit {$query_string}"
                  ergab die selbe Fehler-Meldung.

                  @Brian

                  Betreffs der Herkunft von $query_string :
                  PHP-Code:
                  $query mysql_query("SELECT * FROM eep_free");
                  $result mysql_num_rows($query);
                  $entries_per_page '10';
                  $pages ceil($result $entries_per_page);

                  if (empty(
                  $_GET['seite']))
                    {
                    
                  /* Unsere Defaultabfrage */
                    
                  $query_string $entries_per_page;
                    }
                  else
                    {
                    
                  /* Es wurde eine Seite gewählt */
                    
                  $the_start $_GET['seite'] * $entries_per_page $entries_per_page;
                    
                  $query_string $the_start.','.$entries_per_page;
                    } 
                  @all

                  So bald ich die Ausgabe eingrenzen will auf bestimmte Kategorien
                  oder bestimmte Kons, benötige ich die "WHERE"-Angabe.
                  Diese wird aber so nicht angenommen.

                  So langsam beschleicht mich das Gefühl, diese Codierung mag
                  mich nicht.

                  Was kann ich jetzt noch ändern / testen

                  Gruß, Mike
                  sigpic
                  Mike's EEP-Welt CSC Oldenburg
                  Link-Sammlung Smily-Sammlung

                  Kommentar


                  • #10
                    AW: Fehler bei einer Datenbank-Abfrage

                    Um das AB2 sollten Anführungszeichen kommen, sofern das ein String sein soll

                    Kommentar


                    • #11
                      AW: Fehler bei einer Datenbank-Abfrage

                      @No0oB

                      AB2 ist ein direkter Begriff, kein String.
                      Daher werden hier keine Anführungszeichen benötigt.

                      Gruß, Mike
                      sigpic
                      Mike's EEP-Welt CSC Oldenburg
                      Link-Sammlung Smily-Sammlung

                      Kommentar


                      • #12
                        AW: Fehler bei einer Datenbank-Abfrage

                        Und was für ein Datentyp ist es?
                        Auch bei varchar werden diese gesetzt

                        Kommentar


                        • #13
                          AW: Fehler bei einer Datenbank-Abfrage

                          Zitat von sheeba1507 Beitrag anzeigen
                          Hi all,

                          ich habe jetzt mal alle möglichen Varianten ausprobiert.
                          Sogar eine direkt eingegebene Abfrage
                          PHP-Code:
                          $query "SELECT * FROM eep_free WHERE kon = AB2 ORDER BY name limit {$query_string}"
                          ergab die selbe Fehler-Meldung.
                          wenn ich direkt als "manuell" verstehe, ist die abfrage falsch...wie lautet die fehlermeldung?

                          Was kann ich jetzt noch ändern / testen
                          wie gesagt, das zurückentwickeln des querys...

                          PHP-Code:
                          $query "SELECT * FROM eep_free ORDER BY name"
                          PHP-Code:
                          $query "SELECT * FROM eep_free limit {$query_string}"
                          PHP-Code:
                          $query "SELECT * FROM eep_free"
                          eins nach dem anderen probieren. was nicht funktioniert, sollte den fehler behalten.
                          hilfreich ists auch, wie schon gesagt, das ganze in phpmyadmin zu prüfen...
                          AC/DC Fanpage www.ifyouwantblood.de
                          Nein zur Zensur im Internet und anderswo - Anonymous

                          Kommentar


                          • #14
                            AW: Fehler bei einer Datenbank-Abfrage

                            @Brain

                            Die Abfrage soll alle Modelle des Kons AB2 anzeigen.
                            Die Fehlermeldung lautet
                            Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in C:\Programme\xampp\htdocs\Dettmann\eep_free_list.p hp on line 36

                            Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in C:\Programme\xampp\htdocs\Dettmann\eep_free_list.p hp on line 45
                            Das zurückentwickeln des querys habe ich gemacht.
                            Es werden keine Fehler angezeigt.
                            Lediglich bei der Verwendung von WHERE tritt der Fehler
                            wieder auf.

                            Gruß, Mike
                            sigpic
                            Mike's EEP-Welt CSC Oldenburg
                            Link-Sammlung Smily-Sammlung

                            Kommentar


                            • #15
                              AW: Fehler bei einer Datenbank-Abfrage

                              Hast du die Variablen mal escaped?

                              Kommentar

                              homepage-forum.de - Hilfe für Webmaster! Statistiken

                              Einklappen

                              Themen: 57.196   Beiträge: 431.999   Mitglieder: 29.635   Aktive Mitglieder: 29
                              Willkommen an unser neuestes Mitglied, michael50.

                              Online-Benutzer

                              Einklappen

                              698 Benutzer sind jetzt online. Registrierte Benutzer: 2, Gäste: 696.

                              Mit 9.939 Benutzern waren am 17.05.2023 um 21:38 die meisten Benutzer gleichzeitig online.

                              Die neuesten Themen

                              Einklappen

                              Die neuesten Beiträge

                              Einklappen

                              • daniel5959
                                Antwort auf Header Problem css
                                Hallo,

                                CSS ist nicht mein Ding, das war es vor über 15 Jahren nicht und wird es auch nicht mehr werden.

                                Inzwischen nehme ich einfach ein PC-Programm, das mir den Code im Hintergrund zusammenstellt, das fertige Templates mitbringt und konzentriere mich auf den Inhalt der Seite....
                                Heute, 21:22
                              • michael50
                                Header Problem css
                                Hallo

                                Ich habe folgendes Problem ich habe einen feststehenden Header.
                                https://www.webdesignforum.com/
                                Beispiel

                                Die Schrift soll beim Scrollen verschwinden.
                                Doch wenn ich scrolle sehe ich die im Header.
                                Kann mir jemand sagen wie ich das so machen kann...
                                Gestern, 18:38
                              • Sempervivum
                                Antwort auf Header Problem css
                                Wenn dieser kopiert wird, ohne ihn zu verstehen, ist der Lerneffekt gleich Null. Besser die Grundlagen lernen und den Code selbst entwickeln.
                                Es gibt auch genügend Quellen, die die Grundlagen vermitteln und den Leser in die Lage versetzten, den Code zu verstehen. Z. B. hier für CSS:
                                htt...
                                Heute, 20:42
                              • daniel5959
                                Antwort auf Header Problem css
                                Hallo,



                                es wär schön mal einen Beispiel-Code zu präsentieren, der auch funktioniert.

                                Die ganzen schlauen Seiten der CSS-Experten, die sich bei Google finden lassen, verschweigen leider immer das Wichtigste bzw. setzen es als bekannt voraus, so dass sich deren...
                                Heute, 17:09
                              • bodan
                                Antwort auf Lassen sich mit Wärmedämmung und Wärmepumpe Kosten sparen?
                                hallo und guten Tag,



                                Arnego:

                                ich denke auch, dass man sich halt echt entscheiden muss - ob man prinzipiell eher der Aufgabe stellt - oder nicht.

                                Klar, sind auch die anderen gefragt: aber schon bei uns hier in Mitteleurpa kipppen die Wetterlagen...
                                Heute, 14:44
                              • daniel5959
                                Lassen sich mit Wärmedämmung und Wärmepumpe Kosten sparen?
                                Hallo,

                                wer hat Zahlen für die Zeit vor und nach der Fassadendämmung und / oder dem Einbau einer Wärmepumpenheizung?

                                Für mein altes Häuschen habe ich online die ungefähren Kosten einer energetischen Gebäudesanierung berechnen lassen.



                                Selbst...
                                26.05.2023, 06:06
                              • Sempervivum
                                Antwort auf Header Problem css
                                Ich verstehe das nicht ganz, mit der Schrift meinst Du doch wahrscheinlich die der übrigen Seite und die tut was Du willst, sie verschwindet beim Scrollen unter dem Header.

                                daniel5959 Ein fixed oder sticky Header gehört zu den Grundlagen und ist einfach zu realisieren. Deine Lösung, den...
                                Heute, 05:43
                              • daniel5959
                                Antwort auf Header Problem css
                                Anmerkung:

                                Mein Beitrag wurde vom Spamfilter blockiert, aber den HTML-/CSS-Code für einen fixierten Header mit farbigem Hintergrund, damit der gescrollte Text nicht im Header sichtbar wird, kann auf meiner Testseite in der Quelltextansicht angesehen und kopiert werden.

                                >>...
                                Heute, 01:41
                              • daniel5959
                                Antwort auf Header Problem css
                                Hallo,

                                eine englische Seite ohne Impressum und kein Text im Header zu sehen - Linkspammer?

                                Falls wirklich Interesse an einem fixiertem Header (Kopfbereich) mit farbigem Hintergrund besteht.

                                Ich bin kein CSS-Experte und habe mal bei Google gesucht, mir dabei viele...
                                Heute, 01:33
                              • Lupus_III
                                Antwort auf Lassen sich mit Wärmedämmung und Wärmepumpe Kosten sparen?
                                Ich habe schon viele Bäume gepflanzt. Unter einigen stelle ich im Sommer meine Sonnenliege auf. ...
                                27.05.2023, 10:16
                              Lädt...
                              X