[MySQL] abfrage funktion

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

  • [MySQL] abfrage funktion

    Hi !

    Ich wollte eine Function schreiben in der von mehreren Tabellen abgefragt werden kann und als ergebnis ein array zurück gegeben wird das den angeforderten Inhalt trägt.

    Leider komme ich nicht drauf wie man ein Array ohne Zusatzvariable erstellt ... also Funktion sieht folgendermaßen aus:

    PHP-Code:
    require("db_connect.php");

    function 
    read($sql_ausgabe$sql_table$sql_where){
        
    $sql "SELECT ".$sql_ausgabe." FROM ".$sql_table." WHERE ".$sql_where;
        
    $result mysql_query($sql);
    // und hier wirds problematisch :)
        
    while($row mysql_fetch_assoc($result)){
            return 
    $row;
            }
        }

    echo 
    read("name""user""id=1"); 
    Hat irgendwer einen Vorschlag für mich wie ich das hinbekomme ?

    Danke schonmal im Voraus !

  • #2
    PHP-Code:
    $arr = array();
    while(...){
      
    $arr[] = ...;
    }
    return 
    $arr

    Kommentar


    • #3
      meinst du sowas?
      PHP-Code:
      function read($sql_ausgabe$sql_table$sql_where){
          
      $resultarray = array();
          
      $sql "SELECT ".$sql_ausgabe." FROM ".$sql_table." WHERE ".$sql_where;
          
      $result mysql_query($sql);
      // und hier wirds problematisch <img src="images/smilies/smile.gif" border="0" alt="">
          
      while($row mysql_fetch_assoc($result)){
                   
      $resultarray[] = $row;
           }
           return 
      $resultarray;

      ansonsten erklär noch mal genau wo das Problem liegt

      mfg Markus

      EDIT:

      zu langsam

      Kommentar


      • #4
        ...Ich bekomme bei der Abfrage

        PHP-Code:
        require("_config.php");

        function 
        read($sql_ausgabe$sql_table$sql_where){
            
        $resultarray = array();
            
        $sql "SELECT ".$sql_ausgabe." FROM ".$sql_table." WHERE ".$sql_where.";";
            
        $result mysql_query($sql);
            while(
        $row mysql_fetch_assoc($result)){
                     
        $resultarray[] = $row;
             }
             return 
        $resultarray;
        }
        $data = array();
        $data[] = read("name","user","id='2'");
        echo 
        "user: " $data["name"]; 
        ...leider keinen Rückgabewert.... worann kann denn dass liegen ?
        Zuletzt geändert von LiThiUm; 01.02.2007, 21:38.

        Kommentar


        • #5
          was ist der rückgabewert von read()?

          Kommentar


          • #6
            Array

            Kommentar


            • #7
              richtig. wo steckst du dieses hinein? will sagen: unter welchem variablennamen ist das erreichbar, was read() zurückgab?

              Kommentar


              • #8
                Um es noch deutlicher zu formulieren
                PHP-Code:
                echp '<pre>';
                print_r($data);
                echo 
                '</pre>'
                Ich denke, also bin ich. - Einige sind trotzdem...

                Kommentar


                • #9
                  ...wie du oben siehst wir dieser wert in $data gespeichert und anschließend $data["irgendwas"] abgefragt

                  Kommentar


                  • #10
                    nein, das ist nicht so. sieh noch mal genau hin.
                    und überlege dir, wozu das gut sein soll, was du da zusammengewürfelt hast.

                    Kommentar


                    • #11
                      und das gibt natürlich auch Array aus weil es als solches definiert wurde und eine angabe braucht also $data["irgendwas"]
                      ...aber das sollte klar sein oder ?

                      Kommentar


                      • #12
                        @penizilin: ich schau da schon so lange hin und probiere rum dass ich mittlerweile keine lust mehr drauf hab

                        ...aber wenn du mir helfen kannst wär ich froh drum

                        Kommentar


                        • #13
                          Wenn das die Antwort auf meinen Beitrag war: Poste bitte die Ausgabe

                          Wenn nicht: Schreibe meinen Code unter deinen Code und schau's dir an
                          Ich denke, also bin ich. - Einige sind trotzdem...

                          Kommentar


                          • #14
                            @mrhappieness:

                            PHP-Code:
                            Array
                            (
                                [
                            0] => Array
                                    (
                                    )


                            ...und was sagt uns das ??? ...ich hab keinen plan... ich geh jetzt hier gleich ein..echt
                            Zuletzt geändert von LiThiUm; 01.02.2007, 21:37.

                            Kommentar


                            • #15
                              PHP-Code:
                              function read($sql_ausgabe$sql_table$sql_where){
                                  
                              $resultarray = array();
                                  
                              $sql "SELECT ".$sql_ausgabe." FROM ".$sql_table." WHERE ".$sql_where.";";
                                  
                              $result mysql_query($sql);
                                  while(
                              $row mysql_fetch_assoc($result)){
                                           
                              $resultarray[] = $row;
                                   }
                                   return 
                              $resultarray;

                              Wenn diese Funktion ein leeres Array liefert, meinst du, das SELECT findet was?

                              Schreibe statt
                              PHP-Code:
                              $result mysql_query($sql); 
                              mal[echo $sql;
                              echo '<br />';
                              $result = mysql_query($sql) or die(mysql_error());[/php]Ausgabe?
                              Ich denke, also bin ich. - Einige sind trotzdem...

                              Kommentar

                              Lädt...
                              X