tabellen abfrage von mysql-db über php

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

  • tabellen abfrage von mysql-db über php

    Hallo Hallo ,
    also nur mal vorneweg ich habe gesucht ,gelesen und probiert und das
    Problem existiert immernoch und jetzt hätt ich gern nen Stoß in die richtige
    Richtung

    mein Prob
    1.Lamp system (wenig ahnung )
    2.mysql DB fertig und im großen und ganzen funktionstüchtig
    3.PHP Seiten laufen auch bis auf eins das Suchformular und da fangen die
    Schwierigkeiten an
    meine Datenbank inventar hat mehrere Tabellen
    wenn ich von meiner suchseite auf nur eine tab zugreife no prob
    läuft wie geschmiert
    wenn ich aber über die eine auf die andere zugreife

    die tabellen sind Ort ( Onr,Ort )
    Gerät (ID,Invnr,Bez,Onr,Raum,usw)

    session start auf jeder Seite sonst läuft der Spaß ja nicht

    erste Seite inv_suche.php

    PHP-Code:
     print "<form method=\"post\" action=\"inv_su_aus_f1.php\">";  
    print 
    "<table><tr><td>
                 <input type\"taxt\" name\"ortsuche\">
              </td></tr></table>"

    zweite Seite inv_su_aus_f1.php

    PHP-Code:
    $suche1="select * from Gerät"
     if(
    $ortsuche != "" 
         { 
          $ 
    suche2="WHERE Ort= ".$ortsuche
          } 
    die suche wird am ende zusammengesetzt, und die Variablen sind initialisierrt daran liegt es nicht
    wie gesagt eine andere Abfrage auf dem selben level funktioniert und das
    einzige was anders ist ist die das diese abfrage sich nur auf eine tabelle bezieht

    also a little bit hilfe wäre nett auch wenn diese frage schon beantwortet
    wurde auf anderer Seite aber nach suchen in hunderten seiten seh ich
    den Wald vor lauter Bäumen nich mehr
    möge der Himmel mir beistehn und die Götter anflehn ,das mir gewogen sind Computer und Lebenssinn

  • #2
    die tabelle heisst doch nicht wirklich gerät oder?

    und benutze bitte mal $_POST['name_der_var'];
    h.a.n.d.
    Schmalle

    http://impressed.by
    http://blog.schmalenberger.it



    Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
    ... nur ohne :-)

    Kommentar


    • #3
      doch doch die Tabelle heist Gerät

      und ich habe die Variablen schon initialisiert am Anfang der Seite

      PHP-Code:
      $ortsuche =HTTP_POST_VARS["ortsuche"]; 
      also kann ich sie ja benutzen
      daran liegt es leider nicht
      sorry
      möge der Himmel mir beistehn und die Götter anflehn ,das mir gewogen sind Computer und Lebenssinn

      Kommentar


      • #4
        PHP-Code:
           <input type\"taxt\" name\"ortsuche\">
        //wie wärs mit type=text statt type taxt 
        mfg
        marc75

        <Platz für anderes>

        Kommentar


        • #5
          Peinlich peinlich aber was soll ich sagen
          der Tag war lang und meine Finger vertippen sich gern
          das wars leider auch nicht

          tut mich leid trotzdem danke
          möge der Himmel mir beistehn und die Götter anflehn ,das mir gewogen sind Computer und Lebenssinn

          Kommentar


          • #6
            Original geschrieben von seneth
            doch doch die Tabelle heist Gerät

            und ich habe die Variablen schon initialisiert am Anfang der Seite

            PHP-Code:
            $ortsuche =HTTP_POST_VARS["ortsuche"]; 
            also kann ich sie ja benutzen
            daran liegt es leider nicht
            sorry
            sicher, daß da was drinsteht?
            Die Zeit hat ihre Kinder längst gefressen

            Kommentar


            • #7
              nu ja ich denke schon
              weil wenn ich mit Onr abfrage gehts ja weil die nummer auch in der Geräte
              Tabelle steht darum dachte ich mach die Abfrage anders

              PHP-Code:
              suche1=select *from Gerät;
                 if (
              $ortsuche != "")
                       {
                         
              suche2=" WHERE Gerät.Onr=Ort.Onr and Ort= ".$Ortsuche;
                       } 
              geht auch nichthat er die Tabelle Ort nicht erkannt
              also ok hab ihm die Tabelle auch noch in die select geschrieben
              sagt er wieder column='Plauen' nicht erkannt

              hab ich weiter gesucht und inner join danach outer join usw
              ausprobiert wie gesagt nach ein paar hundert Seiten mit Tips und Tricks
              seh ich keine Fehler mehr ich glaub ich brauch ne Pause
              möge der Himmel mir beistehn und die Götter anflehn ,das mir gewogen sind Computer und Lebenssinn

              Kommentar


              • #8
                hmm,

                leider gelingt es mir nicht wirklich, deinen gebrabbel (sorry) irgend eine information zu entnehmen ...

                alle geräte eines orts? sollten sich mit nem join finden lassen ...

                PHP-Code:
                ... " Ort= '".$Ortsuche."'"
                Die Zeit hat ihre Kinder längst gefressen

                Kommentar


                • #9
                  mir fällt auf, dass jedes mal wenn du was angibst, sind noch mehr Fehler zu sehen. Also warum postest du nicht einfach deine echte Quellcode, oder ist das ein Staatsgeheimnis z.B. mal schreibst du $suche1= dann suche1=, ausserdem eine Spalte von einer anderen Tabelle in Where-Klausel einzubauen, ohne die Tabelle in From anzusprechen, geht ja auch nicht. Ach ja wie soll denn das Formular was senden, wenn sowas wie
                  PHP-Code:
                  <input type"taxt\" name\"ortsuche\"> 
                  steht. Besser wäre:
                  PHP-Code:
                  print "<input type=\"text\" name=\"ortsuche\">"
                  IMHO muss du Gerät in [] reinpacken. Ort ist vom Typ String, also auch in '' rein:
                  PHP-Code:
                  $suche1="select * from [Gerät]";
                  if (isset(
                  $_POST['ortsuche']))
                  {
                  $suche2=",Ort WHERE [Gerät].Onr=Ort.Onr and Ort.Ortsname='".$_POST['ortsuche']."'";

                  Kommentar


                  • #10
                    OK ich sehs ja ein ,der Tag war aber wirklich seeeehr lang

                    ich versuch snoch mal hier is der code

                    Seite 1 -SuchFormular
                    PHP-Code:
                    <?php
                        
                    //Tabellenausgabe Suche
                        
                    session_start();
                        print 
                    "<html><head><title>Suche</title><meta http-equiv=\"Content-Type\" content=\"text/html charset=iso-8859-1\"></head>";
                        print 
                    "<body bgcolor=\"#10FF88\">";
                        print 
                    "<div align=\"center\">";
                        print 
                    "<p>&nbsp;</p>";

                        print  
                    "<table width=\"75%\" border=\"1\">";
                        print    
                    "<form method=\"post\" action=\"inv_su_aus_f1.php\">";
                        print     
                    "<tr>";
                        print      
                    "<td>Ort</td>";
                        print      
                    "<td>";
                        print        
                    "<input type=\"text\" name=\"ortsuche\">";
                        print      
                    "</td>";
                          ...
                        print     
                    "</tr>";
                        print    
                    "</form>";
                        print  
                    "</table>";
                        print  
                    "</div>";
                    ?>
                    und nun Seite 2-Abfragen

                    PHP-Code:
                    <?php
                    session_start
                    ();

                    //Variable definieren
                        
                    $ortsuche   $HTTP_POST_VARS["ortsuche"];
                        
                    $raumsuche  $HTTP_POST_VARS["raumsuche"];
                                     ...
                    // Variable fuer Loeschen und Bearbeiten
                         
                    $idf2        $HTTP_POST_VARS["idf"]; //Feld id
                        
                    $inrf2        $HTTP_POST_VARS["inrf"]; //Feld inr
                        
                    $snrf2        $HTTP_POST_VARS["snrf"]; //Feld snr
                        
                    $ortf2            $HTTP_POST_VARS["ortf"]; //Feld ort
                                      
                    ... 

                    // Verbindung zur DB herstellen

                          
                    If ($frmausg = @mysql_connect($HTTP_SESSION_VARS["sdb_server"],$HTTP_SESSION_VARS                        ["sdb_user"],$HTTP_SESSION_VARS["sdb_password"]))
                            {
                                print 
                    "<center>Verbindung zum MySQL-Server erfolgreich<br>\n";
                                print 
                    "Ihre Session - ID: ".$HTTP_POST_VARS["PHPSESSID"]."<br></center>\n";
                                If (
                    $db_select mysql_select_db($HTTP_SESSION_VARS["sdb_name"],$frmausg))
                                {
                                    print 
                    "<center>Auswahl der Datenbank erfolgreich</center>\n";
                                }
                                else
                                {
                                    print 
                    "<center>Datenbank konnte nicht ausgew&auml;hlt werden.<br>\n";
                                    print 
                    "Fehlermeldung: ".mysql_error."<br>\n";
                                    print 
                    "Fehlernummer: ".mysql_errno."<br></center>\n";
                                    exit;
                                }

                            }
                            else
                            {
                                print 
                    "<center>Keine Verbindung m&ouml;glich<br>\n";
                                print 
                    "Fehlermeldung: ".mysql_error."<br>\n";
                                print 
                    "Fehlernummer: ".mysql_errno."<br></center>\n";
                                exit;
                            }



                     
                    // Erzeugen der MySQL-Abfrage

                     
                    $suche1 "SELECT * FROM Gerät ";
                        If (
                    $ortsuche != "")
                           {
                               
                    $suche2 "WHERE Onr = ".$ortsuche;
                           }

                         ...

                    //zum verständnis die Abfrage
                      
                    $abfrage $suche1.$suche2.$suche3.$suche4.$suche5.$suche6." ORDER BY 'id'";
                    meine xter versuch der suche war
                    PHP-Code:
                     $suche1 "SELECT * FROM Gerät ";
                        If (
                    $ortsuche != "")
                           {
                               
                    $suche2 ",Ort WHERE Gerät.Onr=Ort.Onr and Ort.Ort = ".$ortsuche;
                           } 
                    dann hatte ich noch einen Versuch mit InnerJoin
                    und einen mit Outer Join

                    aber das ergebnis war meist
                    Anfrage fehlgeschlagen: Unknown column 'Plauen' in 'Where clause'

                    ich hoffe das war diesmal verständlicher also fals euch nioch was einfällt
                    ich probier jetzt erstmal einpaar änderungen
                    cu
                    möge der Himmel mir beistehn und die Götter anflehn ,das mir gewogen sind Computer und Lebenssinn

                    Kommentar


                    • #11
                      Hallo noch mal
                      es läuft danke allen beteiligten die Lösung war

                      PHP-Code:

                      $suche1
                      ="select * from Gerät";
                         If (
                      $ortsuche != "")
                             {
                                
                      $suche2=",Ort WHERE Gerät.Onr=Ort.Onr and Ort.Ort= '".$Ortsuche."'";
                             } 
                      es sind eben doch immer die Kleinigkeiten
                      also Danke nochmal asp2php und der Hund
                      eure hinweise waren sehr nützlich
                      auch wenn ich das gestern abend nicht mehr überzogen hab

                      cu seneth
                      möge der Himmel mir beistehn und die Götter anflehn ,das mir gewogen sind Computer und Lebenssinn

                      Kommentar


                      • #12
                        noch was

                        versuchst mal alles in Englisch zu halten, von Tabellennamen,
                        Spaltnnamen, bis hin zu den Variablen in PHP (und Namenskonvention
                        nicht vergessen) und nach Möglichkeit die Kommentare im Code auch in
                        Englisch. Somit kommst du selten in schwierigkeiten mit Sonderzeichen &
                        Co. Ausserdem es ist leichter für dein Nachfolger, den Sinn des Codes zu
                        verstehen. Ausserdem siehts auch im Code viel schöner aus. Ich hasse es,
                        wenn ich im Code varName in irgendeine andere Sprache als Englisch sehe

                        Kommentar


                        • #13

                          Och menno muß das sein
                          ich kann doch nix english

                          und ja variablen namen usw
                          mea culpa ich werde mich bessern ehrlich

                          cu
                          möge der Himmel mir beistehn und die Götter anflehn ,das mir gewogen sind Computer und Lebenssinn

                          Kommentar


                          • #14
                            Original geschrieben von seneth
                            ich kann doch nix english
                            http://dict.leo.org
                            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
                              Original geschrieben von seneth

                              Och menno muß das sein
                              ich kann doch nix english
                              dann wird aber langsam Zeit, englisch zu lernen, denn Programmierer und kein Englisch, das haut nie hin, ausserdem im open source Bereich ist das meiste in Englisch, wenn du auf die deutsche Übersetzung wartest, bist du mit deinem Kenntnissen schon hinterm Mond.

                              Kommentar

                              Lädt...
                              X