kostenloser Webspace werbefrei: lima-city


Klasse zum Abfragen und Eintragen von Daten

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    seth93

    seth93 hat kostenlosen Webspace.

    Hallo,
    ich beschäftige mich seit kurzem mit OOP.
    Hab einige Tutorials dazu und zu Klassen gelesen und möchte jetzt versuchen selber eine zu schreiben.
    Ich hab an eine Klasse gedacht, die zum Eintragen und Abfragen von Daten zuständig ist.
    Wär sowas überhaupt sinnvoll?
    Ich bräuchte dann noch etwas Hilfe vom Aufbau her.
    z.B. beim einfachen Eintragen von Daten.
    Was muss ich dann in die Klasse schreiben?
    Hab noch gelesen, dass man da keine Queries reinschreiben soll, damit man die Klasse
    vielseitig nutzen kann.
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Ich glaube nicht, dass das so wirklich sinnvoll ist, da das Schreiben / Auslesen von Dateien in PHP sehr einfach ist. Aber wenn du es trotzdem machen willst, könnte ich dir empfehlen, eine vorhandene Klasse anzuschauen, wie sie vom Code aufgebaut ist.

    LG cookies
  4. Autor dieses Themas

    seth93

    seth93 hat kostenlosen Webspace.

    Hab eine Validatorklasse als Vorlage genommen und bin grad dabei meine eigene Klasse zu schreiben.
    Das Eintragen funktioniert, jedoch hab ich Probleme beim Abfragen.

    final public function getData($column, $table, $condition, $limit){
    		$sql = '
    		SELECT
    			'.$column.'
    		FROM
    			'.$table.'
    			'.$condition.'
    			'.$limit;
    		$abfrage = mysql_query($sql);
    		$row = mysql_fetch_object($abfrage);
    	}

    Tja, wie krieg ich da jetzt die Datensätze raus?
    $abfrage = new query();

    Muss ja iwie an $row kommen, ic hweiß aber nicht wie das geht?
    Vielleicht am Anfang var $row; ??
  5. Das ist nicht unbedingt sinnvoll, da hier nur der erste Datensatz ausgelesen wird, auch wenn es mehrere gibt.
    Du könntest machen:
    $x = array();
    while ($row = mysql_fetch_array($abfrage))
    {
    foreach ($row as $key => $wert)
    {
    $x[][$key] = $wert;
    }
    }

    Dann hast du folgende Struktur in $x:

    Datensatz 1 ($x[0])
    |_______----- Spalte1 ($x[0]['Spaltenname'])
    |_______----- Spalte2 ($x[0]['Spaltenname'])
    Datensatz 2 ($x[1])
    |_______----- Spalte1 ($x[1]['Spaltenname'])
    |_______----- Spalte2 ($x[1]['Spaltenname'])

    LG cookies

    Beitrag zuletzt geändert: 11.7.2009 12:50:11 von cookies
  6. Autor dieses Themas

    seth93

    seth93 hat kostenlosen Webspace.

    Ok, hmm und wie macht man das ohne While-Schleife?

    EDIT:
    Ich hab noch nicht ganz raus wie man z.B. Datensatz 1 rausbekommt.
    $abfrage = new query();
    $abfrage->x[1]['spaltenname' ]; gibt nichts aus.


    EDIT:
    Naja vergesst es docj lieber ^^
    War ne ganz gute Übung um etwas in das Thema einzusteigen,
    aber es gibt ja schon ne fertige Funktion dafür -.-

    ]$db = @new mysqli('localhost', 'root', '', 'template');
    if (mysqli_connect_errno()) {
        die ('Konnte keine Verbindung zur Datenbank aufbauen: '.mysqli_connect_error().'('.mysqli_connect_errno().')');
    }
    $sql = '
    	SELECT
        *
    	FROM
        users
    	';
    $result = $db->query($sql);
    if (!$result) {
        die ('Etwas stimmte mit dem Query nicht: '.$db->error);
    }
    while ($row = $result->fetch_object()){ 
        echo ' "'.$row->username.'"  "'.$row->passwort."\" <br />\n";
    }


    Beitrag zuletzt geändert: 11.7.2009 14:01:17 von seth93
  7. Du musst ja machen:
    final public function getData($column, $table, $condition, $limit){
    		$sql = '
    		SELECT
    			'.$column.'
    		FROM
    			'.$table.'
    			'.$condition.'
    			'.$limit;
    		$abfrage = mysql_query($sql);
    $x = array();
    while ($row = mysql_fetch_array($abfrage))
    {
    foreach ($row as $key => $wert)
    {
    $x[][$key] = $wert;
    }
    }
    return $x;
    	}
    //und dann:
    $q = new query();
    $row = $q->getData(...);
    print_r($row);
  8. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!