Klassen & Objekte: Anfängerfrage

Diskutiere mit über: Klassen & Objekte: Anfängerfrage im Web-Programmierung Forum

  1. Der_Jan

    Der_Jan Thread Starter MacUser Mitglied

    Beiträge:
    606
    Zustimmungen:
    7
    Registriert seit:
    06.01.2004
    Guten Abend,
    arbeite mich in Objekte und Klassen ein und brauche Rat. Möchte mittels der Klasse Profile MySQL-Abfragen organisieren und die Daten verarbeiten.
    Klar, brauche erstmal eine Verbindung zur MySQL und dann die Abfrage des entsprechenden Datensatzes. Das habe ich in der Funktion (bzw. Methode)
    DatenbankAbfrage realisiert.

    PHP:
    <?
    class 
    Profile {

    function 
    DatenbankAbfrage ($selecteduserid)
    {
    $request_user=mysql_query("SELECT id, vorname, nachname, land FROM user WHERE id='$selecteduserid'"); 
    $result_user=mysql_fetch_array($request_user); 
    }


    function 
    GetName ()
    {
    // Hier möchte ich nun das Array aus der Funktion DatenbankAbfrage verarbeiten, z.B. $result_user[vorname]
    }

    }

    ?>
    Habe versucht in der Funktion GetName auf $result_user[vorname] aus DatenbankAbfrage zuzugreifen. Funktioniert nicht. Kann man das irgendwie machen oder mache ich einen Gedankenfehler?

    Danke. :)
    Der Jan
     
  2. lol

    lol MacUser Mitglied

    Beiträge:
    1.469
    Zustimmungen:
    48
    Registriert seit:
    18.01.2006
    Ich habe zwar noch nicht in php objekt orientiert gearbeitet, daher kann ich dir nicht 100%ig sagen, was falsch ist.
    Aus C++ & Java sicht gesehen machst du vollgenden Fehler:
    Die Variable ist nur in der Funktion DBAbfrage definiert und nicht in der Klasse. Deswegen kannst du sie nur in der Funktion lesen und schreiben.
    Definiere also eine Klassenvariable, die aus jeder Funktion der Klasse les- und schreibbar ist.

    Das könnte so aussehen
    Code:
    <? 
    class Profile { 
    
    $result_user = null;
    
    function DatenbankAbfrage ($selecteduserid) 
    { 
    $request_user=mysql_query("SELECT id, vorname, nachname, land FROM user WHERE id='$selecteduserid'");  
    $result_user=mysql_fetch_array($request_user);  
    } 
    
    
    function GetName () 
    { 
    // Hier möchte ich nun das Array aus der Funktion DatenbankAbfrage verarbeiten, z.B. $result_user[vorname] 
    } 
    
    } 
    
    ?>
     
  3. hoppelmoppel

    hoppelmoppel MacUser Mitglied

    Beiträge:
    518
    Zustimmungen:
    2
    Registriert seit:
    12.04.2006
    zuerst mysql_connect, dann mysql_select_db, dann mysql_query
     
  4. hoppelmoppel

    hoppelmoppel MacUser Mitglied

    Beiträge:
    518
    Zustimmungen:
    2
    Registriert seit:
    12.04.2006
    zb sowas:

    Code:
    <?php
    class database
    {
            var $connectionID;
            var $result;
    
            function database($host, $user, $password)
            {
                    if (!$this -> connectionID = mysql_connect($host, $user, $password))
                            die("Error at connecting to the mysql-server. Error message:".mysql_error());
            }
            function selectDB($dataBase)
            {
                    if(!mysql_select_db($dataBase, $this -> connectionID))
                            die("Error at selecting the database. Error message:".mysql_error());
            }
            function executeQuery($query)
            {
                    if(!$this -> result = mysql_query($query, $this -> connectionID))
                            die("Error at executing the query. Error message:".mysql_error());
                    return $this -> result;
            }
    }
    ?>
    
     
Die Seite wird geladen...
Ähnliche Themen - Klassen Objekte Anfängerfrage Forum Datum
Problem mit Klassen und protected... Web-Programmierung 04.03.2013
PHP - Objekte in $_SESSION weitergeben geht einmal und dann nicht mehr Web-Programmierung 24.11.2008
Anfängerfrage: Wie Daten in's Netz stellen? Web-Programmierung 17.12.2006
Weblog Serendipity - Anfängerfrage Web-Programmierung 19.11.2006
PHP-Klassen -> UML Web-Programmierung 27.09.2006

Diese Seite empfehlen

Benutzerdefinierte Suche